solarwinds.uamsclient

Rôle Client UAMS Ansible

Le rôle client UAMS Ansible installe et configure le client UAMS.

Configuration

Exigences

  • Lorsque vous l'utilisez avec des hôtes Windows, la collection ansible.windows est requise. Veuillez l'installer sur l'hôte de contrôle avec la commande suivante :
ansible-galaxy collection install ansible.windows

Installation

Installez le rôle Client UAMS depuis Ansible Galaxy

ansible-galaxy install solarwinds.uamsclient

Pour déployer le client UAMS sur des hôtes, ajoutez le jeton d'accès, le rôle et l'URL swo à votre playbook sous la clé environment. Les valeurs peuvent être codées en dur mais, au moins pour le jeton d'accès, il est recommandé d'utiliser une variable et de ne pas exposer le jeton en texte clair.

Vous avez la possibilité de définir un proxy HTTPS en utilisant la variable d'environnement UAMS_HTTPS_PROXY. Il suffit de définir cette variable pour pointer vers votre proxy HTTPS souhaité. N'oubliez pas que la variable d'environnement UAMS_HTTPS_PROXY configure le proxy HTTPS uniquement pour les connexions établies par le client UAMS et ses plugins. Pour utiliser un proxy HTTPS lors de l'installation, configurez le proxy HTTPS sur votre machine afin qu'ansible puisse l'utiliser.

  environment:
    UAMS_ACCESS_TOKEN: "VOTRE_JETON_D_ACCES_SWO"
    UAMS_METADATA: "RÔLE"
    SWO_URL: "https://swo-url"
    UAMS_HTTPS_PROXY: "https://votre-proxy" # facultatif
    UAMS_OVERRIDE_HOSTNAME: "nom_personnalisé" # facultatif

Veuillez trouver un exemple de playbook que nous utilisons dans les tests CI.

Surcharge du nom d'hôte

La variable d'environnement facultative UAMS_OVERRIDE_HOSTNAME est utilisée pour définir un nom d'Agent personnalisé. Par défaut, le nom de l'Agent est défini sur le nom d'hôte. Vous pouvez attribuer une valeur à cette variable en utilisant des variables du fichier d'inventaire. Voici un exemple ci-dessous.

# Fichier d'inventaire

[test_servers]
192.168.0.123 ansible_user=user override_hostname=web_server1
192.168.0.124 ansible_user=user override_hostname=web_server2
# Fichier de playbook

  environment:
    UAMS_OVERRIDE_HOSTNAME: "DEV_{{ override_hostname }}"

Désinstallation

Pour désinstaller le client UAMS sur des hôtes, ajoutez le tag uninstall lorsque vous exécutez un playbook.
Exemple :

ansible-playbook -i inventory playbook.yml --tags uninstall

Veuillez trouver un exemple de playbook que nous utilisons dans les tests CI.

Ajout du Plugin DBO au Client UAMS

Aperçu

Ce rôle Ansible installe et configure le plugin DBO pour le client UAMS. Pour installer le plugin DBO, vous devez exécuter la commande suivante :

ansible-playbook -i inventory playbook.yml --tags dbo

Cela exécutera les tâches associées au tag dbo, installant et configurant le plugin DBO comme spécifié dans vos fichiers d'inventaire ou de variables. Assurez-vous que votre inventaire et/ou vos secrets sont correctement configurés avant d'exécuter le playbook.

Configuration

Pour utiliser le plugin DBO, vous devez définir les variables nécessaires dans votre inventaire Ansible ou votre fichier de secrets. Voici le format de ces variables : De plus, vous devez fournir un jeton avec un accès complet pour accéder à l'API afin d'installer des plugins DBO.

uams_full_access_token: "<jeton_d'accès_complet>"
dbo_plugin:
  - databaseType: "mongo"
    name: "mongodb profiler sur dev-amd64-mu écoutant sur 10.0.2.2:27018"
    host: "10.0.2.2"
    port: "27018"
    user: "myUser"
    password: "<mot_de_passe>"
    packetCaptureEnabled: false
    metricsCaptureMethod: "profiler"

Moyens de Fournir des Variables

  1. Fichier d'Inventaire : vous pouvez définir directement les variables dbo_plugin et uams_full_access_token dans votre fichier d'inventaire.
  2. Variables de Groupe ou d'Hôte
  3. Ansible Vault

Pour des informations sensibles telles que les mots de passe, il est recommandé d'utiliser Ansible Vault pour chiffrer vos variables. Vous pouvez créer un fichier chiffré pour vos secrets :

Chiffrez ce fichier en utilisant la commande suivante :

ansible-vault encrypt path/to/secrets.yml

Puis référez-vous à ce fichier dans votre playbook ou votre fichier d'inventaire :

vars_files:
  - path/to/secrets.yml

Variables de rôle

Variable Description
uams_local_pkg_path Remplace le chemin où le package d'installation est stocké (par défaut : /tmp/uams)
uams_local_pkg_path_windows Remplace le chemin où le package d'installation est stocké sur Windows (par défaut : valeur de la variable d'environnement TEMP)
uams_remove_installer Si le package d'installation doit être supprimé (par défaut : vrai)

AWX

Le rôle client UAMS peut également être utilisé dans la configuration AWX. Les points suivants doivent être pris en compte :

  1. AWX doit être configuré pour télécharger des rôles depuis Ansible Galaxy. À l'heure actuelle (avec AWX 0.30.0), cela doit être activé dans Paramètres > Travaux (Activer le téléchargement de rôles) et des identifiants Ansible Galaxy doivent également être configurés au niveau de l'organisation. Le fichier roles/requirements.yml doit être présent dans le dépôt du projet et contenir le rôle requis (exemple ci-dessous).
  2. Les valeurs des variables représentant le jeton d'accès, le rôle et l'URL swo doivent être fournies depuis l'interface AWX.
  3. Le playbook doit contenir une valeur hosts: correspondant au groupe d'hôtes (ou à un hôte individuel) défini dans l'inventaire AWX. Le playbook n'est pas disponible dans AWX pour la création de templates de job si la valeur appropriée n'a pas été fournie.
  4. La définition de l'escalade des privilèges dans le template de job peut provoquer des échecs pour les tâches déléguées à localhost en raison de l'absence de la commande sudo dans le conteneur d'exécution.

Exemples de configuration AWX

Playbook

---
- name: Installer le client UAMS
  # Groupe d'hôtes existant depuis l'inventaire
  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 version est omis, la dernière version sera installée.

roles:
  - src: solarwinds.uamsclient
    version: 1.8.0
À propos du projet

SolarWinds UAMS Client Installer

Installer
ansible-galaxy install solarwinds.uamsclient
Licence
mit
Téléchargements
5.5k
Propriétaire