ansible-playbooks/playbookconfig/src/playbooks/host_vars/netapp/default.yml

140 lines
5.5 KiB
YAML

---
#
# Copyright (c) 2020 Wind River Systems, Inc.
#
# SPDX-License-Identifier: Apache-2.0
#
# TRIDENT NETAPP ORCHESTRATOR INSTALL
# ====================================
# This is based on https://github.com/NetApp/trident/releases/download/v20.04.0/trident-installer-20.04.0.tar.gz
trident_namespace: "trident"
# The default port is 8000, which conflicts with the Armada app which also listens on port 8000
# Also, on an HTTPS enabled setup, the default port for HTTPS REST API is 8443 which conflicts
# with the port used by the platform Horizon dashboard.
# Choosing ports 8677 and 8678 to replace the defaults because they are unassigned according to:
# https://www.iana.org/assignments/service-names-port-numbers/service-names-port-numbers.xhtml
trident_rest_api_port: 8677
trident_https_rest_api_port: 8678
# The default port opened by the service for metrics gathering is 8001.
# For now, this doesn't seem to conflict with anything on our system,
# but it's better to have it configurable.
trident_metrics_port: 8001
# We don't yet know if trident pods need to run on all nodes or just controllers,
# so we add a parameter to easily switch between the two
# TODO: remove this and change the k8s daemonset template once tests are completed
trident_deploy_only_on_controllers: false
trident_force_reinstall: false
trident_secret_name: "trident-local-registry-secret"
# Extra parameters to be given to the tridentctl install command
# If you want to configure Ipv6 add "--use-ipv6" to this list
# For a full list of supported parameters use "tridentctl install -h" commmand on the setup
trident_install_extra_params: ""
# Flag so we can import the trident images using the push-docker-images role
mode: "trident_install"
# Clean trident_setup_dir where templates and other files are copied
# Defaults to true, but you can set it to false for debug purposes
trident_clean_folder: true
# Images that need to be pulled to the local registry
trident_images:
- docker.io/netapp/trident:20.04.0
- quay.io/k8scsi/csi-provisioner:v1.6.0
- quay.io/k8scsi/csi-attacher:v2.2.0
- quay.io/k8scsi/csi-resizer:v0.5.0
- quay.io/k8scsi/csi-node-driver-registrar:v1.3.0
- quay.io/k8scsi/csi-snapshotter:v2.1.0
# OVERRIDE FILES DIRECTORY
# ========================
#
# Default directory where user override file(s) can be found
#
override_files_dir: "{{ lookup('env', 'HOME') }}"
# NETAPP BACKENDS CONFIGURATION
# =============================
# Configure NetApp backends, for complete list of configuration options visit:
# https://netapp-trident.readthedocs.io/en/stable-v20.04/kubernetes/operations/tasks/backends/ontap.html#
# Configurable option classes via this playbook are:
# 1. Kubernetes storage class - see netapp_k8s_storageclasses
# 2. Kubernetes snapshot storage class - see netapp_k8s_snapshotstorageclasses
# 3. NetApp backend configuration - see netapp_backends
#
# Configuration options, if specified, will be passed to K8S and/or Netapp config tool
# accordingly. Use host overrides to change the default settings. For instance, to
# skip the configuration of k8s_snapshotstorageclasses set:
# netapp_k8s_snapshotstorageclasses: []
# in the host overrides file
# See trident-installer/sample-input in trident-installer-X.Y.X.tar.gz
#
# 1. netapp_k8s_storageclass: Kubernetes storage class leads to a StorageClass e.g.:
#
# apiVersion: storage.k8s.io/v1
# kind: StorageClass
# metadata:
# name: basic
# provisioner: netapp.io/trident
# parameters:
# backendType: "__BACKEND_TYPE__"
#
# 2. netapp_k8s_snapshotstorageclasses: Kubernetes volume snapshot class leads to a VolumeSnapshotClass e.g.:
#
# apiVersion: snapshot.storage.k8s.io/v1beta1
# kind: VolumeSnapshotClass
# metadata:
# name: csi-snapclass
# driver: csi.trident.netapp.io
# deletionPolicy: Delete
#
# 3. netapp_backends: Main NetApp backend configuration options:
# version: Always 1
# storageDriverName: “ontap-nas”, “ontap-nas-economy”, “ontap-nas-flexgroup”, “ontap-san”, “ontap-san-economy”
# backendName: Custom name for the storage backend
# managementLIF: IP address of a cluster or SVM management LIF
# dataLIF: IP address of protocol LIF
# svm: Storage virtual machine to use
# igroupName: Name of the igroup for SAN volumes to use
# username: Username to connect to the cluster/SVM
# password: Password to connect to the cluster/SVM
# storagePrefix: Prefix used when provisioning new volumes in the SVM
# limitAggregateUsage: Fail provisioning if usage is above this percentage
# limitVolumeSize: Fail provisioning if requested volume size is above this value
# nfsMountOptions" Comma-separated list of NFS mount options (except ontap-san)
#
# WARNING: It is strongly recommended to store these settings in Ansible vault
# file named "secrets.yml" under override files directory. Configuration parameters
# stored in vault must start with vault_ prefix (i.e. vault_netapp_backends).
netapp_k8s_storageclass:
- metadata:
name: netapp-nas-backend
provisioner: netapp.io/trident
parameters:
backendType: "ontap-nas" # should be the same as config_options.storageDriverName
netapp_k8s_snapshotstorageclasses:
- metadata:
name: csi-snapclass
driver: csi.trident.netapp.io
deletionPolicy: Delete
netapp_backends:
- version: 1
storageDriverName: "ontap-nas" # should be the same as storageclass.parameters.backendType
backendName: "nas-backend"
managementLIF: "10.0.0.1"
dataLIF: "10.0.0.2"
svm: "svm_nfs"
username: "admin"
password: "secret"
# nfsMountOptions: "nfsvers=4"