csiDriver: name: "driveripper.zfs-iscsi-enc1" # add note here about volume expansion requirements storageClasses: - name: zfs-iscsi-enc1 defaultClass: false reclaimPolicy: Delete volumeBindingMode: Immediate allowVolumeExpansion: true parameters: # for block-based storage can be ext3, ext4, xfs fsType: xfs mountOptions: [] secrets: provisioner-secret: controller-publish-secret: node-stage-secret: node-publish-secret: controller-expand-secret: volumeSnapshotClasses: [] driver: config: driver: freenas-iscsi instance_id: httpConnection: protocol: https host: driveripper.reeseapps.com port: 8443 allowInsecure: false # use only 1 of apiKey or username/password # if both are present, apiKey is preferred # apiKey is only available starting in TrueNAS-12 apiKey: "" # username: # password: # use apiVersion 2 for TrueNAS-12 and up (will work on 11.x in some scenarios as well) # leave unset for auto-detection apiVersion: 2 sshConnection: host: democratic-csi-server.reeselink.com port: 22 username: democratic # use either password or key # password: "" privateKey: "" zfs: cli: sudoEnabled: true paths: zfs: /usr/sbin/zfs zpool: /usr/sbin/zpool sudo: /usr/bin/sudo chroot: /usr/sbin/chroot # can be used to set arbitrary values on the dataset/zvol # can use handlebars templates with the parameters from the storage class/CO datasetProperties: "org.freenas:description": "{{ parameters.[csi.storage.k8s.io/pvc/namespace] }}/{{ parameters.[csi.storage.k8s.io/pvc/name] }}" datasetParentName: enc1/dcsi/apps # do NOT make datasetParentName and detachedSnapshotsDatasetParentName overlap # they may be siblings, but neither should be nested in the other detachedSnapshotsDatasetParentName: enc1/dcsi/snaps zvolCompression: # "" (inherit), on, off, verify zvolDedup: zvolEnableReservation: false # 512, 1K, 2K, 4K, 8K, 16K, 64K, 128K default is 16K zvolBlocksize: iscsi: targetPortal: "democratic-csi-server.reeselink.com" # for multipath targetPortals: [] # [ "server[:port]", "server[:port]", ... ] # leave empty to omit usage of -I with iscsiadm interface: # MUST ensure uniqueness # full iqn limit is 223 bytes, plan accordingly # default is "{{ name }}" nameTemplate: "{{ parameters.[csi.storage.k8s.io/pvc/namespace] }}-{{ parameters.[csi.storage.k8s.io/pvc/name] }}" namePrefix: "dcsi-" nameSuffix: "-enc1" # add as many as needed targetGroups: # get the correct ID from the "portal" section in the UI - targetGroupPortalGroup: 7 # get the correct ID from the "initiators" section in the UI targetGroupInitiatorGroup: 1 # None, CHAP, or CHAP Mutual targetGroupAuthType: None # get the correct ID from the "Authorized Access" section of the UI # only required if using Chap targetGroupAuthGroup: extentCommentTemplate: "{{ parameters.[csi.storage.k8s.io/pvc/namespace] }}/{{ parameters.[csi.storage.k8s.io/pvc/name] }}" extentInsecureTpc: true extentXenCompat: false extentDisablePhysicalBlocksize: true # 512, 1024, 2048, or 4096, extentBlocksize: 512 # "" (let FreeNAS decide, currently defaults to SSD), Unknown, SSD, 5400, 7200, 10000, 15000 extentRpm: "SSD" # 0-100 (0 == ignore) extentAvailThreshold: 0