Cómo instalar SSM Agent en nodos de Linux híbridos
En este tema se describe cómo instalar AWS Systems Manager SSM Agent en máquinas Linux que no son EC2 (Amazon Elastic Compute Cloud) en un entorno híbrido y multinube. Si tiene previsto utilizar máquinas Windows Server en un entorno híbrido y multinube, consulte el siguiente paso, Cómo instalar SSM Agent en nodos de Windows híbridos.
importante
Este procedimiento se refiere a tipos de máquinas distintos de las instancias de EC2 para un entorno híbrido y multinube. Para descargar e instalar el SSM Agent en una instancia de EC2 para Linux, consulte Instalación y desinstalación manual de SSM Agent en instancias de EC2 para Linux.
Antes de comenzar, localice el código y el ID de activación que le enviamos después de completar la activación híbrida antes en Creación de una activación híbrida para registrar nodos con Systems Manager. Deberá especificar el código y el ID en el siguiente procedimiento.
region
representa el identificador de Región de AWS compatible con AWS Systems Manager, como us-east-2
para la región EE. UU. Este (Ohio). Para ver una lista de los valores de regiones
admitidos, consulte la columna Región en Puntos de conexión de servicio de Systems Manager en la Referencia general de Amazon Web Services.
Por ejemplo, para descargar SSM Agent para Amazon Linux, RHEL, CentOS y SLES de 64 bits desde la región Este de EE. UU. (Ohio) (us-east-2), utilice la siguiente URL:
https://s3.us-east-2.amazonaws.com/amazon-ssm-us-east-2/latest/linux_amd64/amazon-ssm-agent.rpm
Instalación de SSM Agent en máquinas que no son EC2 en un entorno híbrido y multinube
-
Inicie sesión en un servidor o una máquina virtual del entorno híbrido y multinube.
-
Si utiliza un proxy HTTP o HTTPS, debe establecer las variables de entorno
http_proxy
ohttps_proxy
en la sesión de shell actual. Si no utiliza un proxy, puede omitir este paso.Ingrese los siguientes comandos en la línea de comandos en el caso de un servidor proxy HTTP:
export http_proxy=http://
hostname
:port
export https_proxy=http://hostname
:port
Ingrese los siguientes comandos en la línea de comandos en el caso de un servidor proxy HTTPS:
export http_proxy=http://
hostname
:port
export https_proxy=https://hostname
:port
-
Copie y pegue uno de los siguientes bloques de comandos en SSH. Sustituya los valores de marcador por el código y el ID de activación que se generan cuando crea una activación de nodo administrado y por el identificador de la Región de AWS de la que desea descargar SSM Agent, y luego presione
Enter
.nota
Tenga en cuenta los siguientes detalles importantes:
-
sudo
no es necesario si es un usuario raíz. -
Descarga
ssm-setup-cli
desde Región de AWS en el mismo lugar donde se creó la activación híbrida. -
ssm-setup-cli
admite una opciónmanifest-url
que determina la fuente desde la que se descarga el agente. No especifique un valor para esta opción a menos que la organización lo requiera. -
Utilice únicamente el enlace de descarga proporcionado para
ssm-setup-cli
cuando registre instancias. No debe almacenarssm-setup-cli
por separado para su uso futuro. -
Puede utilizar el script que se proporciona aquí
para validar la firma de ssm-setup-cli
.
region
representa el identificador de Región de AWS compatible con AWS Systems Manager, comous-east-2
para la región EE. UU. Este (Ohio). Para ver una lista de los valores deregiones
admitidos, consulte la columna Región en Puntos de conexión de servicio de Systems Manager en la Referencia general de Amazon Web Services.Además,
ssm-setup-cli
incluye las siguientes opciones:-
version
: los valores válidos sonlatest
ystable
. -
downgrade
: permite el cambio del SSM Agent a una versión anterior. Especifiquetrue
si desea instalar una versión anterior del agente. -
skip-signature-validation
: omite la validación de la firma durante la descarga e instalación del agente.
-
mkdir /tmp/ssm curl https://s3.amazonaws.com/ec2-downloads-windows/SSMAgent/3.0.1479.0/linux_amd64/amazon-ssm-agent.rpm -o /tmp/ssm/amazon-ssm-agent.rpm sudo yum install -y /tmp/ssm/amazon-ssm-agent.rpm sudo stop amazon-ssm-agent sudo -E amazon-ssm-agent -register -code "
activation-code
" -id "activation-id
" -region "region
" sudo start amazon-ssm-agent
mkdir /tmp/ssm curl https://amazon-ssm-
region
.s3.region
.amazonaws.com/latest/linux_amd64/ssm-setup-cli -o /tmp/ssm/ssm-setup-cli sudo chmod +x /tmp/ssm/ssm-setup-cli sudo /tmp/ssm/ssm-setup-cli -register -activation-code "activation-code
" -id "activation-id
" -region "region
"
mkdir /tmp/ssm curl https://amazon-ssm-
region
.s3.region
.amazonaws.com/latest/linux_amd64/ssm-setup-cli -o /tmp/ssm/ssm-setup-cli sudo chmod +x /tmp/ssm/ssm-setup-cli sudo /tmp/ssm/ssm-setup-cli -register -activation-code "activation-code
" -activation-id "activation-id
" -region "region
"
mkdir /tmp/ssm curl https://amazon-ssm-
region
.s3.region
.amazonaws.com/latest/linux_amd64/ssm-setup-cli -o /tmp/ssm/ssm-setup-cli sudo chmod +x /tmp/ssm/ssm-setup-cli sudo /tmp/ssm/ssm-setup-cli -register -activation-code "activation-code
" -activation-id "activation-id
" -region "region
"
mkdir /tmp/ssm curl https://amazon-ssm-
region
.s3.region
.amazonaws.com/latest/debian_amd64/ssm-setup-cli -o /tmp/ssm/ssm-setup-cli sudo chmod +x /tmp/ssm/ssm-setup-cli sudo /tmp/ssm/ssm-setup-cli -register -activation-code "activation-code
" -activation-id "activation-id
" -region "region
"
mkdir /tmp/ssm curl https://amazon-ssm-
region
.s3.region
.amazonaws.com/latest/debian_arm/ssm-setup-cli -o /tmp/ssm/ssm-setup-cli sudo chmod +x /tmp/ssm/ssm-setup-cli sudo /tmp/ssm/ssm-setup-cli -register -activation-code "activation-code
" -activation-id "activation-id
" -region "region
"
-
Uso de paquetes .deb
mkdir /tmp/ssm curl https://amazon-ssm-
region
.s3.region
.amazonaws.com/latest/debian_amd64/ssm-setup-cli -o /tmp/ssm/ssm-setup-cli sudo chmod +x /tmp/ssm/ssm-setup-cli sudo /tmp/ssm/ssm-setup-cli -register -activation-code "activation-code
" -activation-id "activation-id
" -region "region
" -
Uso de paquetes Snap
No es necesario especificar una URL para la descarga, ya que el comando
snap
descarga automáticamente el agente en la tienda de aplicaciones de Snapen https://snapcraft.io . En Ubuntu Server 20.10 STR y 20.04, 18.04 y 16.04 LTS, los archivos del instalador de SSM Agent, incluidos los archivos binarios y de configuración del agente, se almacenan en el siguiente directorio:
/snap/amazon-ssm-agent/current/
. Si realiza cambios en cualquiera de los archivos de configuración de este directorio, debe copiar estos archivos desde el directorio/snap
al directorio/etc/amazon/ssm/
. Los archivos de registros y bibliotecas no han cambiado (/var/lib/amazon/ssm
,/var/log/amazon/ssm
).sudo snap install amazon-ssm-agent --classic sudo systemctl stop snap.amazon-ssm-agent.amazon-ssm-agent.service sudo /snap/amazon-ssm-agent/current/amazon-ssm-agent -register -code "
activation-code
" -id "activation-id
" -region "region
" sudo systemctl start snap.amazon-ssm-agent.amazon-ssm-agent.serviceimportante
El canal candidato en el almacén de Snap contiene la versión más reciente de SSM Agent; no el canal estable. Si desea realizar un seguimiento de información de la versión de SSM Agent en el canal candidato, ejecute el siguiente comando en los nodos administrados de 64 bits de Ubuntu Server 18.04 y 16.04 LTS.
sudo snap switch --channel=candidate amazon-ssm-agent
El comando se descarga e instala SSM Agent en la máquina activada de manera híbrida en su entorno híbrido y multinube. El comando detiene SSM Agent y, a continuación, registra la máquina virtual en el servicio de Systems Manager. El equipo ahora es un nodo administrado. Las instancias de Amazon EC2 configuradas para Systems Manager también son nodos administrados. Sin embargo, en la consola de Systems Manager, sus nodos activados de manera híbrida se distinguen de las instancias de Amazon EC2 con el prefijo “mi-”.
Siga en Cómo instalar SSM Agent en nodos de Windows híbridos.
Configuración de la rotación automática de clave privada
Para reforzar su posición de seguridad, puede configurar AWS Systems Manager Agent (SSM Agent) para rotar automáticamente la clave privada del entorno híbrido y multinube. Puede acceder a esta característica mediante la versión 3.0.1031.0 o posterior de SSM Agent. Active esta característica siguiendo el procedimiento que se describe a continuación.
Para configurar SSM Agent para rotar la clave privada del entorno híbrido y multinube
-
Vaya a
/etc/amazon/ssm/
en un equipo Linux o aC:\Program Files\Amazon\SSM
para un equipo Windows. -
Copie los contenidos de
amazon-ssm-agent.json.template
en un archivo nuevo denominadoamazon-ssm-agent.json
. Guardeamazon-ssm-agent.json
en el mismo directorio donde se encuentraamazon-ssm-agent.json.template
. -
Encuentre
Profile
,KeyAutoRotateDays
. Ingrese el número de días que desea entre las rotaciones automáticas de clave privada. -
Reinicie SSM Agent.
Cada vez que cambie la configuración, reinicie SSM Agent.
Puede personalizar otras características de SSM Agent mediante el mismo procedimiento. Para ver la lista actualizada de las propiedades de configuración disponibles y sus valores predeterminados, consulte Definiciones de propiedades de configuración
Anulación del registro y nuevo registro de un nodo administrado
Puede anular el registro de un nodo administrado activado de manera híbrida mediante una llamada a la operación de la API DeregisterManagedInstance desde la AWS CLI o desde Herramientas para Windows PowerShell. A continuación, se muestra un ejemplo de comando de la CLI:
aws ssm deregister-managed-instance --instance-id
"mi-1234567890"
Para eliminar el resto de la información de registro del agente, elimine la clave IdentityConsumptionOrder
del archivo amazon-ssm-agent.json
. A continuación, ejecute el siguiente comando:
amazon-ssm-agent -register -clear
Puede volver a registrar una máquina después de anular el registro. Utilice el siguiente procedimiento para volver a registrar una máquina. Después de completar el procedimiento, el nodo administrado se muestra de nuevo en la lista de nodos administrados.
Para volver a registrar un nodo administrado en una máquina que no es de EC2 Linux
-
Conéctese a su máquina.
-
Ejecute el siguiente comando de la . Asegúrese de sustituir los valores de marcador por el código y el ID de activación que se generan cuando crea una activación de nodo administrado y por el identificador de la región de la que desea descargar el SSM Agent.
echo "yes" | sudo /tmp/ssm/ssm-setup-cli -register -activation-code "
activation-code
" -activation-id "activation-id
" -region "region
Solución de problemas de instalación de SSM Agent en máquinas Linux que no son de EC2
Utilice la siguiente información como ayuda para solucionar problemas de instalación de SSM Agent en máquinas Linux activadas de manera híbrida en un entorno híbrido y multinube.
Recibe el error DeliveryTimedOut
Problema: cuando se configura una máquina en una Cuenta de AWS como un nodo administrado para una Cuenta de AWS separada, recibe DeliveryTimedOut
después de ejecutar los comandos para instalar SSM Agent en la máquina de destino.
Solución: DeliveryTimedOut
es el código de respuesta esperado para este escenario. El comando para instalar SSM Agent en el nodo de destino cambia el ID de nodo del nodo de origen. Debido a que el ID de nodo ha cambiado, el nodo de origen no puede responder al nodo de destino que el comando falló, se completó o agotó el tiempo de espera durante la ejecución.
No se pueden cargar las asociaciones de nodos
Problema: después de ejecutar los comandos de instalación, verá el siguiente error en los registros de errores de SSM Agent:
Unable to load instance associations, unable to retrieve associations
unable to retrieve associations error occurred in
RequestManagedInstanceRoleToken: MachineFingerprintDoesNotMatch: Fingerprint
doesn't match
Se muestra este error cuando el ID del equipo no persiste después de su reinicio.
Solución: para solucionar este problema, ejecute el siguiente comando. Este comando obliga a que el ID del equipo persista después de su reinicio.
umount /etc/machine-id systemd-machine-id-setup