Validación de cables para Nexus Network Fabric
En este artículo se explica la validación de cables de Fabric, donde la función principal de la API de diagnóstico consiste en comprobar todos los dispositivos de tejido para detectar posibles problemas de cableado. La API de diagnóstico evalúa si los dispositivos interconectados cumplen la lista de materiales (BOM) y según el recurso Unidades de mantenimiento de existencias (SKU), clasificándolos como compatibles o no compatibles. Los tipos de dispositivo incluyen Customer Edge (CE), Top of Rack (TOR), Management (MGMT) y Network Packet Broker (NPB). Los resultados se presentan en un formato JSON, que abarca detalles como el estado de validación, los errores, el tipo de identificador y el identificador de dispositivo vecino. Estos resultados se almacenan en una cuenta de almacenamiento proporcionada por el cliente. Es fundamental para la implementación general que los errores identificados en este informe se resuelven antes de pasar al paso de implementación del clúster.
Para más información sobre la lista de materiales (BOM), consulte SKU de Nexus del operador de Azure
Requisitos previos
- Asegúrese de que Nexus Network Fabric se ha aprovisionado correctamente.
- Proporcione el identificador de Network Fabric y la dirección URL de almacenamiento con acceso de escritura a través de una incidencia de soporte técnico.
- La cuenta de almacenamiento tiene estos requisitos previos:
- La cuenta de almacenamiento debe estar en una región de Azure diferente a la región de Azure de Network Fabric.
- El rol
Storage Blob Data Contributor
debe asignarse alNexus Network Fabric RP
con acceso asignado a la cuenta de almacenamiento.
- El Soporte técnico de Microsoft debe aplicar revisiones a Nexus Network Fabric con una dirección URL de SAS de almacenamiento activa antes de ejecutar la validación de cableado.
Creación de una solicitud de soporte técnico de Azure para Patching Nexus Network Fabric:
- Consulte Creación de una solicitud de Soporte técnico de Azure
- Escriba
Nexus Network Fabric
para el problema y haga clic enGo
. - Seleccione
Azure Operator Nexus
como servicio con el que tiene problemas. - Seleccione
Subscription
donde se encuentra el recurso. - Seleccione
General
en el campo de recursos y haga clic enNext
. - Seleccione
Network fabric instance provisioning
en el símbolo del sistema de problemas y haga clic enNext
. - Ahora seleccione
Create a support request
en la parte superior de la hoja de soporte técnico. - Haga clic en
Next
en la pestañaProblem description
. - Espere a que el
Recommended solution
y a continuación, haga clic en el vínculo de vuelta a "Volver a la solicitud de soporte técnico" - Haga clic en
Next
la pestañaProblem description
de nuevo para continuarAdditional details
- Rellene los detalles de solicitud necesarios para revisar Nexus Network Fabric y a continuación, haga clic en
Next
- Revise la información de la pestaña
Review + create
y haga clic enCreate
.
Nota:
La dirección URL de almacenamiento (SAS) es de corta duración. De forma predeterminada, se establece para que expire en ocho horas. Si expira la dirección URL de SAS, el tejido debe volver a aplicar revisiones.
Generación de la dirección URL de almacenamiento
Para crear un contenedor en la cuenta de almacenamiento, consulte Creación de un contenedor
Nota:
Escriba el nombre del contenedor con solo letras minúsculas.
Para generar una dirección URL de SAS para que el contenedor proporcione acceso de escritura a Nexus Fabric, consulte Generación de una firma de acceso compartido
Nota:
Las direcciones URL de SAS son de corta duración. De forma predeterminada, se establece para que expire en ocho horas. Si expira la dirección URL de SAS, debe abrir una incidencia de soporte técnico de Microsoft para agregar una nueva dirección URL.
Validación del cableado
Ejecute el siguiente comando de la CLI de Azure:
az networkfabric fabric validate-configuration –resource-group "<NFResourceGroupName>" --resource-name "<NFResourceName>" --validate-action "Cabling" --no-wait --debug
Aparece la siguiente salida (truncada). Copie la dirección URL de la sección
Azure-AsyncOperation
de la salida de depuración. Esta parte de la dirección URL se usa en el paso siguiente para comprobar el estado de la operación.cli.azure.cli.core.sdk.policies: 'Azure-AsyncOperation': '<Azure-AsyncOperation-endpoint url>'
El siguiente error indica que Fabric no se revisa con una dirección URL de SAS válida:
azure.core.exceptions.HttpResponseError: Operation returned an invalid status 'OK'
Puede comprobar mediante programación el estado de la operación ejecutando el siguiente comando:
az rest -m get -u "<Azure-AsyncOperation-endpoint url>" { "endTime": "<OPERATION_COMPLETION_TIME>", "id": "<OPERATION_ID>", "name": "OPERATION_NAME", "properties": { "url": "CABLING_REPORT_STORAGE_URL" }, "resourceId": "<FABRIC_RID>", "startTime": "<OPERATION_START_TIME>", "status": "Succeeded" }
El estado de la operación indica si la API se realizó correctamente o no.
Nota:
La operación tarda aproximadamente 20~40 minutos en completarse en función del número de bastidores.
Descargue y lea los resultados validados de la
<CABLING_REPORT_STORAGE_URL>
devuelta por el comando finalizado.
La salida de ejemplo se muestra en las secciones siguientes.
Ejemplo de salida de validación de Cliente Edge (CE) a Proveedor Edge (PE)
networkFabricInfoSkuId": "M8-A400-A100-C16-ab",
"racks": [
{
"rackId": "AR-SKU-10005",
"networkFabricResourceId": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxx/resourceGroups/ResourceGroupName/providers/Microsoft.managedNetworkFabric/networkFabrics/NFName",
"rackInfo": {
"networkConfiguration": {
"configurationState": "Succeeded",
"networkDevices": [
{
"name": "AR-CE1",
"deviceSourceResourceId": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxx/resourceGroups/ResourceGroupName/providers/Microsoft.ManagedNetworkFabric/networkDevices/NFName-AggrRack",
"roleName": "CE1",
"deviceSku": "DCS-XXXXXXXXX-36",
"deviceSN": "XXXXXXXXXXX",
"fixedInterfaceMaps": [
{
"name": "Ethernet1/1",
"description": "AR-CE1:Et1/1 to PE1:EtXX",
"deviceConnectionDescription": "SourceHostName:Ethernet1/1 to DestinationHostName:Ethernet",
"sourceHostname": "SourceHostName",
"sourcePort": "Ethernet1/1",
"destinationHostname": "DestinationHostName",
"destinationPort": "Ethernet",
"identifier": "Ethernet1",
"interfaceType": "Ethernet",
"deviceDestinationResourceId": null,
"speed in Gbps": "400",
"cableSpecification": {
"transceiverType": "400GBASE-FR4",
"transceiverSN": "XKT220900XXX",
"cableSubType": "AOC",
"modelType": "AOC-D-D-400G-10M",
"mediaType": "Straight"
},
"validationResult": [
{
"validationType": "CableValidation",
"status": "Compliant",
"validationDetails": {
"deviceConfiguration": "Device Configuration detail",
"error": null,
"reason": null
}
},
{
"validationType": "CableSpecificationValidation",
"status": "Compliant",
"validationDetails": {
"deviceConfiguration": "Speed: 400 ; MediaType : Straight",
"error": "null",
"reason": null
}
}
]
},
Validación del conmutador de borde del cliente a la parte superior del bastidor (TOR)
{
"name": "Ethernet11/1",
"description": "AR-CE2:Et11/1 to CR1-TOR1:Et24",
"deviceConnectionDescription": " SourceHostName:Ethernet11/1 to DestinationHostName:Ethernet24",
"sourceHostname": "SourceHostName",
"sourcePort": "Ethernet11/1",
"destinationHostname": "DestinationHostName ",
"destinationPort": "24",
"identifier": "Ethernet11",
"interfaceType": "Ethernet",
"deviceDestinationResourceId": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxx/resourceGroups/ResourceGroupName/providers/Microsoft.ManagedNetworkFabric/networkDevices/ NFName-CompRack",
"speed in Gbps": "400",
"cableSpecification": {
"transceiverType": "400GBASE-AR8",
"transceiverSN": "XYL221911XXX",
"cableSubType": "AOC",
"modelType": "AOC-D-D-400G-10M",
"mediaType": "Straight"
},
"validationResult": [
{
"validationType": "CableValidation",
"status": "Compliant",
"validationDetails": {
"deviceConfiguration": "Device Configuration detail",
"error": null,
"reason": null
}
},
{
"validationType": "CableSpecificationValidation",
"status": "Compliant",
"validationDetails": {
"deviceConfiguration": "Speed: 400 ; MediaType : Straight",
"error": "",
"reason": null
}
}
]
Estados de validación
Tipo de estado | Definición |
---|---|
Compatible | El estado de validación es compatible con la especificación BOM de la interfaz. |
No conforme | La validación no es compatible con la especificación BOM de la interfaz. |
Unknown | La validación no puede recuperar los detalles de conexión de la interfaz o no se devuelven los datos de lldp. El estado Unknown se devuelve si el dispositivo de destino está apagado, ausente, desconectado o no admitido para este tipo de interfaz. |
Atributos de validación
Attribute | Definición |
---|---|
deviceConfiguration |
Configuración que está disponible en el dispositivo. |
error |
Error del dispositivo. |
reason |
Este campo se rellena cuando se desconoce el estado del dispositivo. |
validationType |
Este parámetro indica qué tipo de validación. (validaciones de especificaciones de cable y cable). |
deviceDestinationResourceId |
Identificador de Azure Resource Manager del vecino conectado (dispositivo de destino). |
roleName |
El rol del dispositivo de Tejido de red (CE o TOR). |
Problemas conocidos y limitaciones en la validación de cables
- No se admite la validación de cables de conexiones entre TOR y servidores de proceso que están apagados o no aprovisionados en el clúster Nexus. Estas interfaces muestran
Unknown
estado en el informe. - No se admite la validación de cables de conexiones entre interfaces MGMT y servidores de proceso que están apagados o no aprovisionados en el clúster Nexus o controladores de servidor de proceso. Estas interfaces muestran
Unknown
estado en el informe. - No se admite la validación de cables para NPB para
loopback
ynni-direct
interfaces porque actualmente no hay compatibilidad con el proveedor parashow lldp neighbors
. Estas interfaces muestranUnknown
estado en el informe. - La dirección URL de almacenamiento debe estar en una región diferente de Network Fabric. Por ejemplo, si fabric se hospeda en Este de EE. UU., la dirección URL de almacenamiento debe estar fuera del Este de EE. UU.
- La validación de cables admite cuatro bastidores con 16 procesos por bastidor y ocho bastidores con 16 procesos por BOM de bastidor.
- Cuando el dispositivo de destino está apagado, faltan cables o se desconectan, o si no se admite la validación para el tipo de interfaz, la interfaz muestra
Unknown
estado. Es importante evaluar todas las interfacesUnknown
que estánNot-Connected
en la lista de materiales para determinar si se requiere una acción de reparación.
Problemas típicos de validación de cables NonCompliant
y Unknown
validationType | Estado | Error | Solución |
---|---|---|---|
CableValidation | NonCompliant |
Device cable connection is incorrect. |
Compruebe que las conexiones de las interfaces de origen y destino coincidan con la BOM. El deviceConfiguration puede ayudar a identificar la fecha de puerto de destino devuelta en la interfaz. |
CableValidation | Unknown |
Unable to fetch data from the device. |
Compruebe que las conexiones en las interfaces de origen y destino estén conectadas y coincidan con la BOM |
CableValidation | NonCompliant |
Device cabling in <INTERFACE> incorrect. |
La interfaz no está conectada. Compruebe que las conexiones en las interfaces de origen y destino están conectadas coinciden con la BOM. |
CableValidation | Unknown |
Port <INTERFACE> has no connections as per device response. |
Compruebe que las conexiones en las interfaces de origen y destino están conectadas y coincidan con la BOM. |
CableSpecificationValidation | Unknown |
Unable to fetch Interface Status for <INTERFACE>. |
Compruebe que las conexiones en las interfaces de origen y destino están conectadas y coincidan con la BOM. |
CableSpecificationValidation | NonCompliant |
Device cable connection is incorrect |
Compruebe que la tarjeta de interfaz y los cables coinciden con la especificación BOM en esta interfaz. |
Convertir el informe de validación de cables en formato HTML
Consulte Cómo convertir la salida JSON del informe de validación de cables en html.