Overview
You can secure the connection between VAST COSI Driver and the VAST cluster with SSL encryption as follows:
Enable SSL encryption.
Do one of the following to install an SSL certificate:
If you want to use a Certified Authority-signed SSL certificate, upload it to the VAST cluster. Follow the SSL certificate upload procedure provided in the VAST Cluster Administrator's Guide.
If you want to use a self-signed SSL certificate, supply it to the VAST driver.
Enable SSL Encryption
By default, SSL encryption is disabled.
To enable SSL encryption:
Add the
verifySsl=trueoption to the VAST COSI Driver chart configuration file, for example:secretName: "vast-mgmt" endpoint: "my.endpoint" verifySsl: true <...>Install or upgrade the VAST COSI Driver Helm chart.
Uploading a CA-Signed SSL Certificate to VAST Cluster
Follow the guidelines provided in the VAST Cluster Administrator's Guide to upload a CA-signed SSL certificate to the VAST cluster.
Supplying a Self-Signed SSL Certificate to VAST COSI Driver
You can either point to a file that contains a self-signed SSL certificate file, or specify an existing Kubernetes secret that contains the certificate. These two methods are mutually exclusive.
Do either of the following:
Install or upgrade the VAST COSI Driver Helm chart with the
--set-file sslCert=<path to certificate file>option specified, for example:helm install cosi-driver vastcosi/vastcosi -f values.yaml --set-file sslCert=<path to certificate file>
OR
Create a Kubernetes secret with the SSL certificate and specify the secret using the
sslCertsSecretNameoption in the VAST COSI Driver Helm chart configuration file:Create a Kubernetes secret that contains the SSL certificate, for example:
kubectl create secret generic vast-ca --from-file=ca-bundle.crt=<path to certificate file>
Specify the newly created secret on the
sslCertsSecretNameoption in the configuration file, for example:secretName: "vast-mgmt" endpoint: "my.endpoint" verifySsl: true sslCertsSecretName: "vast-ca" <...>Install or upgrade the VAST driver Helm chart (without specifying
--set-file sslCert).
Replacing a Self-Signed SSL Certificate for VAST COSI Driver
Choose either of the following, depending on how you supplied the old self-signed SSL certificate:
If you supplied the old SSL certificate using the
--set-file sslCertoption on the Helm chart install or upgrade command:Upgradethe Helm chart with
--set-file sslCertpointing to the new SSL certificate file. For example:helm upgrade cosi-driver vastcosi/vastcosi -f values.yaml --set-file sslCert=<path to new certificate>
OR
If the old SSL certificate was supplied via
sslCertsSecretNamein the VAST COSI Driver Helm chart configuration file:Create a new Kubernetes secret with the new SSL certificate:
kubectl create secret generic vast-ca-new --from-file=ca-bundle.crt=<path to new certificate file>
Ensure that the new SSL certificate is specified on the
sslCertsSecretNameoption in the VAST COSI Driver Helm chart configuration file:secretName: "vast-mgmt" endpoint: "my.endpoint" verifySsl: true sslCertsSecretName: "vast-ca-new" <...>Upgrade the Helm chart, for example:
helm upgrade cosi-driver vastcosi/vastcosi -f values.yaml
Removing a Self-Signed SSL Certificate from VAST COSI Driver
Choose either of the following, depending on how you supplied the self-signed SSL certificate:
If you used
--set-file sslCertto supply the SSL certificate:Upgradethe Helm chart without the
--set-file sslCertoption specified. For example:helm upgrade cosi-driver vastcosi/vastcosi -f values.yaml
OR
If the old SSL certificate was supplied via
sslCertsSecretName:Remove the
sslCertsSecretNameoption from the VAST COSI Driver Helm chart configuration file.Upgrade the Helm chart (without specifying
--set-file sslCert), for example:helm upgrade cosi-driver vastcosi/vastcosi -f values.yaml