Redis

Deploy Redis, an open source in-memory data store used as a key-value database, cache, and message broker.

1. Deploy Redis

Ā Estimated deployment time:Ā 2-5 minutes

Follow the deployment instructions from the Get started section to configure the app, deploy it, and verify software installation.

For information on the app-specific configurations, see the Configuration options section.

Base distribution and plan

  • Supported distribution: Ubuntu 24.04 LTS
  • Recommended plans:

Configuration options

Configure the required options to deploy your instance. For additional customization, add advanced options.

The table maps the Cloud Manager UI fields to their corresponding API/CLI keys (stackscript_data) required for automated deployments.

StackScript ID: 607488

UI fieldAPI/CLI keyDescription
Required options
Limited sudo useruser_nameYour preferred username for the limited sudo user entered without any capital letters, spaces, or special characters.
When adding a limited sudo user, the user is created with a strong generated password for your new Linode instance, and the account is assigned to the sudo group, which provides elevated permissions when running commands with the sudo prefix.
Note: For easier and more secure access with the sudo user, add an account SSH key for the Cloud Manager user during deployment and select that user as an authorized_user. Their SSH pubkey will be assigned to both the root and limited user.
SSL InformationsslheaderSet to Yes by default. This requires providing details for a self-signed TLS/SSL certificate, like country, town, organization, and email address.
Country or regioncountry_nameApplies to a self-signed TLS/SSL certificate. The country or region for you or your organization. When using the API/CLI, specify it as a two-letter ISO country or region code.
State or provincestate_or_province_nameApplies to a self-signed TLS/SSL certificate. The state or province for you or your organization.
Localitylocality_nameApplies to a self-signed TLS/SSL certificate. The town or other locality for you or your organization.
Organizationorganization_nameApplies to a self-signed TLS/SSL certificate. The name of your organization.
Email addresssoa_email_addressApplies to a self-signed TLS/SSL certificate. The email address used for your certificate file.
CA Common Nameca_common_nameApplies to a self-signed TLS/SSL certificate. A common name for the certificate authority. For example, Redis CA.
Advanced options
Disable root access over SSHdisable_rootApplies to a limited sudo user. To block the root user from logging in over SSH, select Yes. Defaults to No.
Note: When you disable the root user from logging in over SSH and don't provide a valid Account SSH Key assigned to the authorized_user, you can still switch to the root user. To do that, log in as root via the Lish console and run cat /home/$USERNAME/.credentials to view the generated password for the limited sudo user.
Number of clients connecting to Redisclient_countThe number of clients that will be connecting to Redis. The application will create SSL certificates for your client that need to connect to Redis. Possible values are 1 through 10. Defaults to 1.
Optional data exporter Add-onsadd_onsAn option to include add-ons for your deployment. Possible values are:
  • none (default)
  • newrelic
  • node_exporter
  • mysqld_exporter

Note: After the app deployment completes, the password for your limited sudo user is generated and stored in the .credentials file in the home directory, along with Redis credentials. Log in to your instance as root through the Lish console or SSH, then run cat /home/$USERNAME/.credentials to view its contents.

Use API, CLI, or Terraform

In addition to deploying the app to a new Linode instance via Cloud Manager, you can also use the Linode API, CLI, or Terraform. When running the operation, you need to provide the StackScript ID, supported Linux distribution, and app-specific fields along with the standard Linode deployment configurations.

Note: Generate a personal access token to authenticate your API, CLI, or Terraform requests.

curl --location 'https://api.linode.com/v4/linode/instances' \
  --header 'Content-Type: application/json' \
  --header 'Accept: application/json' \
  --header 'Authorization: Bearer abc123def456hij789klm' \
  --data-raw '{
    "region": "us-east",
    "type": "g6-standard-2",
    "image": "linode/ubuntu24.04",
    "label": "my-redis-one-click-app",
    "root_pass": "@C0mpl3x#P@ssw0rd",
    "stackscript_id": 607488,
    "stackscript_data": {
      "user_name": "jsmith",
      "country_name": "US",
      "state_or_province_name": "Massachusetts",
      "locality_name": "Cambridge",
      "organization_name": "Akamai Technologies",
      "soa_email_address": "jsmith@example.com",
      "ca_common_name": "Redis CA"
    }
  }'
linode-cli linodes create \
  --region us-east \
  --type g6-standard-2 \
  --label my-redis-one-click-app \
  --image linode/ubuntu24.04 \
  --root_pass @C0mpl3x#P@ssw0rd \
  --stackscript_id 607488 \
  --stackscript_data '{"user_name":"jsmith", "country_name":"US", "state_or_province_name":"Massachusetts", "locality_name":"Cambridge", "organization_name":"Akamai Technologies", "soa_email_address":"jsmith@example.com", "ca_common_name": "Redis CA"}'
resource "linode_instance" "my-linode" {
  region         = "us-east"
  type           = "g6-standard-2"
  label          = "my-redis-one-click-app"
  image          = "linode/ubuntu24.04"
  root_pass      = "@C0mpl3x#P@ssw0rd"
  stackscript_id = 607488
  stackscript_data = {
    "user_name"              = "jsmith"
    "country_name"           = "US"
    "state_or_province_name" = "Massachusetts"
    "locality_name"          = "Cambridge"
    "organization_name"      = "Akamai Technologies"
    "soa_email_address"      = "jsmith@example.com"
    "ca_common_name"         = "Redis CA"
  }
}

2. Access the Redis CLI

  1. Log in to your instance through the Lish console or SSH using either the root user or limited user and the associated password you entered when creating the instance.

  2. To use redis-cli, run the command using TLS certificates and the generated password.

    redis-cli --tls --cacert /etc/redis/ssl/ca/ca.crt --cert /etc/redis/ssl/certs/client1.crt --key /etc/redis/ssl/keys/client1.key.pem -a $REDIS_DEFAULT_USER_PASSWORD

    This opens an interactive mode where you can type commands.

For more information about redis-cli and the available commands, see redis-cli and the Redis command line interface.

Additional resources

You can use several Redis configuration types. For example, you can configure Redis as a standalone Redis installation or a Redis cluster with a primary (master) and two replicas.

As a next step, you should determine which type of deployment you require for your use case by reviewing these resources:

  • Learn about Redis clusters by going through their related tutorial.
  • Redis Sentinel is another deployment configuration focused on high availability. See the Redis Sentinel documentation for more details.
  • Read the Redis Quick Start to learn about securing Redis and installing client libraries to use Redis with your applications.
  • Refer to the Redis configuration documentation to learn about the Redis configuration file.

Once you've determined how you'd like to configure your Redis deployment, connect to your Linode via SSH to complete your configuration.

šŸ“˜

Note that we can't vouch for the accuracy or timeliness of externally hosted resources.


Did this page help you?