Cluster Administration

This document describes administrative operations on a running Alluxio cluster on Kubernetes, such as upgrading to a new version and adding new workers.

Dynamically Update Alluxio Configuration in a Running Cluster

  1. Get configmap

$ kubectl -n alx-ns get configmap
NAME                              DATA   AGE
alluxio-cluster-alluxio-conf      4      7m48s
...
  1. Run edit configmap to update Alluxio configuration

$ kubectl -n alx-ns edit configmap alluxio-cluster-alluxio-conf

There should be 4 files inside: alluxio-env.sh, alluxio-site.properties, log4j2.xml, and metrics.properties. Edit as you need, then save the configmap.

configmap/alluxio-cluster-alluxio-conf edited
  1. Restart Alluxio components as needed For the cluster alluxio-cluster in the alx-ns namespace:

  • coordinator: kubectl -n alx-ns rollout restart statefulset alluxio-cluster-coordinator

  • worker: kubectl -n alx-ns rollout restart deployment alluxio-cluster-worker

  • daemonset fuse (fuse.type = daemonSet): kubectl -n alx-ns rollout restart daemonset alluxio-fuse

  • csi fuse (fuse.type = csi): the csi fuse pods doesn’t have a rollout restart command and must be restarted by either exiting out of the attached user's pod or manually kill it with kubectl -n alx-ns delete pod alluxio-fuse-xxx.

Upgrading to a newer Alluxio version

Upgrade the Operator

  1. Upload the new docker images corresponding to the new Alluxio operator version to your image registry and unpack the helm chart of the operator. Refer to the installation doc for details.

  2. Run the following command to apply the new changes to the cluster.

Upgrade the Alluxio cluster

Before the operation you should know:

  • When the upgrade operation starts, the coordinator, workers, and the DaemonSet FUSE will perform rolling upgrade to use the new image. The existing CSI FUSE pods will not be restarted and upgraded, and only the new pods will use the new image.

  • While the cluster is being upgraded, the cache hit rate may decrease slightly, but will fully recover once the cluster is fully running again.

Following the steps to upgrade the cluster:

  1. Upload the new docker images corresponding to the new Alluxio version to your image registry. Refer to the installation doc for details.

  2. Update the imageTag fields in alluxio-cluster.yaml to reflect the new Alluxio version. In the following example the new imageTag will be AI-3.6-12.0.2.

  3. Run the following command to apply the new changes to the cluster.

Scaling the size of the cluster

Scale Up the Workers

Before the operation you should know:

  • While the cluster is being upgraded, the cache hit rate may decrease slightly, but will fully recover once the cluster is fully running again.

Following the steps to scale up the workers:

  1. Change the alluxio-cluster.yaml to increase the count in the worker. In the following example we will scale from 2 workers to 3 workers.

  2. Run the following command to apply the new changes to the cluster.

Last updated