Añadir nodos para que los administre el nodo maestro de Puppet - AWS OpsWorks

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Añadir nodos para que los administre el nodo maestro de Puppet

importante

El AWS OpsWorks for Puppet Enterprise servicio llegó al final de su vida útil el 31 de marzo de 2024 y se ha desactivado tanto para los clientes nuevos como para los existentes. Recomendamos encarecidamente a los clientes que migren sus cargas de trabajo a otras soluciones lo antes posible. Si tienes preguntas sobre la migración, ponte en contacto con el AWS Support equipo en AWS Re:post o a través de Premium AWS Support.

La forma recomendada de añadir nodos es mediante la AWS OpsWorks associateNode() API. El servidor maestro Puppet Enterprise alberga un repositorio que puede utilizar para instalar el software del agente de Puppet en los nodos que desea administrar, tantos si estos están en máquinas virtuales como en equipos físicos locales. El software agente de Puppet para algunos sistemas operativos se instala en el OpsWorks servidor de Puppet Enterprise como parte del proceso de lanzamiento. En la siguiente tabla se muestran los agentes del sistema operativo que están disponibles en el servidor OpsWorks de Puppet Enterprise en el momento del lanzamiento.

Agentes de sistema operativo preinstalados
Sistemas operativos compatible Versiones
Ubuntu 16.04, 18.04, 20.04
Red Hat Enterprise Linux (RHEL) 6, 7, 8
Windows Ediciones de 64 bits de todas las versiones de Windows con soporte para Puppet

Puede añadir puppet-agent a su servidor para otros sistemas operativos. Tenga en cuenta que el mantenimiento del sistema eliminará agentes que haya añadido a su servidor después del lanzamiento. Aunque la mayoría de los nodos adjuntos existentes que ya están ejecutando el agente eliminado siguen comprobando, los nodos que ejecutan sistemas operativos Debian pueden dejar de notificar. Se recomienda realizar la instalación manualmente puppet-agent en los nodos que ejecuten sistemas operativos para los que el software del agente no esté preinstalado en el servidor OpsWorks de Puppet Enterprise. Para obtener información detallada acerca de cómo hacer que puppet-agent esté disponible en su servidor para nodos con otros sistemas operativos, consulte Installing agents en la documentación de Puppet Enterprise.

Para obtener información sobre cómo asociar nodos a su nodo maestro de Puppet rellenando automáticamente los datos de usuario de instancias de EC2, consulte Añadir nodos automáticamente en OpsWorks Puppet Enterprise.

Ejecute llamadas al API associateNode()

Tras añadir nodos mediante la instalaciónpuppet-agent, los nodos envían las solicitudes de firma de certificados (CSR) al servidor de Puppet OpsWorks Enterprise. Puede ver los CSR en la consola de Puppet; para obtener información adicional sobre los CSR de nodos, consulte Managing certificate signing requests en la documentación de Puppet Enterprise. Al ejecutar la OpsWorks llamada a la associateNode() API de Puppet Enterprise, se procesan las CSR de los nodos y se asocia el nodo al servidor. A continuación, se muestra un ejemplo de cómo utilizar esta llamada a la API AWS CLI para asociar un único nodo. Necesitará la CSR con formato PEM que envía el nodo; puede obtenerlos desde la consola de Puppet.

aws opsworks-cm associate-node --server-name "test-puppet-server" --node-name "node or instance ID" --engine-attributes "Name=PUPPET_NODE_CSR,Value='PEM_formatted_CSR_from_the_node'

Para obtener más información sobre cómo añadir nodos automáticamente utilizando associateNode(), consulte Añadir nodos automáticamente en OpsWorks Puppet Enterprise.

Consideraciones para la adición de nodos locales

Una vez que los hayas puppet-agent instalado en tus ordenadores o máquinas virtuales locales, puedes utilizar cualquiera de estas dos formas para asociar los nodos locales a tu OpsWorks servidor principal de Puppet Enterprise.

  • Si un nodo admite la instalación del SDK de AWS, la AWS CLI o AWS Tools for PowerShell, puede utilizar el método recomendado para asociar un nodo, que consiste en ejecutar una llamada a la API associateNode(). El kit de inicio que se descarga al crear un servidor maestro OpsWorks para Puppet Enterprise muestra cómo asignar funciones a los nodos mediante etiquetas. Puede aplicar etiquetas al mismo tiempo que asocia nodos al nodo maestro de Puppet especificando hechos de confianza en la CSR. Por ejemplo, el repositorio de control de demostración que incluye el kit de inicio está configurado para utilizar la etiqueta pp_role para asignar roles a instancias de Amazon EC2. Para obtener más información sobre cómo añadir etiquetas a una CSR como hechos de confianza, consulte Extension requests (permanent certificate data) en la documentación de la plataforma de Puppet.

  • Si el nodo no puede ejecutar herramientas AWS de gestión o desarrollo, puedes registrarlo en tu OpsWorks servidor principal de Puppet Enterprise del mismo modo que lo registrarías en cualquier servidor principal de Puppet Enterprise no gestionado. Como se ha mencionado en este tema, la instalación puppet-agent envía una CSR al servidor principal de Puppet OpsWorks Enterprise. Un usuario de Puppet autorizado puede firmar la CSR manualmente, o configurar la firma automática de las CSR editando el archivo autosign.conf almacenado en el nodo maestro de Puppet. Para obtener más información sobre cómo configurar la firma automática y editar el archivo autosign.conf, consulte SSL configuration: autosigning certificate requests en la documentación de la plataforma de Puppet.

Para asociar nodos locales con un maestro Puppet y permitir que acepte todas las CSR, haga lo siguiente en la consola de Puppet Enterprise. El parámetro que controla el comportamiento es puppet_enterprise::profile::master::allow_unauthenticated_ca.

importante

Por razones de seguridad, no se recomienda permitir que el maestro de Puppet acepte CSR autofirmadas o todas las CSR. De forma predeterminada, permitir CSR no autenticadas provoca que un maestro de Puppet esté accesible de forma pública. La configuración de la carga de peticiones de certificado para que se habiliten de forma predeterminada puede provocar que el maestro de Puppet sea vulnerable a ataques de denegación de servicio (DoS).

  1. Inicie sesión en la consola de Puppet Enterprise.

  2. Elija Configure (Configurar), Classification (Clasificación), PE Master (Maestro de PE) y la pestaña Configuration (Configuración).

  3. En la pestaña Classification (Clasificación) busque la clase puppet_enterprise::profile::master.

  4. Establezca el valor del parámetro allow_unauthenticated_ca en true (verdadero).

  5. Guarde los cambios. Los cambios se aplican durante la siguiente ejecución de Puppet. Puede esperar 30 minutos a que los cambios surtan efecto (y que se añadan los nodos locales), o puede iniciar una ejecución de Puppet manualmente en la sección Run (Ejecutar) de la consola de PE.

Más información

Visite el sitio de tutoriales de Learn Puppet para obtener más información sobre el uso OpsWorks de los servidores de Puppet Enterprise y las funciones de la consola de Puppet Enterprise.