Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 

Arquitectura de Contrail Kubernetes

 

Después de buscar los principales conceptos de Kubernetes en los capítulos 2 y 3, ¿cuál podría ser la ventaja de agregar Contrail a la implementación estándar de Kubernetes?

En Resumen, consulte las páginas de productos de Contrail en www.Juniper.net para obtener las últimas ofertas, contrail ofrece una implementación común de varios entornos (OpenStack, Kubernetes, etc.) y enriquece las capacidades’ Kubernetes de redes y seguridad.

Cuando se trata de implementar para varios entornos, sí, los contenedores son la tendencia actual en la creación de aplicaciones (no para mencionar el enfoque anidado, en el que los contenedores se hospedan en la VM). ’Pero no esperemos que todos migren de máquinas virtuales a contenedores que sean rápidos. Agregue una carga de trabajo, total o parcialmente, en la nube pública, y podrá ver los Misery de los administradores de seguridad y de red donde los Kubernetes se convierta en algo más que administrar.

Los administradores de muchas organizaciones administran los gerentes o administradores individuales de cada entorno. OpenStack o VMware NSX para VMS, Kubernetes o mesos para los contenedores, la consola de AWS. WContrail alivia este Misery al proporcionar un control y una política de redes de extremo a extremo dinámicos para cualquier nube, cualquier carga de trabajo, cualquier implementación.

Desde una sola interfaz de usuario Contrail traduce flujos de trabajo abstractos en políticas específicas y simplifica la orquestación de la conectividad de superposición virtual en todos los entornos. Esto lo hace mediante la creación y protección de redes virtuales que conectan BMS, VM y contenedores ubicados en una nube privada o pública.

Puede implementar Kubernetes para iniciar su Pod en máquinas virtuales orquestadas por OpenStack y otras, pero este capítulo solo se centra en Kubernetes. Muchas de las características que se tratan aquí se pueden ampliar para otros entornos, pero Contrail simplemente enriquece la implementación estándar de Kubernetes.

Aunque Kubernetes no proporciona las funciones de red, impone los requisitos fundamentales de la implementación de la red, que se abordan mediante todos los proveedores CNI (interfaz de red contenedora). Juniper Contrail es uno de los proveedores CNI. Consulte: https://kubernetes.IO/docs/Concepts/Cluster-Administration/Networking/ para obtener más información.

Kubernetes tiene algunos requisitos bien definidos para su implementación de red:

  • Los pods de un nodo pueden comunicarse con todos los pods en todos los nodos sin TDR,

  • Los agentes de un nodo (p. ej., daemons de sistema, kubelet) se pueden comunicar con todos los pods de ese nodo, y

  • Los pods de la red de host de un nodo pueden comunicarse con todos los pods en todos los nodos sin TDR.

Kubernetes ofrece conectividad de red plana con algunas características de seguridad delimitadas en un clúster, pero por encima de esto, Contrail puede ofrecer:

  • Namespaces y servicios se han personalizado los aislamientos de segmentaciones y multiinquilinos,

  • Balanceo de cargas distribuido y firewall con un flujo centralizado y un amplio conocimiento de logs.

  • Una política de seguridad enriquecida que utiliza etiquetas que se pueden extender a otros entornos (stack abierto, VMWare, BMS, AWS, etc.), y

  • Encadenamiento de servicios.

En este capítulo se tratan algunas de estas funciones, pero’primero hay que hablar acerca de contrail arquitectura y la asignación de objetos.

Kube-administrador de Contrail

Se ha agregado un nuevo módulo de Contrail llamado contrail-kube-manager, abreviada como KM. Busca en el servidor de API Kubernetes los recursos de Kubernetes interesados y los traduce en un objeto de controlador de Contrail. La Figure 1 ilustra el flujo de trabajo básico.

Figure 1: Arquitectura Kubernetes Contrail
Arquitectura Kubernetes Contrail

Asignación de Kubernetes a objeto Contrail

Esto no es una gran parte del cambio de Contrail habituales que conocemos y encanta, pero hay’muchas cosas que ocurren en segundo plano. Tenga en cuenta que trabajar con Kubernetes/Contrail se trata de la asignación de objetos. Ya’que la contrail es una sola interfaz que administra varios entornos, y cada entorno tiene sus propios acrónimos y términos y, por lo tanto, la necesidad de esta asignación, que es realizada por un complemento. En Kubernetes, contrail-kube-manager hace esto.

Note

Juniper Contrail tiene complementos específicos para cada entorno/Orchestrator. Para obtener más información, consulte Juniper Contrail, en https://www.Juniper.net/US/en/Products-Services/Sdn/contrail/, en inglés).

Por ejemplo, los espacios de nombres de Kubernetes están pensados para la segmentación entre varios equipos o proyectos, como si se estuvieran creando clústeres virtuales. En Contrail el concepto similar se denomina proyecto , de modo que cuando cree un espacio de nombres en Kubernetes, se creará automáticamente un proyecto equivalente en contrail. Más adelante se describirá todo esto, pero para familiarizarse con la lista de objetos que se muestra en la Figure 2 lo ayudará a comprender la arquitectura.

Figure 2: Asignación de objeto Contrail Kubernetes
Asignación de objeto Contrail Kubernetes