
Recientemente recordé que cuando estaba en la escuela primaria, visité a un amigo en la casa de mi amigo. Una vez, su madre quiso que le pidiéramos prestados algunos huevos al vecino. Atravesamos algunas casas, abrimos la puerta del jardín, entramos por la puerta de la casa y llamamos a alguien en la cocina. Pero no había nadie en casa, así que nos fuimos y volvimos sin huevos.
Cierra tu puerta
Se siente extraño entrar en una casa donde no hay nadie en casa. Sin embargo, era normal no cerrar la puerta con llave en ese momento, y aún puede ser normal en algunas áreas hoy. Por el contrario, la mayoría de nosotros acepta cerrar todas las puertas cuando salimos. Normalmente sentimos la necesidad de cerrar la puerta con llave, en casa, al salir del coche o cuando somos los últimos en salir de la oficina.
Un amigo mío se quejó de las actualizaciones del software de la aplicación y señaló: «Imagínese que si los problemas de seguridad no son un problema, casi siempre podemos ejecutar nuestras máquinas en la configuración original». De hecho, en un mundo donde no existe ninguna amenaza para la seguridad, incluso si está instalado La máquina más antigua con software puede continuar ejecutándose una vez que esté configurada correctamente. Quizás en algún momento sean reemplazados por otras razones, como ahorrar energía o espacio en el servidor.
Las actualizaciones son un lugar común
Desafortunadamente, no vivimos en un mundo así. Y, aunque los ingenieros inventan y desarrollan nuevas funciones, las actualizaciones de software son necesarias para garantizar que nuestras puertas permanezcan correctamente cerradas.
Lo podemos ver en todas partes: los proveedores de software propietario proporcionan parches mensuales para sus sistemas operativos. Parece que un fabricante de automóviles eléctricos a veces actualiza el firmware de su automóvil varias veces al mes. (Los fanáticos tienen un sitio web para rastrear esto públicamente). Además, en el ecosistema de paquetes Debian, vemos que muchos paquetes tienen una frecuencia de actualización similar. La aplicación de estas actualizaciones suele ser necesaria, no solo para brindar nuevas funciones a los usuarios, sino también para que nuestras puertas se cierren correctamente.
Esto se aplica especialmente a las aplicaciones de servidor, porque el servidor permanece conectado a la red, por lo que cerrar la puerta es más importante que una computadora de escritorio o portátil.
Utilice el marco de Charmed Operator para simplificar las actualizaciones complejas
Una aplicación compleja generalmente consta de varios elementos; por ejemplo, una configuración común incluye un servidor web y un servidor de base de datos o una herramienta de registro. Para cada elemento de software independiente de la aplicación del servidor, Software de operador Cubre las tareas operativas necesarias, incluidas las actualizaciones. Si la rutina de actualización de cada elemento de la aplicación se implementa como software, como operador, la ventaja obvia es menos carga de trabajo total y más reutilización. Por ejemplo, siempre que se utilice un servidor web para la configuración de la aplicación, el mismo programa de actualización en Charmed Operator se asegurará de que se ejecute una actualización verificada y reutilizable.
Marco del operador: el canal para el lanzamiento y la actualización
Charmed Operator Framework define un modelo de control de versiones probado para actualizar el software del operador en sí. Una diferencia importante es actualizar la versión de Charmed Operator y sus aplicaciones administradas. Los desarrolladores de Charmed Operators necesitan actualizar la implementación de Charm de vez en cuando, por ejemplo, actualizaciones importantes de la aplicación.La herramienta utilizada para construir y actualizar se llama charmcraft
. Por supuesto, charmcraft
sí Ha sido instalado Como instantánea, realice una instalación rápida de Charmcraft-Classic.
Un elemento esencial del lanzamiento de las actualizaciones de Charmed Operators es que no se publicarán hasta que se publiquen en una agencia específica. canalEl canal es un concepto probado en la gestión de paquetes de instantáneas: el lanzamiento de Charmed Operator puede apuntar a canales. Por lo tanto, los usuarios que hayan implementado Charmed Operator desde un canal específico verán actualizaciones de ese canal, por lo que una versión estable del canal puede ser el objetivo de la automatización de la implementación. A través de esta estructura, la actualización de Charms se puede separar para diferentes casos de uso o usuarios. Los canales son triples con los siguientes elementos:
track/risk/branch
Donde track
Y las ramas pueden ser opcionales. Veamos brevemente estos tres elementos:
Esta risk
Los elementos pueden tener valores stable
, candidate
, beta
, o edge
. Hechizo desplegado de canales arriesgados. value
estable verá las actualizaciones del canal estable en consecuencia.
Esta risk
element ayuda a los desarrolladores a actualizar (candidatos) o liberar de forma segura y continua Charmed Operators a partir de compilaciones basadas en CI en el entorno de automatización de devops (edge).El desarrollador puede configurar track
Representa el valor de la versión del encanto y puede hacer referencia a la versión de la aplicación. Por último, si bien no menos importante, branch
Es un campo que representa una variante especial.
Por ejemplo, el comando
charmcraft release mycharm –channel=stable
Lanzará el encanto como la última versión estable. Esta estructura proporciona actualizaciones a Charmed Operators de una manera limpia y estructurada. Esto ayuda a mantener nuestras puertas cerradas.