atosatto.grafana

Rôle Ansible : Grafana

Statut de construction Galaxy

Installer et configurer Grafana.

Exigences

Une installation d'Ansible 2.2 ou supérieure.

Variables du rôle

Les variables disponibles sont énumérées ci-dessous, avec leurs valeurs par défaut (voir defaults/main.yml) :

grafana_install_repo: "{{ grafana_repo_stable }}"

Le dépôt APT/YUM d'où obtenir les paquets Grafana. Par défaut, le dépôt stable officiel est utilisé comme défini dans vars/main.yml.

grafana_release_tag: ""

La version de Grafana à installer. Définissez-le sur "latest" pour installer la dernière version stable (voir https://github.com/grafana/grafana/releases).

grafana_user: "grafana"
grafana_group: "grafana"

Utilisateur et groupe système Grafana.

grafana_admin_user: "admin"
grafana_admin_password: "admin"

Nom d'utilisateur et mots de passe pour l'administration de Grafana.

grafana_paths_data: "/var/lib/grafana"

Emplacement des fichiers temporaires, des sessions et de la base de données sqlite3 de Grafana.

grafana_paths_logs: "/var/log/grafana"

Emplacement des fichiers journaux de Grafana.

grafana_paths_plugins: "/var/lib/grafana/plugins"

Répertoire où Grafana va automatiquement chercher des plugins.

grafana_paths_provisioning: "/etc/grafana/provisioning"

Emplacement des fichiers de configuration de provisionnement que Grafana appliquera au démarrage. Cette fonctionnalité n'est disponible que sur Grafana >= 5.0. Voir http://docs.grafana.org/administration/provisioning/ pour des informations supplémentaires.

grafana_server_http_addr: ""

L'adresse IP à laquelle Grafana va se lier. Par défaut, il se liera à toutes les interfaces.

grafana_server_http_port: "3000"

Le port auquel Grafana va se lier.

grafana_server_root_url: "http://localhost:3000"

L'URL complète utilisée pour accéder à Grafana depuis un navigateur web. Ceci est important lors de l'utilisation de l'authentification OAUTH.

grafana_server_router_logging: "false"

Définissez sur true pour que Grafana consigne toutes les requêtes HTTP (pas seulement les erreurs). Ces journaux sont enregistrés sous forme d'événements de niveau Info dans les journaux de Grafana.

grafana_database_type: "sqlite3"
grafana_database_host: "127.0.0.1:3306"
grafana_database_name: "grafana"
grafana_database_user: "root"
grafana_database_password: ""
grafana_database_ssl_mode: "disable"
grafana_database_path: "grafana.db"

Configuration de la base de données Grafana pour stocker les utilisateurs et les tableaux de bord. Par défaut, sqlite3 sera configuré et utilisé.

grafana_dashboards_versions_to_keep: "20"

Nombre de versions des tableaux de bord Grafana à conserver.

grafana_users_allow_sign_up: "false"

Définissez sur true pour autoriser l'inscription des utilisateurs / la création de comptes.

grafana_users_allow_org_create: "false"

Définissez sur true pour permettre aux utilisateurs de créer de nouvelles organisations.

grafana_users_auto_assign_org: "false"

Définissez sur true pour ajouter automatiquement les nouveaux utilisateurs à l'organisation fournie.

grafana_users_auto_assign_org_id: "1"

Définissez cette valeur pour ajouter automatiquement les nouveaux utilisateurs à l'organisation fournie.

grafana_users_auto_assign_org_role: "Viewer"

Le rôle attribué aux nouveaux utilisateurs dans l'organisation fournie (si grafana_users_auto_assign_org est défini sur true).

grafana_auth_disable_login_form: "false"

Définissez sur true pour désactiver (cacher) le formulaire de connexion, utile si vous utilisez OAuth.

grafana_auth_anonymous_enabled: "false"
grafana_auth_anonymous_org_name: "Main Org."
grafana_auth_anonymous_org_role: "Viewer"

Configuration de l'accès anonyme.

grafana_auth_github_enabled: "false"
grafana_auth_github_allow_sign_up: "true"
grafana_auth_github_client_id: "some_id"
grafana_auth_github_client_secret: "some_secret"
grafana_auth_github_scopes: "user:email,read:org"
grafana_auth_github_auth_url: "https://github.com/login/oauth/authorize"
grafana_auth_github_token_url: "https://github.com/login/oauth/access_token"
grafana_auth_github_api_url: "https://api.github.com/user"
grafana_auth_github_team_ids: ""
grafana_auth_github_allowed_organizations: ""

Configuration OAUTH pour Github.

grafana_auth_google_enabled: "false"
grafana_auth_google_allow_sign_up: "true"
grafana_auth_google_client_id: "some_id"
grafana_auth_google_client_secret: "some_secret"
grafana_auth_google_scopes: "https://www.googleapis.com/auth/userinfo.profile https://www.googleapis.com/auth/userinfo.email"
grafana_auth_google_auth_url: "https://accounts.google.com/o/oauth2/auth"
grafana_auth_google_token_url: "https://accounts.google.com/o/oauth2/token"
grafana_auth_google_api_url: "https://www.googleapis.com/oauth2/v1/userinfo"
grafana_auth_google_allowed_domains: ""

Configuration OAUTH pour Google.

grafana_auth_generic_oauth_enabled: "false"
grafana_auth_generic_oauth_name: "OAuth"
grafana_auth_generic_oauth_allow_sign_up: "true"
grafana_auth_generic_oauth_client_id: "some_id"
grafana_auth_generic_oauth_client_secret: "some_secret"
grafana_auth_generic_oauth_scopes: "user:email,read:org"
grafana_auth_generic_oauth_auth_url: "https://foo.bar/login/oauth/authorize"
grafana_auth_generic_oauth_token_url: "https://foo.bar/login/oauth/access_token"
grafana_auth_generic_oauth_api_url: "https://foo.bar/user"
grafana_auth_generic_oauth_team_ids: ""
grafana_auth_generic_oauth_allowed_organizations: ""

Configuration OAUTH générique.

grafana_smtp_enabled: "false"
grafana_smtp_host: "localhost:25"
grafana_smtp_user: ""
grafana_smtp_password: ""
grafana_smtp_cert_file: ""
grafana_smtp_key_file: ""
grafana_smtp_skip_verify: "false"
grafana_smtp_from_address: "[email protected]"
grafana_smtp_from_name: "Grafana"

Paramètres du serveur email.

grafana_log_mode: "console file"

Soit console, file, syslog. Utilisez un espace pour séparer plusieurs modes.

grafana_log_level: "info"

Soit debug, info, warn, error, critical.

grafana_alerting_enabled: "true"

Définissez sur false pour désactiver le moteur d'alerte et cacher l'alerte de l'interface utilisateur.

grafana_alerting_execute_alerts: "true"

Permet d'éteindre l'exécution des règles d'alerte.

grafana_datasources: []
# grafana_datasources:
# - name: "prometheus"
#   type: "prometheus"
#   access: "proxy"
#   url: "http://127.0.0.1:9090"
#   basicAuth: "false"

Provisionnement automatique des sources de données Grafana en utilisant http://docs.grafana.org/administration/provisioning/#datasources. NB : Cette fonctionnalité requiert Grafana >= 5.0

grafana_dashboards: []
# grafana_dashboards:
# - name: "prometheus"
#   orgId: 1
#   folder: ""
#   type: file
#   disableDeletion: false
#   updateIntervalSeconds: 3
#   editable: true
#   options:
#     path: /var/lib/grafana/dashboards

Provisionnement automatique des tableaux de bord Grafana en utilisant http://docs.grafana.org/administration/provisioning/#dashboards. L'exemple ci-dessus configurera Grafana pour charger automatiquement tous les tableaux de bord disponibles dans /var/lib/grafana/dashboards.

Dépendances

Aucune.

Exemples de Playbooks

$ cat playbook.yml
- name: "Installer et configurer Grafana"
  hosts: all
  roles:
    - { role: atosatto.grafana }

Test

Les tests sont automatisés avec Molecule.

$ pip install tox

Pour tester tous les scénarios, exécutez

$ tox

Pour exécuter une commande Molecule personnalisée

$ tox -e py27-ansible29 -- molecule test -s grafana-latest

Licence

MIT

Informations sur l'auteur

Andrea Tosatto (@_hilbert_)

À propos du projet

Install and configure Grafana

Installer
ansible-galaxy install atosatto.grafana
Licence
mit
Téléchargements
1.8k
Propriétaire
Automation fan-boy. Head in the ☁️. Loving Containers, Micro-Services, OpenSource, Golang and Python