logdna.logdna

CircleCI

Déployer l'agent LogDNA avec Ansible

Description

Rôle Ansible Galaxy pour installer et configurer l'agent LogDNA.

Exigences

  • Version d'Ansible : >=2.1
  • Testé sur les systèmes d'exploitation suivants :
    • CentOS 6
    • CentOS 7
    • Ubuntu 12.04 - Précise
    • Ubuntu 14.04 - Trusty
    • Ubuntu 16.04 - Xenial
    • Ubuntu 17.10 - Artful
    • Debian 8 - Jessie

Variables de rôle

Variables spécifiques aux tâches

  • agent_install : true si l'agent doit être installé (par défaut : true)
  • agent_config : true si l'agent doit être configuré (par défaut : true)
  • agent_service : (par défaut : started), prend en charge :
    • started : pour démarrer le service de l'agent LogDNA si conf_key est spécifié
    • restarted : pour redémarrer le service de l'agent LogDNA
    • stopped : pour arrêter le service de l'agent LogDNA.

Variables de configuration

Ces variables correspondent directement aux options de configuration natives pour l'agent LogDNA :

  • conf_key : Clé d'ingestion LogDNA - le service de l'agent LogDNA ne démarrera pas si conf_key n'est pas spécifié.
  • conf_config : Chemin du fichier de configuration de l'agent LogDNA (par défaut : /etc/logdna.conf)
  • conf_logdir : Répertoires de journaux à ajouter
  • conf_logfile : Fichiers de journaux à ajouter
  • conf_exclude : Fichiers ou répertoires de journaux à exclure
  • conf_exclude_regex : Règle d'exclusion pour les lignes de journaux
  • conf_hostname : Nom d'hôte alternatif à utiliser
  • conf_tags : Étiquettes à ajouter.

Comment installer

  • En ligne depuis Ansible Galaxy : ansible-galaxy install logdna.logdna
  • Directement depuis le code source : ansible-galaxy install git+https://github.com/logdna/ansible-logdna.git

Exemple de playbook

- hosts: <hosts>
  vars:
    conf_key: <Clé d'ingestion LogDNA>
  roles:
     - { role: logdna.logdna }

Cas d'utilisation

  • Pour installer, configurer et démarrer le service sur les hôtes spécifiés :
- hosts: <hosts>
  vars:
    conf_key: <Clé d'ingestion LogDNA>
    # Spécifications des autres paramètres de configuration
  roles:
     - { role: logdna.logdna }
  • Pour reconfigurer et redémarrer le service sur les hôtes spécifiés :
- hosts: <hosts>
  vars:
    # spécifications des paramètres de reconfiguration
    agent_service: restarted
  roles:
     - { role: logdna.logdna }
  • Juste installer mais ne pas configurer ou toucher au service :
- hosts: <hosts>
  vars:
    # ne pas définir la clé d'ingestion LogDNA
    agent_config: false
  roles:
     - { role: logdna.logdna }
  • Arrêter le service :
- hosts: <hosts>
  vars:
    agent_install: false
    agent_config: false
    agent_service: stopped
  roles:
     - { role: logdna.logdna }

Plugin de rappel LogDNA

Le plugin de rappel LogDNA est un gestionnaire pour envoyer les journaux de chaque exécution de ansible-playbook à LogDNA. Il prend actuellement en charge les catégories de journaux suivantes : STATS, FAILED, OK, UNREACHABLE, ASYNC_FAILED, ASYNC_OK. Il peut être configuré de la manière suivante :

  • Si le paquet Python de l'agent LogDNA n'est pas installé, veuillez l'installer en utilisant l'un des commandes suivantes selon la version de Python que vous utilisez : pip install logdna ou pip3 install logdna
  • Si la version d'Ansible que vous utilisez est inférieure à v2.6 (c'est-à-dire <= v2.5), faites l'étape suivante :
    • Téléchargez le plugin depuis ici dans le dossier des plugins de rappel. Vous pouvez trouver le dossier avec la commande suivante : echo $(ansible-doc -F | awk 'FNR == 1 {print $2}' | sed 's/\/modules/+/g' | cut -d'+' -f 1)/plugins/callback
  • S'il n'y a pas de ansible.cfg sur votre système, faites les étapes suivantes :
    • Assurez-vous que le dossier /etc/ansible existe en exécutant mkdir -p /etc/ansible
    • Téléchargez ansible.cfg depuis ici dans /etc/ansible/
  • Faites ANSIBLE_CONFIG=< Chemin vers ansible.cfg >
  • Ouvrez ansible.cfg et faites les étapes suivantes :
    • Décommentez la ligne contenant callback_whitelist, si commentée, et ajoutez logdna
    • Décommentez la ligne contenant callback_plugins, si commentée, et mettez à jour le chemin des plugins de rappel
  • Pour que le plugin fonctionne, les variables environnementales suivantes doivent être définies :
    • LOGDNA_INGESTION_KEY : Clé d'ingestion LogDNA pour streamer les journaux - obligatoire
    • ANSIBLE_IGNORE_ERRORS : Pour savoir si vous voulez ignorer les erreurs lors des échecs ; False par défaut - optionnel
    • LOGDNA_HOSTNAME : Nom d'hôte alternatif à utiliser dans les journaux - optionnel
    • LOGDNA_TAGS : Liste d'étiquettes séparées par des virgules ; ansible par défaut - optionnel

Contribution

Les contributions sont toujours les bienvenues. Consultez le guide de contribution pour savoir comment vous pouvez aider.

Licence et auteurs

À propos du projet

Ansible Galaxy Role to install and configure LogDNA Agent

Installer
ansible-galaxy install logdna.logdna
Licence
mit
Téléchargements
11.3k
Propriétaire
Supercharge Observability With Mezmo Telemetry Pipeline