¿Por qué ocurre un pánico ocasionalmente cuando uso políticas de red en un nodo de clúster?
Escenario
Versión del clúster: v1.15.6-r1
Tipo de clúster: clúster de CCE
Modelo de red: red de túneles de contenedores
Sistema operativo del nodo: CentOS 7.6
Después de configurar una política de red para el clúster, el componente de red canal-agent en el nodo es incompatible con el núcleo de CentOS 7.6. Como resultado, puede producirse un pánico en el núcleo.
Condiciones
Si no se cumple alguna de las siguientes condiciones, este problema no se producirá:
- La versión del clúster es v1.15.6-r1 y se utiliza el modelo de red de túnel de contenedor.
- El nodo de CentOS 7.6 utiliza el componente canal-agent cuya versión es 1.0.RC10.1230.B005 o anterior. (Los nodos de CentOS 7.6 creados en o antes del 23 de febrero de 2021 usan dicho componente.)
- Tiene previsto utilizar o ha utilizado políticas de red.
Localización de fallas
Localización rápida (para nodos de pago por uso)
Compruebe si su nodo de CentOS 7.6 se creó después del 24 de febrero de 2021 en la consola de CCE.
Localización precisa (General)
Si la versión del clúster es v1.15.6-r1, el modelo de red es red de túnel de contenedor, el sistema operativo del nodo es CentOS 7.6, y la versión del componente del canal-agent es 1.0.RC10.1230.B005.sp1 o posterior, el problema no ocurrirá. Si se utiliza una versión anterior (por ejemplo, 1.0.RC10.1230.B002), se recomienda restablecer o eliminar el nodo antes de configurar las políticas de red.
Realice los siguientes pasos para consultar la versión del componente de red en el nodo:
- Prepare un nodo donde se pueda usar kubectl.
- Ejecute el siguiente comando para consultar la lista de nodos de CentOS:
for node_item in $(kubectl get nodes --no-headers | awk '{print $1}') ; do kubectl get node ${node_item} -o yaml | grep CentOS >/dev/null; if [[ "$?" == "0" ]];then echo "${node_item} is CentOS node";fi;done
La salida de comandos es la siguiente:
- Suponga que la dirección IP del nodo CentOS de destino es 10.0.50.187. Ejecute el siguiente comando para comprobar la versión canal-agent:
kubectl get packageversions.version.cce.io 10.0.50.187 -o yaml | grep -A 1 canal-agent
La salida de comandos es la siguiente:
Solución
Si aún desea utilizar el nodo, restablezca los nodos de CentOS 7.6 en el clúster para actualizar los componentes de red a la versión más reciente. Para obtener más información, consulte Restablecimiento de un nodo.
Si desea eliminar el nodo riesgoso y comprar uno nuevo, consulte Eliminar un nodo y Comprar un nodo.
Network Fault Preguntas frecuentes
- ¿Cómo se localiza una falla de red de carga de trabajo?
- ¿Por qué no se puede utilizar la dirección ELB para acceder a las cargas de trabajo en un clúster?
- ¿Por qué no se puede acceder al ingreso fuera del clúster?
- ¿Por qué el navegador devuelve el código de error 404 cuando accedo a una aplicación desplegada?
- ¿Qué debo hacer si un contenedor no se conecta a Internet?
- ¿Qué puedo hacer si no se puede eliminar una subred de VPC?
- ¿Cómo puedo restaurar una NIC de contenedor defectuosa?
- ¿Qué debo hacer si un nodo no se conecta a Internet (red pública)?
- ¿Cómo resuelvo un conflicto entre el bloque CIDR de VPC y el bloque CIDR de contenedores?
- ¿Qué debo hacer si se reporta el error de Java "Connection reset by peer" durante la comprobación de estado de la capa 4 de ELB?
- ¿Cómo localizo el evento de servicio que indica que ningún nodo está disponible para el enlace?
- ¿Por qué se produce el "Dead loop on virtual device gw_11cbf51a, fix it urgently" cuando inicio sesión en una máquina virtual usando VNC?
- ¿Por qué ocurre un pánico ocasionalmente cuando uso políticas de red en un nodo de clúster?
- ¿Por qué se generan muchos logs de origen ip_type en el VNC?
Comentarios
¿Le pareció útil esta página?
Deje algún comentariomore