Quobyte CSI driver requires a running Quobyte client with the mount point <values.clientMountPoint>/mounts on every host node. This example deployment of clients assumes
values.clientMountPoint: /mnt/quobyte
Download the install_quobyte script
wget https://support.quobyte.com/repo/3/<QUOBYTE_REPO_ID>/install_quobyte \
&& sudo chmod +x install_quobyte
Install client on (remote) node
registry-endpoints or qns-id can be found on registry nodes in /etc/quobyte/registry.cfg as registry=<registry-endpoints> and qns.id=<qns-id> respectively.
sudo ./install_quobyte add-client --registry-endpoints <registry-endpoints> \
--mount-point /mnt/quobyte/mounts --repo-id <QUOBYTE_REPO_ID> \
[remote_user@remote_ip]
If your Quobyte deployment uses QNS, you should install client with --qns-id
sudo ./install_quobyte add-client --qns-id <qns-id> \
--mount-point /mnt/quobyte/mounts --repo-id <QUOBYTE_REPO_ID> \
[remote_user@remote_ip]
To use access keys, quobyte-client.service must be started with --enable-access-contexts.
Note:
remote_user must have sudo capabilities on the remote_ip node to install Quobyte client.
install_quobyte uses ssh to install the Quobyte client on the remote node. So, to install client on a remote node,
your base node must be able to connect the remote node using ssh.
To use Quobyte volumes in Kubernetes, nodes must have a running Quobyte client
with the mount point as /mnt/quobyte/mounts. Please see the
example client configuration.
Label Kubernetes nodes
kubectl label nodes <node-1> <node-n> quobyte_client="true"
Edit example/client.yaml and configure
namespace of your choiceQUOBYTE_REGISTRY environment variable set with Quobyte registryQUOBYTE_MOUNT_POINT environment variable set to /mnt/quobyte/mounts/mnt/quobyteDeploy Quobyte clients.
kubectl create -f example/client.yaml
Note: Not deploying Quobyte clients with /mnt/quobyte/mounts results in pod start failures with mount fail errors.