Stellen Sie vor dem Installieren von OpenShift sicher, dass Ihre Umgebung bestimmte Anforderungen erfüllt.

Allgemeine Anforderungen

  • Ansible 2.4 oder höher.

Anforderungen von virtuellen Maschinen

OpenShift-Knoten-VMs müssen zwei vNICs aufweisen:

  • Eine Verwaltungs-vNIC, die mit dem logischen Switch verbunden ist, der über einen Uplink zum Tier-1-Verwaltungsrouter verfügt.
  • Die zweite vNIC auf allen VMs muss folgende Tags in NSX-T aufweisen, damit NCP weiß, welcher Port als übergeordnete VIF für alle auf diesem bestimmten OpenShift-Knoten ausgeführten PODs verwendet wird.
    {'ncp/node_name':  '<node_name>'}
    {'ncp/cluster': '<cluster_name>'}

Bare-Metal-Maschinenanforderungen

  • Die OpenShift-Knoten müssen NSX-T-Transportknoten sein, und die oben erwähnten Tags müssen anstatt auf die VIFs auf die Transportknoten angewendet werden.
  • Die Ansible-Hostdatei muss die folgende Einstellung aufweisen: nsx_node_type='BAREMETAL'.

NSX-T-Anforderungen

  • Ein Tier-0-Segment oder ein logischer Router.
  • Eine Overlay-Transportzone.
  • Ein IP-Block für das POD-Netzwerk.
  • (Optional) Ein IP-Block für das geroutete POD-Netzwerk (keine NAT).
  • Ein IP-Pool für SNAT. Standardmäßig ist der IP-Block für das POD-Netzwerk nur innerhalb von NSX-T routingfähig. NCP verwendet diesen IP-Pool, um Konnektivität nach außen bereitzustellen.
  • (Optional) Oberer und unterer Firewallabschnitt. NCP platziert Kubernetes-Netzwerkrichtlinienregeln zwischen diesen beiden Abschnitten.
  • Open vSwitch- und CNI-Plug-In-RPMs müssen auf einem HTTP-Server gehostet werden, der von den OpenShift-Knoten-VMs aus erreichbar ist.

NCP-Docker-Image

Derzeit ist das NCP-Docker-Image nicht öffentlich verfügbar. Sie müssen das Image nsx-ncp in einer lokalen privaten Registrierung vorliegen haben oder wie folgt vorgehen:

ansible-playbook [-i /path/to/inventory] playbooks/prerequisites.yml

Auf allen Knoten:
docker load -i nsx-ncp-rhel-xxx.yyyyyyyy.tar
docker image tag registry.local/xxx.yyyyyyyy/nsx-ncp-rhel nsx-ncp
ansible-playbook [-i /path/to/inventory] playbooks/deploy_cluster.yml