Redis is an open-source, in-memory, data-structure store, with the optional ability to write and persist data to a disk, which can be used as a key-value database, cache, and message broker. Redis features built-in transactions, replication, and support for a variety of data structures such as strings, hashes, lists, sets, and others.
Note: This Marketplace App deploys 3 or 5 Compute Instances to create a highly available and redundant Redis cluster using Redis Sentinel, each with the plan type and size that you select. Please be aware that each of these Compute Instances will appear on your invoice as separate items. To instead deploy Redis on a single Compute Instance, see Deploy Redis through the Linode Marketplace.
Deploying a Marketplace App
The Linode Marketplace allows you to easily deploy an application cluster on Compute Instances using the Cloud Manager. See Get Started with Marketplace Apps for complete steps.
- Log in to the Cloud Manager and select the Marketplace link from the left navigation menu. This displays the Linode Create page with the Marketplace tab pre-selected.
- Under the Select App section, select the cluster app you would like to deploy. Marketplace Apps that are deployed as clusters have a cluster label next to the app’s name.
- Complete the form by following the steps and advice within the Creating a Compute Instance guide. Depending on the Marketplace App you selected, there may be additional configuration options available. See the Configuration Options section below for compatible distributions, recommended plans, and any additional configuration options available for this Marketplace App.
- Click the Create Linode button. Once the first Compute Instance has been provisioned and has fully powered on, wait for the software installation to complete. If the instance is powered off or restarted before this time, the other Compute Instances may never be deployed and the software installation will likely fail.
To verify that the app has been fully installed, see Get Started with Marketplace Apps > Verify Installation. Once installed, follow the instructions within the Getting Started After Deployment section to access the application and start using it.
Estimated deployment time: The Redis cluster should be fully deployed and configured within 15-30 minutes after the first Compute Instance has finished provisioning.
Configuration Options
- Supported distributions:
Ubuntu
22.04 LTS - Recommended minimum plan: All plan types and sizes can be used, though consider using a High Memory Compute Instance for larger databases in a production environment.
Redis Sentinel Options
- Linode API Token (required): Your API token is used to deploy additional Compute Instances as part of this cluster. At a minimum, this token must have Read/Write access to Linodes. If you do not yet have an API token, see Get an API Access Token to create one.
- Limited sudo user (required): A limited user account with sudo access is created as part of this cluster deployment. Enter your preferred username for this limited user. Please note that the password is automatically created. See Obtaining Usernames and Passwords.
- Add SSH Keys to all nodes? If you select yes, any SSH Keys that are added to the root user account (in the SSH Keys section), are also added to your limited user account on all deployed Compute Instances.
- Redis cluster size: Select the preferred size of your cluster from the available options (3 or 5). Please be aware that this creates the corresponding number of Compute Instances.
TLS/SSL Certificate Options
The following fields are used when creating your self-signed TLS/SSL certificate.
- Country or region (required): Enter the country or region for you or your organization.
- State or province (required): Enter the state or province for you or your organization.
- Locality (required): Enter the town or other locality for you or your organization.
- Organization (required): Enter the name of your organization.
- Email address (required): Enter the email address you wish to use for your certificate file. This email address may receive notifications about the state of your certificate, including when it is expired.
- CA Common name: This is the common name for the self-signed Certificate Authority.
- Common name: This is the common name that is used for the domain.
Warning: Do not use a double quotation mark character ("
) within any of the App-specific configuration fields, including user and database password fields. This special character may cause issues during deployment.
Getting Started After Deployment
Obtaining Usernames and Passwords
After your cluster has been fully provisioned, use the instructs below to obtain and save passwords that were generated on your behalf during deployment.
- Log in to your new Compute Instance through Lish or SSH using the
root
user and the associated password you entered when creating the instance. If you opted to include your SSH keys as part of this deployment, you can also log in using those keys as either theroot
user or the limited user account you specified during deployment. - The passwords have been saved in a
.deployment-secrets.txt
file located in your user’s home directory. You can view this file in your preferred text editor or through thecat
command. In the command below, replace [username] with the limited sudo user you created during deployment.
cat /home/[username]/.deployment-secrets.txt
The file contains your Redis credentials and your system’s limited username and password.
# BEGIN ANSIBLE MANAGED BLOCK
# system user
user: example-user
password: R(9C!Iwp4dirlC<;~{7^$XMB#v\)yaB\
# redis password
redis-cli --askpass --tls --cacert /etc/redis/tls/ca.crt:
7znrp73fCHjpislibge3tRi44tjNKSsTLoAHs1aSZRg=
# END ANSIBLE MANAGED BLOCK
Access the Redis CLI
- Log in to your new Compute Instance through Lish or SSH using either the
root
user or limited user and the associated password you entered when creating the instance. - To use the redis-cli, run either of the commands below:
redis-cli
: This opens the interactive mode where you can type in whichever commands you wish.redis-cli [argument]
, where [argument] is the argument or command you wish to run. For instance, runningredis-cli ping
should result in the output ofPONG
if redis is configured properly.
For more information about the redis-cli and the commands you have available, see redis-cli, the Redis command line interface.
Determining How to Use Redis
There are several types of Redis configurations you can use. 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 the resources provided below.
- 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 Quickstart 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 have determined how you would like to configure your Redis deployment, connect to your Linode via SSH to complete your configuration.
The Redis Sentinel Cluster Marketplace app was built for Linode by Linode. For support regarding app deployment, contact Linode Support. For support regarding the tool or software itself, browse the official Redis documentation.