Conectando un ESXi a un Cisco Nexus 5000
Hola amigos, soy Florián Murillo y aquí estoy, como cada viernes.
Hace unos meses escribí un post hablando de la conexión de un ESX a un switch físico con Cisco IOS.
Opsss… ¡¡hace más de un año que lo escribí!! Menos mal que sigue siendo válido…
Ahora ha llegado el momento de agarrar un servidor ESXi y conectarlo a un switch físico con Cisco NX-OS. Cisco NX-OS es la evolución de Cisco IOS adaptado a las necesidades del Datacenter. Concretamente, para el ejemplo, vamos a utilizar un Cisco Nexus de la familia 5000.
Pero antes, definiré el concepto BPDU para evitar que nadie se quede por el camino:
Bridge Protocol Data Units (BPDUs) son paquetes de red que contienen información del protocolo spanning tree (STP). Los switches mandan BPDUs usando la dirección MAC del switch como origen y la dirección MAC multicast 01:80:C2:00:00:00 como MAC destino.
Existen tres tipos de BPDUs: De configuración de la topología, de notificación de cambio topológico y de confirmación de notificación del cambio topológico. Por defecto se envían cada 2 segundos.
Volviendo al Cisco Nexus 5000, la configuración de cada puerto del switch físico donde se conecta una vmnic podría ser algo así:
router(config)# interface Ethernet 1/12
router(config-if)# switchport
Configura el puerto como un interfaz L2
router(config-if)# switchport mode trunk
Configura el puerto como trunk IEEE 802.1q
router(config-if)# switch trunk allowed vlan 11-14
Define las VLANs que permitimos pasar por este puerto de trunk
router(config-if)# spanning-tree port type edge trunk
Es un puerto que no emite BPDUs de spanning-tree y no participa en el cálculo de la topología de STP, ha de ser así, el servidor ESXi no sabe lo que es una BPDU de spanning tree
router(config-if)# spanning-tree bpduguard enable
Si recibimos BPDUs bloquea el puerto, de un ESXi no vendrán BPDUs, evitamos de esta manera que se conecte otro switch a este puerto
router(config-if)#
Aunque esta configuración es correcta, no es la habitual. Para evitar repetir esta configuración en cada puerto que tenga la misma configuración creamos un port-profile e incluimos en él los comandos comunes. Luego, asignamos puertos al port-profile, aplicándoles los comandos al interfaz. Facilita mucho el cambio de configuraciones.
router(config)# port-profile GRUPO1
router(config-ppm)# switchport
router(config-ppm)# switchport mode trunk
router(config-ppm)# switch trunk allowed vlan 11-14
router(config-ppm)# spanning-tree port type edge trunk
router(config-ppm)# spanning-tree bpduguard enable
router(config-ppm)# state enabled
router(config-ppm)# exit
router(config)# interface Ethernet 1/12
router(config-if)# inherit port-profile GRUPO1
Aplicamos los comandos del port-profile a este interface
router(config-if)# exit
router(config)# exit
¿Se pueden construir grandes infraestructuras de cloud sin switches diseñados para datacenter? ¿Qué opináis?
¿Crees que este post le puede interesar a alguien a quien conoces? Compártelo clicando los botones de Twitter, Facebook o Google+ de abajo. Gracias por tu apoyo.