Configuring an External Redis Instance
If needed, you can configure AtScale to use an external instance of the Redis database it uses for caching. This can be done before or after installing AtScale.
To configure AtScale to use an external Redis instance:
-
Create a new Redis instance.
-
On your Kubernetes cluster, create a new secret file as shown below.
Replace the
namespace
value with the namespace in which AtScale is or will be installed, and thehost
,port
, andpassword
values with those appropriate for your system. If you have SSL enabled, also be sure to changesslEnabled
to"true"
.apiVersion: v1
kind: Secret
metadata:
name: engine-redis-external
namespace: atscale
type: Opaque
stringData:
host: <YOUR_HOST_HERE>
port: "<YOUR_DB_PORT_HERE>"
user: engine
password: "<YOUR_PASSWORD_HERE>"
sslEnabled: "false" -
Apply the new secret. This creates an additional secret called
engine-redis-external
.kubectl apply -f filename -n namespace
Where
filename
is the name of the secret file you created above, andnamespace
is the namespace in which AtScale is or will be installed. -
Make the following changes to AtScale's
values.yaml
file (or your values override file, if you created one).These changes disable the default Redis database installed with AtScale and point the AtScale services to the new secret. This step is important because the default versions of the
atscale-redis
secrets will be removed in the next step.redis:
enabled: false
atscale-engine:
externalRedis:
existingSecret: "engine-redis-external"
existingSecretHostKey: "host"
existingSecretPortKey: "port"
existingSecretUserKey: "user"
existingSecretPasswordKey: "password"
existingSecretSslEnabledKey: "sslEnabled"
atscale-sml:
externalRedis:
existingSecret: "engine-redis-external"
existingSecretHostKey: "host"
existingSecretPortKey: "port"
existingSecretUserKey: "user"
existingSecretPasswordKey: "password"
existingSecretSslEnabledKey: "sslEnabled"
atscale-entitlement:
externalRedis:
existingSecret: "engine-redis-external"
existingSecretHostKey: "host"
existingSecretPortKey: "port"
existingSecretUserKey: "user"
existingSecretPasswordKey: "password"
existingSecretSslEnabledKey: "sslEnabled" -
If you have SSL enabled, add your CA certificates to the
values.yml
file (or your values override file). These should be defined in thecaCerts
setting, as shown below. You can include as many certificates as needed.global:
ingressDomain:
tls:
caCerts: |
-----BEGIN CERTIFICATE-----
<YOUR_CERTIFICATE_HERE>
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
<YOUR_CERTIFICATE_HERE>
-----END CERTIFICATE----- -
If you have not yet installed AtScale, continue on with the installation procedure.
If you have already installed AtScale, apply the updated values file:
helm upgrade atscale oci://docker.io/atscaleinc/atscale --version version_number -n namespace -f values_file
Where
version_number
is the version of AtScale you're currently on,namespace
is the namespace in which AtScale is installed, andvalues_file
is your updated values file. -
Restart the AtScale services to apply the new secrets.