Nomad
CSI OpenStack Cinder
@hashicorp
The Cinder CSI Driver is a CSI Specification compliant driver used by Container Orchestrators to manage the lifecycle of OpenStack Cinder Volumes.
- Community
- Pack
Updated 2 years ago
- GitHub(opens in new tab)
CSI OpenStack Cinder
This pack deploys the Openstack Cinder CSI container as a system job to all eligible Nomad Clients.
See the Openstack Cinder CSI documentation for more information: https://github.com/kubernetes/cloud-provider-openstack/blob/master/docs/cinder-csi-plugin/using-cinder-csi-plugin.md
Dependencies
This pack requires the Nomad Client(s) be deployed on an Openstack VM that can have Cinder Volumes attached to it.
Container Privilege
The Cinder Node task containers run as Privileged containers. The Cinder Controller tasks do not require privileged mode.
Variables
Name | Description | Type | Default | Required |
---|---|---|---|---|
job_name | The name to use as the job name which overrides using the pack name | string | "" | no |
datacenters | A list of datacenters in the region which are eligible for task placement | list(string) | [ "dc1"] | no |
region | The region where the job should be placed | string | "global" | no |
constraints | Constraints to apply to the entire job. | list(object({ attribute = string operator = string value = string })) | [ { "attribute": "${attr.platform.aws.placement.availability-zone}", "operator": "", "value": "nova" }] | no |
job_restart_config | n/a | object({ attempts = number delay = string mode = string interval = string }) | { "attempts": 5, "delay": "15s", "interval": "5m", "mode": "delay"} | no |
cloud_conf_file | [REQUIRED] Path to custom cloud.conf file to be mounted to the CSI containers. For reference, see https://github.com/kubernetes/cloud-provider-openstack/blob/master/docs/openstack-cloud-controller-manager/using-openstack-cloud-controller-manager.md#global | string | n/a | yes |
csi_plugin_id | The ID to register the CSI plugin with. | string | "csi-cinder" | no |
version_tag | The docker image version. For options, see https://github.com/kubernetes/cloud-provider-openstack/releases | string | "latest" | no |
cinder_log_level | The log level to run the csi driver at. Valid values 1 through 5 | string | "3" | no |
vault_config | Nomad Job Vault Configuration. Set enabled = true to configure the job to use vault See: https://www.nomadproject.io/docs/job-specification/vault | object({ enabled = bool policies = list(string) change_mode = string change_signal = string env = bool namespace = string }) | { "change_mode": "restart", "change_signal": "", "enabled": false, "env": true, "namespace": "", "policies": []} | no |