
Kubernetes Operador es una extensión de software específica de la aplicación que automatiza la gestión de aplicaciones y las tareas operativas en Kubernetes. Kubernetes es la plataforma estándar de la industria de código abierto para implementar, administrar y escalar aplicaciones en contenedores, y las aplicaciones en Kubernetes son más fáciles para los operadores.
Los operadores programan el conocimiento, la sabiduría y la experiencia de los equipos de operaciones del mundo real en computadoras para ayudar a operar aplicaciones de servidor complejas, como bases de datos, sistemas de mensajería o aplicaciones web. Operador proporciona una implementación para una aplicación de operador que se puede probar y, por lo tanto, es más confiable en tiempo de ejecución.
Si bien los operadores son igualmente aplicables a aplicaciones y operaciones de infraestructura en otras plataformas, hoy en día están asociados principalmente con Kubernetes. Kubernetes proporciona muchas capacidades de operaciones de aplicaciones listas para usar, incluidas tareas operativas como escalar, actualizar o configurar aplicaciones. Sin embargo, estas tareas se vuelven complejas y repetitivas, especialmente para aplicaciones con estado, como servidores de bases de datos. Los operadores de Kubernetes amplían las capacidades de la plataforma Kubernetes mediante la automatización para cubrir todos los comandos y tareas complejos y repetitivos.
¿Por qué son importantes los operadores de Kubernetes?
La TI actual puede optar por ejecutar aplicaciones internamente u obtener servicios administrados de un proveedor de nube pública. Los usuarios esperan al menos el mismo nivel de servicio de estos proveedores para las aplicaciones alojadas y operadas internamente. Por lo tanto, los ingenieros de confiabilidad del sitio y los equipos de DevOps utilizan Kubernetes Operador para alcanzar los niveles de rendimiento y confiabilidad de los proveedores de nube pública. Para ellos, los operadores son populares porque automatizan tareas repetitivas y ayudan a reducir la complejidad de las operaciones en la poderosa pero compleja plataforma Kubernetes.
Lea nuestro documento técnico: Guía del operador de Kubernetes
¿Cómo funcionan los operadores de Kubernetes?
Un concepto básico es que para cada aplicación existe un operador que cubre todo lo que hay que saber sobre esa aplicación en varios casos de uso. El concepto de operador consiste en un controlador que monitorea el estado de la aplicación. Además, los operadores realizan tareas operativas específicas de la aplicación y las ejecutan en función de eventos o comandos definidos por el usuario. Si es necesario, los operadores pueden interactuar con la plataforma Kubernetes para controlar los recursos de las aplicaciones implementadas según sea necesario. Para obtener una explicación más detallada de los conceptos del operador de Kubernetes, consulte nuestra serie reciente sobre Patrones de diseño de operadores de software.
¿El operador de Kubernetes es de código abierto?
Sí, por ejemplo, muchos operadores de Kubernetes son de código abierto. Operadores para el popular servidor de bases de datos PostgreSQLo Operadores de la plataforma de streaming de eventos Kafka.Se pueden contratar diferentes operadores para la gestión. Una combinación de aplicaciones, como formar una pila de observabilidad., incluidos Grafana y Prometeo.Marketplace proporciona una ubicación central en la red para encontrar todos los operadores relevantes que forman parte del ecosistema; para estos ejemplos, Marketplace es Charmhub.io.
Para los operadores, ha surgido otro tipo de software que también puede ser de código abierto: motores de orquestación que respaldan la implementación, la integración y la gestión del ciclo de vida de las aplicaciones que utilizan los operadores. El motor también proporciona una interfaz para interactuar con uno o más operadores a través de la CLI, la API, el uso de bibliotecas de cliente o un panel de control basado en web. Además, los motores de orquestación suelen proporcionar una capa de abstracción que cubre las capas subyacentes de diferentes implementaciones, como múltiples clústeres de Kubernetes ubicados en nubes públicas y privadas.vestido Software de código abierto Juju es un ejemplo de un motor de orquestación para operadores de Kubernetes.
¿Cómo crear tu propio operador de Kubernetes?
La mejor manera de crear un operador de Kubernetes es utilizar un marco. El marco proporciona elementos comunes, maduros y probados para cada operador. La reutilización de estos marcos acelera el desarrollo y permite implementaciones más confiables. Además, el marco puede incluir software de tiempo de ejecución que gestiona el ciclo de vida del operador. Para elegir el marco adecuado, considere los siguientes factores:
- Los marcos de código abierto suelen contar con el apoyo de grandes comunidades. Las contribuciones de la comunidad pueden mejorar el marco y atraer nuevos operadores al ecosistema.
- Algunos proveedores de nube pública también ofrecen soluciones para operadores de edificios, pero no todos ofrecen tiempos de ejecución administrados separados para instalaciones locales de Kubernetes que utilizan la misma tecnología.
- Un sitio web central de operadores de Kubernetes disponibles es beneficioso para la comunidad y ayuda a encontrar los operadores adecuados en un solo lugar.
- La mayoría de los marcos admiten Kubernetes y aplicaciones en contenedores; solo unos pocos también cubren máquinas virtuales para la integración entre aplicaciones nativas de la nube y cargas de trabajo heredadas.
- Cuando se trata de la popularidad y los posibles contribuyentes de escribir más operadores de Kubernetes, el lenguaje de programación del marco juega un papel clave. La mayoría de los marcos se implementan en Go o Python. Python es popular y conocido entre ingenieros y administradores de TI.
Cree fácilmente el operador Kubernetes utilizando Charm SDK y Juju
La experiencia de Canonical en la construcción de nubes privadas y la ejecución de aplicaciones alojadas durante los últimos años ha proporcionado a los operadores un completo conjunto de herramientas de desarrollo de software: el Charm SDK. Charm SDK incluye el marco y las herramientas para crear, empaquetar y probar operadores de Kubernetes. Además, Canonical ofrece Juju, un motor de orquestación de código abierto para operadores de Kubernetes que permite la implementación, integración y gestión del ciclo de vida de aplicaciones a cualquier escala.
Obtenga más información sobre los operadores de Kubernetes
Hay mucho que explorar sobre Juju y Charm SDK; consulte los recursos vinculados a continuación. También puede consultar las demostraciones de nuestros eventos recientes del Día del Operador para aprender cómo crear operadores y ver ejemplos de operadores de aplicaciones populares de código abierto.
¿Más preguntas sobre operadores, Juju y encanto?
Contactar con Canon
(fotógrafo Shivani Bandaru existir No salpicado)