La mayoría de los pasos para preparar los nodos de Kubernetes se automatizan con dos contenedores, nsx-ovs y nsx-ncp-bootstrap, que se ejecutan en los DaemonSets sx-node-agent y nsx-ncp-bootstrap, respectivamente.
Antes de instalar NCP, asegúrese de que los nodos de Kubernetes tengan instalado Python y se pueda acceder a ellos a través de la interfaz de línea de comandos. Puede utilizar el administrador del paquete de Linux para instalarlo. Por ejemplo, en Ubuntu, puede ejecutar el comando apt install python.
sudo cat /sys/module/apparmor/parameters/enabled
sudo /etc/init.d/apparmor status
El archivo de perfil ncp-apparmor proporciona un perfil de AppArmor para el agente de nodo NSX llamado node-agent-apparmor, que se diferencia del perfil docker-default en los siguientes aspectos:
- Se elimina la regla deny mount.
- Se agrega la regla mount.
- Se agregan algunas opciones de network, capability, file y umount.
Puede reemplazar el perfil node-agent-apparmor con otro perfil. Si lo hace, debe cambiar el nombre del perfil node-agent-apparmor en el archivo YAML de NCP.
- /etc/cni/net.d
- /etc/apparmor.d/ncp-apparmor
- /opt/cni/bin/nsx
- /opt/cni/bin/nsx
- /etc/cni/net.d/99-loopback.conf
- /etc/cni/net.d/10-nsx.conflist
- /etc/apparmor.d/ncp-apparmor
Si los archivos /opt/cni/bin/loopback y /etc/cni/net.d/99-loopback.conf existen, no se sobrescribirán. Si el tipo de sistema operativo es Ubuntu, el archivo ncp-apparmor también se copiará en el host.
El contenedor de arranque moverá la dirección IP y las rutas de br-int a node-if. También se detendrá OVS si se está ejecutando en el host, ya que OVS se ejecutará dentro del contenedor nsx-ovs. El contenedor nsx-ovs creará la instancia de br-int si no existe, agregará la interfaz de red (node-if) que está conectada a través del conmutador lógico del nodo a br-int y se asegurará de que los vínculos br-int y node-if estén activos. Moverá la dirección IP y las rutas de node-if a br-int. Se producirá un periodo de inactividad de unos segundos cuando se reinicie el contenedor nsx-node-agent o nsx-ovs.
auto eth1 iface eth1 inet static address 172.16.1.4/24 #persistent static routes up route add -net 172.16.1.3/24 gw 172.16.1.1 dev eth1
A continuación, ejecute el comando ifdown eth1; ifup eth1.
HWADDR=00:0C:29:B7:DC:6F TYPE=Ethernet PROXY_METHOD=none BROWSER_ONLY=no BOOTPROTO=none IPADDR=172.10.0.2 PREFIX=24 DEFROUTE=yes IPV4_FAILURE_FATAL=no IPV4_DNS_PRIORITY=100 IPV6INIT=no NAME=eth1 UUID=39317e23-909b-45fc-9951-849ece53cb83 DEVICE=eth1 ONBOOT=yes
A continuación, ejecute el comando systemctl restart network.service.
Para obtener más información sobre cómo configurar rutas persistentes para RHEL, consulte https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/6/html/deployment_guide/sec-configuring_static_routes_in_ifcfg_files.
Si es necesario, puede deshacer los cambios que realice el contenedor de arranque. Para obtener más información, consulte Limpiar los nodos de Kubernetes.