Red Hat Training

A Red Hat training course is available for Red Hat OpenStack Platform

第3章 可用性監視スイートのインストール

3.1. 監視リレー/コントローラーのインストール

  1. 以下の最小仕様を満たすベアメタルのシステムを特定します。

    • 4 GB メモリー
    • 単一ソケットの Xeon クラスの CPU
    • 100 GB のディスク領域
  2. Red Hat Enterprise Linux 7 をインストールします。
  3. このシステムの運用ツールパッケージへのアクセスを許可します。

    1. システムを登録して、サブスクライブします。

      # subscription-manager register
      # subscription-manager list --consumed

      OpenStack のサブスクリプションが自動的にアタッチされない場合は、「manually attaching subscriptions」に記載の説明を参照してください。

    2. 最初に有効化されているリポジトリーを無効化してから、運用ツールに適したリポジトリーのみを有効化します。

      # subscription-manager repos --disable=*
      # subscription-manager repos --enable=rhel-7-server-rpms --enable=rhel-7-server-optional-rpms --enable=rhel-7-server-openstack-8-optools-rpms
      注記

      ベースの OpenStack リポジトリー (rhel-7-server-openstack-8-rpms) は、このノードでは有効化しないでください。このリポジトリーには、特定の運用ツールの依存関係でより新しいバージョンが含まれている可能性があり、運用パッケージと互換性がない場合があります。

  4. RabbitMQUchiwa に接続ができるようにシステムのファイアウォールを開放します。

    # firewall-cmd --zone=public --add-port=5672/tcp --permanent
    # firewall-cmd --zone=public --add-port=3000/tcp --permanent
    # firewall-cmd --reload
  5. 監視サーバーに必要なコンポーネントをインストールします。

    # yum install sensu uchiwa redis rabbitmq-server
  6. 基幹サービスである RabbitMQRedis を設定します。RedisRabbitMQ の両方を起動して、ブート時に有効になるように設定します。

    # systemctl start redis
    # systemctl enable redis
    # systemctl start rabbitmq-server
    # systemctl enable rabbitmq-server
  7. sensu に新しい RabbitMQ 仮想ホストを設定して、このホストにアクセスできるユーザー名とパスワードの組み合わせを指定します。

    # rabbitmqctl add_vhost /sensu
    # rabbitmqctl add_user sensu sensu
    # rabbitmqctl set_permissions -p /sensu sensu ".*" ".*" ".*"
  8. ベースのサービスが稼動し、ベースサービスの設定が済みました。次に Sensu の監視サービスを設定します。以下の内容を設定した /etc/sensu/conf.d/rabbitmq.json を作成します。

    {
      "rabbitmq": {
        "port": 5672,
        "host": "localhost",
        "user": "sensu",
        "password": "sensu",
        "vhost": "/sensu"
      }
    }
  9. 次に、以下の内容の /etc/sensu/conf.d/redis.json を作成します。

    {
      "redis": {
        "port": 6379,
        "host": "localhost"
      }
    }
  10. 最後に以下の内容の /etc/sensu/conf.d/api.json を作成します。

    {
      "api": {
        "bind": "0.0.0.0",
        "port": 4567,
        "host": "localhost"
      }
    }
  11. Sensu サービスを起動して、有効化します。

    # systemctl start sensu-server
    # systemctl enable sensu-server
    # systemctl start sensu-api
    # systemctl enable sensu-api
  12. Sensu の Web インターフェースである Uchiwa を設定します。これには、/etc/uchiwa/uchiwa.json を編集して、デフォルトの内容を以下に置き換えます。

    {
      "sensu": [
        {
          "name": "Openstack",
          "host": "localhost",
          "port": 4567
        }
      ],
      "uchiwa": {
        "host": "0.0.0.0",
        "port": 3000,
        "refresh": 5
      }
    }
  13. Uchiwa の Web インターフェースを起動して、有効にします。

    # systemctl start uchiwa
    # systemctl enable uchiwa

3.2. 全ノード上での可用性監視エージェントのインストール

OpenStack 環境のすべてのシステムを監視するには、環境内の全システムで以下のコマンドを実行します。

  1. 運用ツールのリポジトリーを有効にします。

    # subscription-manager repos --enable=rhel-7-server-openstack-8-optools-rpms
  2. Sensu をインストールします。

    # yum install sensu
  3. Sensu エージェントを設定します。以下の内容が含まれるように /etc/sensu/conf.d/rabbitmq.json を設定します。MONITORING_SERVER は、前のセクションで設定した監視サーバーのホスト名または IP アドレスに忘れずに置き換えるようにしてください。

    {
      "rabbitmq": {
        "port": 5672,
        "host": "MONITORING_SERVER",
        "user": "sensu",
        "password": "sensu",
        "vhost": "/sensu"
      }
    }
  4. 以下の内容が含まれるように /etc/sensu/conf.d/client.json を編集します。FQDN はマシンのホスト名に、ADDRESS はマシンのパブリック IP に忘れずに置き換えてください。

    {
      "client": {
        "name": "FQDN",
        "address": "ADDRESS",
        "subscriptions": [ "all" ]
      }
    }
  5. 最後に Sensu クライアントを起動して、有効化します。

    # systemctl start sensu-client
    # systemctl enable sensu-client

http://MONITORING_SERVER/:3000 で実行される Uchiwa にアクセスできるはずです。