Quobyte access keys are highly recommended for multi-cluster deployments
Quobyte CSI Driver supports access to multiple Quobyte storage clusters (for example, production and testing) from single k8s cluster.
To use one Quobyte cluster, you always need one Quobyte CSI driver
i.e. one-to-one mapping between Quobyte CSI driver and Quobyte cluster.
To use n
Quobyte clusters, you need n
Quobyte CSI drivers.
For each driver the following must be met
Unique quobyte.apiURL
in driver configuration
Unique quobyte.csiProvisionerName
in driver configuration
Unique quobyte.clientMountPoint
in driver configuration
k8s nodes with multiple Quobyte clients, each with their own mountPoint and registry configuration
Adjust the driver configuration and deploy driver with helm install <SOME_UNIQUE_NAME> ./quobyte-csi-driver
The value configured for quobyte.csiProvisionerName
must be used as StorageClass.provisioner
to refer
this Quobyte Cluster/CSI driver combination
install_quobyte add-client
can only install single client on a machine, additional
clients must be installed/cloned manuallyInstall Quobyte client following client installation instructions
Clone copies of service and configuration on each k8s node
clusters="test1 test2" # cluster names separated by single space
for cluster in $clusters;
do
sudo cp /usr/lib/systemd/system/quobyte-client.service /usr/lib/systemd/system/quobyte-client-$cluster.service
sudo sed -i -e "s/EnvironmentFile=\/etc\/quobyte\/client-service.env/EnvironmentFile=\/etc\/quobyte\/client-service-${cluster}.env/g" /usr/lib/systemd/system/quobyte-client-$cluster.service
sudo systemctl enable /usr/lib/systemd/system/quobyte-client-$cluster.service
sudo cp /etc/quobyte/client-service.env /etc/quobyte/client-service-$cluster.env
sudo sed -i -e "s/config_file=\/etc\/quobyte\/client-service.cfg/config_file=\/etc\/quobyte\/client-service-$cluster.cfg/g" /etc/quobyte/client-service-$cluster.env
sudo cp /etc/quobyte/client-service.cfg /etc/quobyte/client-service-$cluster.cfg
done
Edit /etc/quobyte/client-service<-YOUR_CLUSTER_NAME>.cfg
and configure registry, client mount points (as needed by CSI driver).
Start clients
clusters="test1 test2" # cluster names separated by single space
for cluster in $clusters;
do
sudo systemctl start quobyte-client-$cluster.service
sudo systemctl status quobyte-client-$cluster.service
done
To remove clients, please use following commands
remove_cluster_client="test1 test2" # cluster names separated by single space
for cluster in $remove_cluster_client;
do
sudo systemctl stop quobyte-client-$cluster.service
sudo rm -f /usr/lib/systemd/system/quobyte-client-$cluster.service
sudo rm -f /etc/systemd/system/multi-user.target.wants/quobyte-client-$cluster.service
sudo rm -f /etc/systemd/system/remote-fs.target.wants/quobyte-client-$cluster.service
sudo rm -f /etc/quobyte/client-service-$cluster.env
sudo rm -f /etc/quobyte/client-service-$cluster.cfg
done