Skip to main content
BeeGFS on NetApp with E-Series Storage
Die deutsche Sprachversion wurde als Serviceleistung für Sie durch maschinelle Übersetzung erstellt. Bei eventuellen Unstimmigkeiten hat die englische Sprachversion Vorrang.

Konfigurieren Sie BeeGFS-Clients

Beitragende

Sie müssen den BeeGFS-Client auf allen Hosts installieren und konfigurieren, die Zugriff auf das BeeGFS-Dateisystem benötigen, z. B. Compute- oder GPU-Nodes. Für diese Aufgabe können Sie Ansible und die BeeGFS-Sammlung verwenden.

Schritte
  1. Richten Sie bei Bedarf über den Ansible-Steuerungsknoten passwortlose SSH für jeden Host ein, den Sie als BeeGFS-Clients konfigurieren möchten:

    ssh-copy-id <user>@<HOSTNAME_OR_IP>

  2. Unter host_vars/`Erstellen Sie für jeden BeeGFS-Client eine Datei mit dem Namen `<HOSTNAME>.yml Füllen Sie den Platzhaltertext mit den korrekten Informationen für Ihre Umgebung aus:

    # BeeGFS Client
    ansible_host: <MANAGEMENT_IP>
    # OPTIONAL: If you want to use the NetApp E-Series Host Collection’s IPoIB role to configure InfiniBand interfaces for clients to connect to BeeGFS file systems:
    eseries_ipoib_interfaces:
      - name: <INTERFACE>
        address: <IP>/<SUBNET_MASK> # Example: 100.127.1.1/16
      - name: <INTERFACE>
        address: <IP>/<SUBNET_MASK>
    Hinweis Bei der Bereitstellung mit zwei Subnetzadressierungsschemata müssen auf jedem Client zwei InfiniBand-Schnittstellen konfiguriert werden, eine in jedem der beiden Storage-IPoIB-Subnetze. Wenn Sie die Beispiel-Subnetze und empfohlenen Bereiche für jeden hier aufgeführten BeeGFS-Dienst verwenden, sollten Clients eine Schnittstelle im Bereich von bis und die andere in bis konfigurieren 100.127.1.0 100.127.99.255 100.128.1.0 100.128.99.255.
  3. Erstellen Sie eine neue Datei client_inventory.yml, Und dann füllen Sie die folgenden Parameter an der Spitze:

    # BeeGFS client inventory.
    all:
      vars:
        ansible_ssh_user: <USER> # This is the user Ansible should use to connect to each client.
        ansible_become_password: <PASSWORD> # This is the password Ansible will use for privilege escalation, and requires the ansible_ssh_user be root, or have sudo privileges.
    The defaults set by the BeeGFS HA role are based on the testing performed as part of this NetApp Verified Architecture and differ from the typical BeeGFS client defaults.
    Hinweis Speichern Sie Passwörter nicht im Klartext. Verwenden Sie stattdessen den Ansible Vault (siehe Ansible-Dokumentation für) "Verschlüsseln von Inhalten mit Ansible Vault") Oder verwenden Sie die --ask-become-pass Option beim Ausführen des Playbooks.
  4. Im client_inventory.yml Datei, Listen Sie alle Hosts auf, die als BeeGFS-Clients unter dem konfiguriert werden sollen beegfs_clients Gruppe, und geben Sie dann alle zusätzlichen Konfigurationen an, die zum Erstellen des BeeGFS-Client-Kernelmoduls erforderlich sind.

      children:
        # Ansible group representing all BeeGFS clients:
        beegfs_clients:
          hosts:
            beegfs_01:
            beegfs_02:
            beegfs_03:
            beegfs_04:
            beegfs_05:
            beegfs_06:
            beegfs_07:
            beegfs_08:
            beegfs_09:
            beegfs_10:
          vars:
            # OPTION 1: If you’re using the NVIDIA OFED drivers and they are already installed:
            eseries_ib_skip: True # Skip installing inbox drivers when using the IPoIB role.
            beegfs_client_ofed_enable: True
            beegfs_client_ofed_include_path: "/usr/src/ofa_kernel/default/include"
            # OPTION 2: If you’re using inbox IB/RDMA drivers and they are already installed:
            eseries_ib_skip: True # Skip installing inbox drivers when using the IPoIB role.
            # OPTION 3: If you want to use inbox IB/RDMA drivers and need them installed/configured.
            eseries_ib_skip: False # Default value.
            beegfs_client_ofed_enable: False # Default value.
    Hinweis Wenn Sie die NVIDIA OFED-Treiber verwenden, stellen Sie sicher, dass beegfs_client_ofed_include_path sie auf den richtigen „Header include path“ für Ihre Linux-Installation verweist. Weitere Informationen finden Sie in der BeeGFS-Dokumentation für "RDMA-Unterstützung".
  5. Im client_inventory.yml Datei, Listen Sie die BeeGFS-Dateisysteme auf, die am unteren Rand eines zuvor definierten gemountet werden sollen vars.

            beegfs_client_mounts:
              - sysMgmtdHost: 100.127.101.0 # Primary IP of the BeeGFS management service.
                mount_point: /mnt/beegfs    # Path to mount BeeGFS on the client.
                connInterfaces:
                  - <INTERFACE> # Example: ibs4f1
                  - <INTERFACE>
                beegfs_client_config:
                  # Maximum number of simultaneous connections to the same node.
                  connMaxInternodeNum: 128 # BeeGFS Client Default: 12
                  # Allocates the number of buffers for transferring IO.
                  connRDMABufNum: 36 # BeeGFS Client Default: 70
                  # Size of each allocated RDMA buffer
                  connRDMABufSize: 65536 # BeeGFS Client Default: 8192
                  # Required when using the BeeGFS client with the shared-disk HA solution.
                  # This does require BeeGFS targets be mounted in the default “sync” mode.
                  # See the documentation included with the BeeGFS client role for full details.
                  sysSessionChecksEnabled: false
    Hinweis Der beegfs_client_config Stellt die Einstellungen dar, die getestet wurden. Lesen Sie die Dokumentation im netapp_eseries.beegfs Kollektion’s beegfs_client Rolle für einen umfassenden Überblick über alle Optionen. Dies enthält Details zum Mounten mehrerer BeeGFS-Dateisysteme oder zum mehrere Male das gleiche BeeGFS-Dateisystem.
  6. Erstellen Sie eine neue client_playbook.yml Datei, und füllen Sie dann die folgenden Parameter aus:

    # BeeGFS client playbook.
    - hosts: beegfs_clients
      any_errors_fatal: true
      gather_facts: true
      collections:
        - netapp_eseries.beegfs
        - netapp_eseries.host
      tasks:
        - name: Ensure IPoIB is configured
          import_role:
            name: ipoib
        - name: Verify the BeeGFS clients are configured.
          import_role:
            name: beegfs_client
    Hinweis Beim Importieren des weglassen netapp_eseries.host Sammlung und ipoib Rolle, wenn Sie bereits die erforderlichen IB/RDMA-Treiber und IP-Adressen auf den entsprechenden IPoIB-Schnittstellen installiert haben.
  7. Führen Sie den folgenden Befehl aus, um den Client zu installieren und zu erstellen und BeeGFS zu mounten:

    ansible-playbook -i client_inventory.yml client_playbook.yml
  8. Bevor Sie das BeeGFS-Dateisystem in Produktion setzen, empfehlen wir * dringend*, sich bei allen Clients anzumelden und zu starten beegfs-fsck --checkfs Um sicherzustellen, dass alle Knoten erreichbar sind und keine Probleme gemeldet werden.