mkayontour.icingaweb2

ansible-icingaweb2

Ansible 役割は、Icinga Web 2 をインストールし、しっかりと設定します。この役割には、Icinga Web 2 パッケージのインストール、すべての設定ファイルの設定、および監視モジュールのセットアップが含まれています。

さらに、この役割は、Icinga Web 2 モジュールを簡単にインストールおよび有効化する方法を提供します。モジュールの設定は手動で行うか、別の役割で行う必要があります。

インストール

ansible-galaxy install mkayontour.icingaweb2

要件

この役割に特別な要件はありませんが、以下の点を前もって確認する必要があります。

Icinga Web 2 をインストールする前に、ウェブサーバーアプリケーションを自分で選んでインストールしてください。

また、動作しているデータベースを提供する役割が必要です。データベース内で認証を使用する場合は、最初にスキーマをインポートしてください。LDAP や外部認証を使用している場合は、データベースを持つ必要はありません。

- name: Icinga Web 2 データベーススキーマをインポートします。
  mysql_db:
    name: icingaweb
    state: import
    target: /usr/share/icingaweb2/etc/schema/mysql.schema.sql
    login_user: icingaweb
    login_password: icingaweb
    login_host: localhost

役割の変数

インストール

管理変数は常に管理される何かをトリガーします。 パッケージは通常の icingaweb2 パッケージであり、リポジトリは Icinga のリリースリポジトリです。

icingaweb2_manage_package: yes
icingaweb2_manage_centos_scl: yes
icingaweb2_manage_repository: yes

ディレクターを管理する必要がある場合は、次の変数を使用できます。

icingaweb2_manage_director: yes

ディレクターに関する詳細は、以下の director のセクションをご覧ください。

Icinga Web 2 の設定

resources.ini

Icinga Web 2 のリソースは icingaweb2_resources 辞書で定義されます。 キーはリソースの名前で、その後に必要なオプションが resources.ini に入ります。

icingaweb2_resources:
  icinga_ido:
    type: db
    db: mysql
    host: localhost
    dbname: icinga
    username: icinga
    password: icinga
    use_ssl: 0
    charset: utf8
  icingaweb_db:
    type: db
    db: mysql
    host: localhost
    dbname: icingaweb
    username: icingaweb
    password: icingaweb
    use_ssl: 0

すべての Icinga Web 2 設定ファイルには、各セクションとオプションを作成するための独自の辞書があります。

groups.ini

icingaweb2_groups:
  icingaweb2:
    backend: db
    resource: icingaweb_db

authentication.ini

icingaweb2_authentication:
  icingaweb2:
    backend: db
    resource: icingaweb_db

config.ini

icingaweb2_config:
  global:
    show_stacktraces: 1
    show_application_state_messages: 1
    config_backend: ini
    module_path: /usr/share/icingaweb2/modules
  logging:
    log: syslog
    level: ERROR
    application: icingaweb2
    facility: user
  themes:
    default: Icinga

役割を自動的に構成したい場合は、この辞書を使用してください。変数 icingaweb2_roles が定義されていない場合、タスクはスキップされます。

icingaweb2_roles:
  administrators:
    users: icinga
    permissions: "*"
    groups: Administrators

監視モジュール

監視モジュールはデフォルトでインストールされます。モジュールの設定を作成するには、次の辞書を使用してください。

icingaweb2_monitoring_config:
  security:
    protected_customvars: "*pw*,*pass*,community"
icingaweb2_monitoring_backends:
  icinga:
    type: ido
    resource: icinga_ido
icingaweb2_monitoring_commandtransports:
  icinga2:
    transport: api
    host: localhost
    port: 5665
    username: root
    password: root

Icinga Web 2 モジュールの追加

Icinga Web 2 に特定のモジュールを追加するには、このモジュールのリストを構成することができます。 監視モジュールもこのリストに残るようにしてください。

このリストのすべてのモジュールは、git_url オプションが設定されると、モジュールディレクトリに git を通じてクローンされます。

注意: プレイブックを開始する前に、システムに git がインストールされていることを確認してください。

icingaweb2_modules:
  - name: monitoring
  # - name: director
  #   git_url: https://github.com/Icinga/icingaweb2-module-director.git
  #   version: v1.7.2
  # - name: ipl
  #   git_url: https://github.com/Icinga/icingaweb2-module-ipl.git
  #   version: v0.5.0
  # - name: reactbundle
  #   git_url: https://github.com/Icinga/icingaweb2-module-reactbundle.git
  #   version: v0.7.0
  # - name: incubator
  #   git_url: https://github.com/Icinga/icingaweb2-module-incubator.git
  #   version: v0.5.0

ディレクター

ディレクターの git リポジトリがインストールされているか、Icinga Web 2 モジュールを追加する機能を使用してください。

ディレクターを管理するには、変数 icingaweb2_manage_director を使用して、インクルードを有効にすることができます。

systemd サービスを有効にするには、変数 icingaweb2_manage_director_service を使用します。

次に、config.inikickstart.ini を設定するためのいくつかの変数があります。

config.ini

icingaweb2_director_resource: Icinga Web 2 ディレクター リソースの名前 (DB)

kickstart.ini

icingaweb2_director_kickstart_endpoint: キックスタートスクリプトのエンドポイントの名前 (マスターの一般名)。この変数が定義されていない場合、kickstart.ini は作成されません。そのため、キックスタートは実行されません。

icingaweb2_director_kickstart_host: 解決可能なホスト名または IP アドレスである必要があります。 デフォルト: "localhost"

icingaweb2_director_kickstart_port: デフォルトのポートは5665です。

icingaweb2_director_kickstart_username: ディレクター API ユーザーのユーザー名。デフォルト: "root"

icingaweb2_director_kickstart_password: ディレクター API ユーザーのパスワード。デフォルト: "root"

依存関係

このモジュールには依存関係はありません。

プレイブック例

役割の使用方法を示す例を含めることは、ユーザーにも良いです(例えば、パラメーターとして渡される変数で):

- hosts: icingaweb2
  roles:
     - { role: mkayontour.icingaweb2 }

ライセンス

Apache-2.0

著者情報

Twitter: @mkayontour

プロジェクトについて

Installs and configures Icinga Web 2 on Rhel, Debian and Ubuntu

インストール
ansible-galaxy install mkayontour.icingaweb2
ライセンス
apache-2.0
ダウンロード
88.3k
所有者
Twitter: @mkayontour