Der NSX-Knotenagent ist ein DaemonSet, wobei von jedem Pod zwei Container ausgeführt werden. Ein Container führt den NSX-Knotenagent aus, der hauptsächlich für die Verwaltung der Container-Netzwerkschnittstellen zuständig ist. Er interagiert mit dem CNI-Plugin und dem Kubernetes-API-Server. Der andere Container führt den NSX-Kube-Proxy aus, der lediglich der Implementierung der Kubernetes-Dienstabstraktion dient, indem Cluster-IP-Adressen in Pod-IP-Adressen übersetzt werden. Er implementiert dieselbe Funktionalität wie der vorgeschaltete Kube-Proxy.

Prozedur

  1. Laden Sie das NCP-Docker-Image herunter.

    Der Dateiname lautet nsx-ncp-xxxxxxx.tar, wobei xxxxxxx der Build-Nummer entspricht.

  2. Laden Sie die YAML-Datei für das DaemonSet des NSX-Knotenagents herunter.

    Der Dateiname ist nsx-node-agent-ds.yml. Sie können diese Datei bearbeiten oder als Beispiel für Ihre eigene Vorlagendatei verwenden.

  3. Laden Sie das NCP-Docker-Image in Ihre Image-Registrierung.
        docker load -i <tar file>
  4. Bearbeiten Sie nsx-node-agent-ds.yml.

    Ändern Sie den Image-Namen in den Namen der geladenen Datei.

    Nehmen Sie die folgenden Änderungen vor:

     [coe]
     node_type = 'BAREMETAL' 
     ...  
     [nsx_node_agent] 
     ovs_bridge = 'nsx-managed' 

    Heben Sie die Auskommentierung für folgende Zeilen auf:

    securityContext:
      capabilities:
        add:
          - NET_ADMIN
          - SYS_ADMIN
          - SYS_PTRACE
          - DAC_READ_SEARCH
          # For BMC usecase
          - DAC_OVERRIDE
    volumeMounts:
    …
    # mount nestdb-sock for baremetal node
    - name: nestdb-sock
    mountPath: /var/run/vmware/nestdb/nestdb-server.sock
    volumes:
    …
    # volume for baremetal node
    - name: nestdb-sock
       hostPath:
       path: /var/run/vmware/nestdb/nestdb-server.sock
       type: Socket

    Hinweis:

    In der YAML-Datei müssen Sie angeben, dass das für ncp.ini generierte ConfigMap-Objekt als ReadOnly-Volume bereitgestellt werden muss. Die heruntergeladene YAML-Datei weist bereits diese Spezifikation auf, die nicht geändert werden sollte.

  5. Erstellen Sie das NSX-Knotenagent-DaemonSet mit dem folgenden Befehl.
        oc apply -f nsx-node-agent-ds.yml