Activation et configuration du capteur « Ansible » dans Automation Action
Le capteur « Automation Action » Ansible prend en charge la fonctionnalité « Gestion de l'automatisation ».
Pour plus d'informations, consultez la section « Gestion de l'automatisation ». Le capteur est automatiquement déployé et installé une fois que vous avez installé l'agent d' Instana.
Grâce à ce capteur, l'agent d' Instana s peut exécuter des actions d' Ansible qui ont été importées dans le catalogue d'actions sur Instana. Le capteur utilise le connecteur d'automatisation « Ansible » pour se connecter à l' Ansible Automation Controller, sur lequel il doit exécuter des tâches.
Prérequis
Avant d'activer ce capteur, procédez comme suit :
- Consultez les informations fournies dans la section « Utilisation sécurisée du cadre d'automatisation ».
- Si le capteur est utilisé dans un environnement auto-hébergé (sur site), assurez-vous que l 'indicateur de fonctionnalité d'automatisation est activé.
Activation du capteur
Le capteur « Automation Action » de l' Ansible est désactivé par défaut. Pour activer le capteur, modifiez le fichier de configuration de l'agent comme indiqué dans l'exemple suivant.
com.instana.plugin.action.ansible:
enabled: true # by default is false
url: <ansible_url> # Ansible Automation Controller url
apiPath: <api_path> # Optional, default path is /api/v2. For Ansible Automation Controller 2.5+, use /api/controller/v2
token: # the token to connect to Ansible Automation Controller
configuration_from:
type: vault
secret_key:
path: <secret_path>
key: <secret_key>
L'exemple suivant montre l'utilisation d'un jeton en texte clair dans la configuration et n'est donné qu'à titre de référence.
com.instana.plugin.action.ansible:
enabled: true # by default is false
url: <ansible_url> # Ansible Automation Controller url
apiPath: <api_path> # Optional, default path is /api/v2. For Ansible Automation Controller 2.5+, use /api/controller/v2
token: <ansbile_token> # the token to connect to Ansible Automation Controller
Modification du nombre d'actions simultanées d' Ansible
Le détecteur Ansible peut exécuter 10 actions Ansible simultanées, par défaut. Pour modifier le nombre maximal d'actions Ansible simultanées, ajoutez l'attribut maxConcurrentActions à la configuration du détecteur Ansible dans le fichier de configuration de l'agent, comme illustré dans l'exemple suivant:
com.instana.plugin.action.ansible:
enabled: true
maxConcurrentActions: 5 # optional, default value is 10
Configuration du délai d'expiration par défaut
Par défaut, une action d' Ansible ation expire au bout de 300 secondes. Si vous souhaitez modifier le délai d'expiration par défaut pour l'exécution de l'action « Ansible », ajoutez defaultTimeout l'attribut à la section de configuration du capteur « Ansible » dans le fichier de configuration de l'agent, comme suit :
com.instana.plugin.action.ansible:
enabled: true
defaultTimeout: 30 # optional, default timeout is 300 seconds
Intégration d'un gestionnaire de secrets
Si l'action « Ansible » de votre catalogue d'actions utilise des paramètres de type « Vault », vous devez intégrer l'agent hôte à un gestionnaire de secrets.
Configuration du connecteur d'automatisation d' Ansible
Cette étape n'est nécessaire que si vous utilisez la version 1.0.56 ou une version antérieure.
Les versions précédentes du capteur « Automation Action Ansible » utilisent une image du connecteur d'automatisation « Ansible ». Pour utiliser le capteur, assurez-vous qu'un moteur de gestion des conteneurs ( Docker ou Podman ) est disponible sur l'agent Instana.
En utilisant l'image du connecteur d'automatisation Ansible , le détecteur se connecte au contrôleur d'automatisation Ansible et exécute des travaux dessus. L'image du connecteur d'automatisation est extraite du registre icr.io/instana/actions lorsque le détecteur est activé.
Si la machine de l'agent n'a pas accès au registre d'images icr.io , définissez offline=true dans la configuration du détecteur et chargez l'image du connecteur d'automatisation dans le registre local sur le système de l'agent.
Pour configurer le connecteur d'automatisation, mettez à jour le fichier de configuration de l'agent comme illustré dans l'exemple suivant:
com.instana.plugin.action.ansible:
enabled: true
url: <ansible_url>
token:
configuration_from:
type: vault
secret_key:
path: <secret_path>
key: <secret_key>
connector:
container_mgmt_engine: docker|podman # the container management engine
host_port: 9080 # the port on the host to bind the connector container to
ready_timeout: 60 # optional, default timeout is 300 seconds
offline: false|true # optional, default is false
Chargement de l'image du connecteur d'automatisation dans le registre local
Si la machine de l'agent n'a pas accès au registre d'images icr.io , chargez l'image dans le registre d'images local sur le système de l'agent.
Pour charger l'image dans le registre d'images local sur le système d'agent, procédez comme suit:
Sur une machine disposant d'un accès à Internet, téléchargez la dernière image du connecteur d'automatisation Ansible :
docker pull icr.io/instana/actions/awx:latestSauvegardez l'image dans un fichier archive:
docker save <image_id> > /tmp/awx.tarCopiez l'archive sur la machine de l'agent, puis chargez l'image dans le registre d'images local:
docker load < /tmp/awx.tarBalisez l'image :
docker tag <image_id> icr.io/instana/actions/awx:latest
Traitement des incidents
Vous pourriez rencontrer le problème suivant lors de l'utilisation du capteur « Automation Action Ansible » :
API Configuration du chemin d'accès pour Ansible Automation Controller 2.5 ou version ultérieure
Mettez à jour la configuration du chemin d'accès à API lorsque vous utilisez Ansible Automation Controller 2.5 ou une version ultérieure afin de résoudre les problèmes de connexion.
Pour l' Ansible Automation Controller, la version 2.5 ou ultérieure, le chemin d'accès à API a changé, passant de /api/v2 à /api/controller/v2. Le capteur utilise /api/v2 comme chemin par défaut pour assurer la compatibilité avec les versions antérieures.
Si vous rencontrez des problèmes de connexion ou si vous ne parvenez pas à récupérer les modèles de tâches à partir de Ansible Automation Controller 2.5 ou une version ultérieure, mettez à jour le apiPath paramètre dans la configuration de votre agent (instanaAgentDir/etc/instana/configuration.yaml):
com.instana.plugin.action.ansible:
enabled: true
url: https://your-ansible-controller.example.com
apiPath: /api/controller/v2 # Required for Ansible Automation Controller 2.5+
token:
configuration_from:
type: vault
secret_key:
path: <secret_path>
key: <secret_key>
Pour vérifier que le chemin d'accès à API est correct, exécutez la commande suivante : curl
curl -k -H "Authorization: Bearer <your_token>" https://your-ansible-controller.example.com/api/controller/v2/job_templates/
Si la commande « curl » renvoie correctement des modèles de tâches, cela signifie que le chemin d'accès à « API » est correct.