Worker preparation

All of the worker nodes in the Kubernetes cluster need to be able to mount the volumes that users have provisioned for their pods.

If you are using the ontap-nas, ontap-nas-economy, ontap-nas-flexgroup driver for one of your backends, your workers will need the NFS tools. Otherwise they require the iSCSI tools.

Note

Recent versions of RedHat CoreOS have both installed by default. You must ensure that the NFS and iSCSI services are started up during boot time.

Note

When using worker nodes that run RHEL/RedHat CoreOS with iSCSI PVs, make sure to specify the discard mountOption in the StorageClass to perform inline space reclamation. Take a look at RedHat’s documentation here.

Warning

You should always reboot your worker nodes after installing the NFS or iSCSI tools, or attaching volumes to containers may fail.

NFS

Install the following system packages:

RHEL / CentOS

sudo yum install -y nfs-utils

Ubuntu / Debian

sudo apt-get install -y nfs-common

iSCSI

RHEL / CentOS

  1. Install the following system packages:

    sudo yum install -y lsscsi iscsi-initiator-utils sg3_utils device-mapper-multipath
    
  2. Enable multipathing:

    sudo mpathconf --enable --with_multipathd y
    
  3. Ensure that iscsid and multipathd are running:

    sudo systemctl enable iscsid multipathd
    sudo systemctl start iscsid multipathd
    
  4. Start and enable iscsi:

    sudo systemctl enable iscsi
    sudo systemctl start iscsi
    

Ubuntu / Debian

  1. Install the following system packages:

    sudo apt-get install -y open-iscsi lsscsi sg3-utils multipath-tools scsitools
    
  2. Enable multipathing:

    sudo tee /etc/multipath.conf <<-'EOF'
    defaults {
        user_friendly_names yes
        find_multipaths yes
    }
    EOF
    
    sudo systemctl enable multipath-tools.service
    sudo service multipath-tools restart
    
  3. Ensure that open-iscsi and multipath-tools are enabled and running:

    sudo systemctl status multipath-tools
    sudo systemctl enable open-iscsi.service
    sudo service open-iscsi start
    sudo systemctl status open-iscsi