{
  "id": "global-config",
  "title": "Set global database configurations",
  "url": "https://redis.io/docs/latest/operate/kubernetes/7.8.4/active-active/global-config/",
  "summary": "The REAADB contains the field '.spec.globalConfigurations' and through this the database configurations are set.",
  "content": "\n\nThe Redis Enterprise Active-Active database (REAADB) custom resource contains the field `.spec.globalConfigurations`. This field sets configurations for the Active-Active database across all participating clusters, such as memory size, shard count, and the global database secrets.\n\nThe [REAADB API reference]() contains a full list of available fields.\n\n## Edit global configurations\n\n1. Edit or patch the REAADB custom resource with your global configuration changes.\n\n    The example command below patches the REAADB named `reaadb-boeing` to set the global memory size to 200MB:\n\n    ```sh\n    kubectl patch reaadb reaadb-boeing --type merge --patch \\\n    '{\"spec\": {\"globalConfigurations\": {\"memorySize\": \"200mb\"}}}'\n    ```\n\n1. Verify the status is `active` and the spec status is `Valid`.\n\n    This example shows the status for the `reaadb-boeing` database.\n\n    ```sh\n    kubectl get reaadb reaadb-boeing\n\n    NAME             STATUS   SPEC STATUS   GLOBAL CONFIGURATIONS REDB   LINKED REDBS\n    reaadb-boeing   active   Valid    \n    ```\n\n1. View the global configurations on each participating cluster to verify they are synced.\n\n    ```sh\n    kubectl get reaadb \u003creaadb-name\u003e -o yaml\n    ```\n\n## Edit global configuration secrets\n\nThis section edits the secrets under the REAADB `.spec.globalConfigurations` section. For more information and all available fields, see the [REAADB API reference]().\n\n\n1. On an existing participating cluster, generate a YAML file containing the database secret with the relevant data.\n\n    This example shoes a secret named `my-db-secret` with the password `my-password` encoded in base 64.\n\n    ```yaml\n    apiVersion: v1\n     data:\n      password: bXktcGFzcw\n    kind: Secret\n    metadata:\n      name: my-db-secret\n    type: Opaque\n    ```\n\n1. Apply the secret file from the previous step, substituting your own value for `\u003cdb-secret-file\u003e`.\n\n    ```sh\n    kubectl apply -f \u003cdb-secret-file\u003e\n    ```\n\n1. Patch the REAADB custom resource to specify the database secret, substituting your own values for `\u003creaadb-name\u003e` and `\u003csecret-name\u003e`.\n\n    ```sh\n    kubectl patch reaadb \u003creaadb-name\u003e --type merge --patch \\\n    '{\"spec\": {\"globalConfigurations\": {\"databaseSecretName\": \"secret-name\"}}}'\n    ```\n\n1. Check the REAADB status for an `active` status and `Valid` spec status.\n\n    ```sh\n    kubectl get reaadb \u003creaadb-name\u003e\n\n    NAME             STATUS   SPEC STATUS   GLOBAL CONFIGURATIONS REDB   LINKED REDBS\n    reaadb-boeing   active   Valid\n    ```\n\n1. On each other participating cluster, check the secret status.\n\n    ``sh\n    kubectl get reaadb \u003creaadb-name\u003e -o=jsonpath='{.status.secretsStatus}'\n    ```\n\n    The output should show the status as `Invalid`.\n\n    ```sh\n    [{\"name\":\"my-db-secret\",\"status\":\"Invalid\"}]\n    ```\n\n1. Sync the secret on each participating cluster.\n\n    ```sh\n    kubectl apply -f \u003cdb-secret-file\u003e\n    ```\n\n1. Repeat the previous two steps on every participating cluster.\n",
  "tags": ["docs","operate","kubernetes"],
  "last_updated": "2026-04-08T12:21:52-07:00"
}

