Skip to main content
BeeGFS on NetApp with E-Series Storage

Set up an Ansible control node

Contributors netapp-jsnyder netapp-jolieg

To set up an Ansible control node, you must identify a virtual or physical machine with network access to the management ports of all file and block nodes that can be used to configure the solution.

The following steps were tested on CentOS 8.4. For steps specific to your preferred Linux distribution, see the Ansible documentation.

  1. Install Python 3.9 and ensure that the correct version of pip is installed.

    sudo dnf install python3.9 -y
    sudo dnf install python39-pip
    sudo dnf install sshpass
  2. Create symbolic links, ensuring that the Python 3.9 binary is used whenever python3 or python is called.

    sudo ln -sf /usr/bin/python3.9 /usr/bin/python3
    sudo ln -sf /usr/bin/python3 /usr/bin/python
  3. Install the Python packages required by the NetApp BeeGFS collections.

    python3 -m pip install ansible cryptography netaddr
    Note To ensure that you are installing a supported version of Ansible and all required Python packages, refer to the BeeGFS collection's Readme file. Supported versions are also noted in Technical requirements.
  4. Verify that the correct versions of Ansible and Python are installed.

    ansible --version
    ansible [core 2.11.6]
      config file = None
      configured module search path = ['/root/.ansible/plugins/modules', '/usr/share/ansible/plugins/modules']
      ansible python module location = /usr/local/lib/python3.9/site-packages/ansible
      ansible collection location = /root/.ansible/collections:/usr/share/ansible/collections
      executable location = /usr/local/bin/ansible
      python version = 3.9.2 (default, Mar 10 2021, 17:29:56) [GCC 8.4.1 20200928 (Red Hat 8.4.1-1)]
      jinja version = 3.0.2
      libyaml = True
  5. Store the Ansible inventories used to describe the BeeGFS deployment in source control systems such as Git or BitBucket, and then install Git to interact with those systems.

    sudo dnf install git -y
  6. Set up passwordless SSH. This is the easiest way to allow Ansible to access the remote BeeGFS file nodes from the Ansible control node.

    1. On the Ansible control node, if needed, generate a pair of public keys using ssh-keygen

    2. Set up passwordless SSH to each of the file nodes using ssh-copy-id <ip_or_hostname>

      Do not set up passwordless SSH to the block nodes. This is neither supported nor required.

  7. Use Ansible Galaxy to install the version of the BeeGFS collection listed in Technical requirements.

    This installation includes additional Ansible dependencies, such as the NetApp SANtricity software and host collections.

    ansible-galaxy collection install netapp_eseries.beegfs:==3.0.1