115 lines
2.6 KiB
YAML
115 lines
2.6 KiB
YAML
---
|
|
|
|
# Name of the instance (must be different if you plan to run several copies on the same namespace)
|
|
instance: democratic-csi
|
|
|
|
democratic_csi:
|
|
|
|
# Version to deplou
|
|
version: 1.9.1
|
|
|
|
# The Docker image to use
|
|
image: '[[ .docker.repo ]]democratic-csi:[[ .democratic_csi.version ]]-1'
|
|
|
|
# The ID of the storage plugin (the protocol will be appended
|
|
# Eg org.democratic-csi.iscsi and org.democratic-csi.nfs
|
|
plugin_id: org.[[ .instance ]]
|
|
|
|
nomad:
|
|
# Set a high priority as CSI controllers and nodes are required for a lot of jobs
|
|
priority: 90
|
|
|
|
# Settings for controllers
|
|
controller:
|
|
# Number of controler instances
|
|
count: 1
|
|
|
|
nomad:
|
|
constraints:
|
|
- operator: distinct_hosts
|
|
value: true
|
|
|
|
# Resource allocation for controllers
|
|
resources:
|
|
cpu: 100
|
|
memory: 128
|
|
memory_max: 192
|
|
|
|
# Custom env var to pass to controllers
|
|
env: {}
|
|
|
|
truenas:
|
|
api:
|
|
# The URL to reach truenas API
|
|
url: https://truenas.example.org:443
|
|
# Set to true to disable certificate verification
|
|
# Which is of course not recommanded
|
|
insecure: False
|
|
# Note: the API Key is stored in vault, in kv/service/democratic-csi in the truenas_api_key prop
|
|
|
|
iscsi:
|
|
|
|
zfs:
|
|
parent: zpool/csi/iscsi
|
|
snap_parent: zpool/csi/iscsisnap
|
|
reservation: false
|
|
blocksize: 16K
|
|
|
|
portals:
|
|
- 10.99.3.27:3260
|
|
|
|
target_group:
|
|
portal_group: 1
|
|
initiator_group: 1
|
|
auth_type: None
|
|
auth_group: ""
|
|
|
|
nfs:
|
|
zfs:
|
|
parent: zpool/csi/nfs
|
|
snap_parent: zpool/csi/nfssnap
|
|
quota: False
|
|
reservation: False
|
|
server: 10.99.3.27
|
|
allowed_networks:
|
|
- 10.99.9.0/24
|
|
|
|
# Settings for node plugins
|
|
node:
|
|
|
|
consul:
|
|
meta:
|
|
# Override the alloc meta to use the node name instead of the alloc index
|
|
alloc: '${node.unique.name}'
|
|
|
|
# Resource allocation
|
|
resources:
|
|
cpu: 100
|
|
memory: 128
|
|
memory_max: 192
|
|
|
|
# Custom env var to pass to controllers
|
|
env: {}
|
|
|
|
volumes:
|
|
# Democratic CSI nodes requiers an access to the host rootfs
|
|
# and the host /run/udev for everything to work.
|
|
# For this, you should create two volumes on your Nomad client, like this
|
|
#
|
|
# host_volume "host_root" {
|
|
# path = "/"
|
|
# }
|
|
# host_volume "host_run_udev" {
|
|
# path = "/run/udev"
|
|
# read_only = "true"
|
|
# }
|
|
|
|
host_root:
|
|
type: host
|
|
source: host_root
|
|
host_run_udev:
|
|
type: host
|
|
source: host_run_udev
|
|
read_only: true
|
|
|