solarwinds.uamsclient
Rol del Cliente UAMS de Ansible
El Rol del Cliente UAMS de Ansible instala y configura el Cliente UAMS.
Configuración
Requisitos
- Al usar con hosts de Windows, se requiere la colección ansible.windows. Instálala en el host controlador con el siguiente comando:
ansible-galaxy collection install ansible.windows
Instalación
Instala el rol Cliente UAMS desde Ansible Galaxy
ansible-galaxy install solarwinds.uamsclient
Para desplegar el Cliente UAMS en los hosts, agrega el token de acceso
, rol
y url swo
a tu libro de jugadas bajo la clave environment
. Los valores pueden estar codificados, pero se recomienda usar una variable para el token de acceso
y no exponerlo en texto claro.
Tienes la opción de establecer un proxy HTTPS mediante la variable de entorno UAMS_HTTPS_PROXY
. Simplemente define esta variable apuntando a tu proxy HTTPS deseado. Recuerda que la variable de entorno UAMS_HTTPS_PROXY
establece el proxy HTTPS solo para las conexiones establecidas por el Cliente UAMS y sus complementos. Para usar el proxy HTTPS durante la instalación, configura el proxy HTTPS en tu máquina para que ansible pueda utilizarlo.
environment:
UAMS_ACCESS_TOKEN: "TU_TOKEN_DE_ACCESO_SWO"
UAMS_METADATA: "ROL"
SWO_URL: "https://url-swo"
UAMS_HTTPS_PROXY: "https://tu-proxy" # opcional
UAMS_OVERRIDE_HOSTNAME: "nombre_personalizado" # opcional
Encuentra un ejemplo de libro de jugadas que usamos en pruebas CI.
Sobrescribir nombre de host
La variable de entorno opcional UAMS_OVERRIDE_HOSTNAME
se usa para establecer un nombre de Agente personalizado. Por defecto, el nombre del Agente se establece en el nombre de host.
Puedes asignar valor a esta variable usando variables del archivo de inventario. Ve el ejemplo a continuación.
# Archivo de inventario
[test_servers]
192.168.0.123 ansible_user=user override_hostname=servidor_web1
192.168.0.124 ansible_user=user override_hostname=servidor_web2
# Archivo de libro de jugadas
environment:
UAMS_OVERRIDE_HOSTNAME: "DEV_{{ override_hostname }}"
Desinstalación
Para desinstalar el Cliente UAMS en los hosts, agrega la etiqueta uninstall
al ejecutar un libro de jugadas.
Ejemplo:
ansible-playbook -i inventario playbook.yml --tags uninstall
Encuentra un ejemplo de libro de jugadas que usamos en pruebas CI.
Agregando el Complemento DBO al Cliente UAMS
Descripción
Este rol de Ansible instala y configura el complemento DBO para el Cliente UAMS. Para instalar el complemento DBO, necesitas ejecutar el siguiente comando:
ansible-playbook -i inventario playbook.yml --tags dbo
Esto ejecutará las tareas asociadas con la etiqueta dbo
, instalando y configurando el complemento DBO según lo especificado en tus archivos de inventario o variables.
Asegúrate de que tu inventario y/o secretos estén correctamente configurados antes de ejecutar el libro de jugadas.
Configuración
Para usar el complemento DBO, debes definir las variables necesarias en tu archivo de inventario o de secretos de Ansible. A continuación se muestra el formato para estas variables: Además, debes proporcionar un token con acceso completo para tener acceso a la API para instalar los complementos DBO.
uams_full_access_token: "<token_de_acceso_completo>"
dbo_plugin:
- databaseType: "mongo"
name: "mongodb profiler en dev-amd64-mu escuchando en 10.0.2.2:27018"
host: "10.0.2.2"
port: "27018"
user: "miUsuario"
password: "<contraseña>"
packetCaptureEnabled: false
metricsCaptureMethod: "profiler"
Maneras de Proveer Variables
- Archivo de Inventario: puedes definir la variable
dbo_plugin
yuams_full_access_token
directamente en tu archivo de inventario. - Variables de Grupo o de Host
- Ansible Vault
Para información sensible como contraseñas, se recomienda usar Ansible Vault para cifrar tus variables. Puedes crear un archivo cifrado para tus secretos:
Cifra este archivo usando el siguiente comando:
ansible-vault encrypt ruta/a/secrets.yml
Luego, haz referencia a él en tu libro de jugadas o archivo de inventario:
vars_files:
- ruta/a/secrets.yml
Variables del rol
Variable | Descripción |
---|---|
uams_local_pkg_path |
Sobrescribir la ubicación donde se almacena el paquete de instalación (predeterminado: /tmp/uams) |
uams_local_pkg_path_windows |
Sobrescribir la ubicación donde se almacena el paquete de instalación en Windows (predeterminado: valor de la variable de entorno TEMP) |
uams_remove_installer |
Si se debe eliminar el paquete de instalación (predeterminado: verdadero) |
AWX
El rol del Cliente UAMS también se puede usar en la configuración de AWX. Debe tener en cuenta lo siguiente:
- AWX debe estar configurado para descargar roles de Ansible Galaxy. En este momento (con AWX 0.30.0) debe habilitarse en Configuración > Trabajos (
Habilitar descarga de roles
) y también se deben configurar las credenciales de Ansible Galaxy a nivel deorganización
. El archivoroles/requirements.yml
debe estar presente en el repositorio del proyecto y contener el rol requerido (ejemplo a continuación). - Los valores para las variables que representan el
token de acceso
,rol
yurl swo
deben proporcionarse desde la interfaz de AWX. - El libro de jugadas debe contener un valor
hosts:
que coincida con el grupo de hosts (o host individual) definido en el inventario de AWX. El libro de jugadas no estará disponible en AWX para la creación deplantillas de trabajo
si no se proporciona el valor apropiado. - Configurar
Escalación de privilegios
enplantilla de trabajo
podría causar fallos en las tareas delegadas a localhost debido a la falta del comandosudo
en el contenedor de ejecución.
Ejemplos para la configuración de AWX
Libro de Jugadas
---
- name: Instalar cliente UAMS
# Grupo de hosts existente del inventario
hosts: uams-hosts
environment:
UAMS_ACCESS_TOKEN: "{{ uams_access_token }}"
UAMS_METADATA: "{{ uams_metadata }}"
SWO_URL: "{{ swo_url }}"
roles:
- role: solarwinds.uamsclient
roles/requirements.yml
Si se omite versión
, se instalará la última versión.
roles:
- src: solarwinds.uamsclient
version: 1.8.0
ansible-galaxy install solarwinds.uamsclient