Skip to main content

State Replication

The State Replication feature on the Akuity Platform allows you to disconnect a managed cluster from the platform without losing core Argo CD features. This feature is immutable and can only be enabled during cluster creation. Once enabled, all Application and Project CRDs are synced to the managed clusters, and the application controller in the managed cluster is switched to work with the managed cluster instead of the Akuity Platform control plane cluster.

Enabling State Replication

To enable the State Replication feature during cluster connection, follow these steps:

  1. Under Advanced settings, locate the flag called State Replication.
  2. Toggle the flag to enable State Replication.
  3. Complete the cluster connection process.

Using State Replication

Once the State Replication feature is enabled, the application controller in the managed cluster will work with the managed cluster instead of the control plane cluster. This means that even if the connection to the control plane is lost, core ArgoCD functionality will still be working.

caution

Changing the version of the instance won't update CRDs in the managed cluster, because Akuity Agent doesn't have permission to do that, hence the agent manifest needs to be reapplied manually.

UI Access

To access the Argo CD UI in the managed cluster, follow these steps:

  1. Log in using the Argo CD CLI in core mode.
    kubectl config set-context --current --namespace=akuity # change current kube context to the akuity agent namespace
    argocd login --core
  2. Patch the application controller to use the local Redis deployment.
    kubectl patch deployment argocd-application-controller -p '{"spec":{"template":{"spec":{"containers":[{"name":"argocd-application-controller","args":["/usr/local/bin/argocd-application-controller","--redis","argocd-redis:6379"],"env":[{"name":"REDIS_USERNAME","valueFrom":null},{"name":"REDIS_PASSWORD","valueFrom":null}]}]}}}}'
  3. Make the UI locally available.
    argocd admin dashboard