Error “The vSphere Distributed Switch configuration on some hosts differs from that on the vCenter server” – VCF 3.9

Las últimas semanas del año pasado encontramos un error raro en nuestros vSphere Distributed Switches, aparecían alertados con el error “The vSphere Distributed Switch configuration on some hosts differs from that on the vCenter server”. Comúnmente cuando  haces click en el botón rectify se resuelve.
Acá no pasaba nada.
Actualmente estamos usando VCF 3.9 (vSphere 6.7 + NSX 6.4.6 + vSAN 6.7)
Los pasos a seguir para resolver este problema son estos:

  1. Poner el host en Maintenance Mode:
    Es importante seleccionar la opción “Evacuate all data”, ya que vamos a sacar el host del cluster).  Esto va a tardar un rato ya que tiene que Evacuar todos los objetos de vSAN.
  2. Poner DRS en Manual:
    Hosts and clusters → Click sobre el cluster → Configure → vSphere DRS → Edit  → Automation level: Manual.
  3. Sacar una vNIC del vDS:
    Hosts and clusters Click sobre el host → Configure → Networking → Virtual Switches → Manage Physical Adapters → Seleccionamos un Uplink y hacemos click en la X →Ok.
  4. Crear un vSphere Standard Switch (vSS):
    Hosts and clusters → Click sobre el host → Configure → Networking → Virtual Switches → Add Networking → Virtual Machine portgroup for a standard switch → New Standard Switch → Asignamos los uplinks el uplink del punto anterior.  → Creamos un portgroup (Por Defecto: VM Network) → Finish.
  5. Migrar los VMkernels del host (Management, vMotion y vSAN):
    Hosts and clusters → Click sobre el host → Configure → Networking → Virtual Switches → Click sobre el vSS (vSwitch0 en mi caso) → Click sobre los tres puntos … → Migrate VMkernel Adapter → Seleccionamos el VMkernel de Management y hacemos click en next y finish.
    (Repetimos con los VMkernel de vMotion y vSAN).
  6. Sacar la otra vNIC del vDS:
    Hosts and clusters → Click sobre el host → Configure → Networking → Virtual Switches → Manage Phyisical Adapters → Seleccionamos un Uplink y hacemos click en la X → Ok.
    (Vamos a tener que repetir por cada NIC que tenga el host, es decir si el vDS tiene 6 nics, hay que sacar las 6.)
  7. Agregar la segunda vNIC al vSS. (opcional):
    Hosts and clusters → Click sobre el host → Configure → Networking → Virtual Switches → Manage Phyisical Adapters → Hacemos click en el + verde y agregamos el uplink libre como activo o standby.  (Según corresponda).
  8. Sacar el host del cluster:
    Esto lo haces arrastrando el host fuera del cluster (al objeto DC por ejemplo).
    Es importante esperar a que terminen las tareas de reconfigure vSAN y Uninstall (NSX VIB).
  9. Desconectar el host:
    Hosts and clusters → Click  derecho sobre el host → Connection → Disconnect
    Este paso lo hacemos para que no de errores de objetos en uso y nos deje remover el host sin problemas. (Por ejemplo esta KB)
  10. Sacamos el host del vDS:
    Hosts and clusters → Click  derecho sobre el host → Remove from inventory.
  11. Agregar el host al inventario:
    Hosts and clusters → Seleccionamos el objeto Datacenter → Add host.
    Es importante no hacer esto sobre el objeto cluster, porque va a configurar vSAN y NSX antes de tiempo.
  12. Agregar el host al vDS y Migrar los VMkernels:
    Networking → Click derecho sobre el vDS → Add hosts → + New hosts… → En la parte de Manage Physical adapters seleccionamos el uno de los uplinks para el vDS → En la parte de Manage VMkernel Adapters Migramos los portgroups de Management, vSAN y vMotion (podemos hacer todo en un solo click) → En la parte de Migrate VM Networking no hacemos nada → Finish.
  13. Agregar uplinks adicionales:
    Si el host tenía 2 o más uplinks tenemos que dejarlo como estaba antes.
    Hosts and clusters → Click sobre el host → Configure → Networking → Virtual Switches → Manage Physical Adapters → Hacemos click en el + verde y agregamos el uplink libre como activo o standby (según corresponda).
  14. Agregar el host al cluster:
    Simplemente arrastrar el host al cluster en el que estaba.
    Esperar que terminen las tareas de configure vSAN e Install (NSX VIB).
  15. Verificar vSAN:
    Verificar desde el vSAN rvc console que el host sea miembro del cluster.
  16. Verificar NSX:
    Verificar desde el NSX manager que el host esté instalado y no haya problemas de comunicación.
    Cómo se está instalando la VIB puede tardar unos 10 minutos en refrescarse.