Apigee Edge for Private Cloud には、オープンソース ベースのツールである apigee-monit
が含まれています。
monit ユーティリティ。定期的にapigee-monit
エッジサービスをポーリングしますサービスが利用できない場合、apigee-monit
はそのサービスの再起動を試みます。
apigee-monit
を使用するには、手動でインストールする必要があります。これは、
インストールできます。
デフォルトでは、apigee-monit
は 60 秒ごとに Edge サービスのステータスを確認します。
クイック スタート
このセクションでは、apigee-monit
をすばやく利用開始する方法について説明します。
Amazon Linux または Oracle-Linux-7.X を使用している場合は、 Fedora 経由で monit をインストールします。それ以外の場合は スキップします
sudo yum install -y https://kojipkgs.fedoraproject.org/packages/monit/5.25.1/1.el6/x86_64/monit-5.25.1-1.el6.x86_64.rpm
apigee-monit
をインストールする手順は次のとおりです。
apigee-monit をインストールする |
|
/opt/apigee/apigee-service/bin/apigee-service apigee-monit install これにより、 |
|
コンポーネントのモニタリングを停止する | |
/opt/apigee/apigee-service/bin/apigee-service apigee-monit unmonitor -c component_name /opt/apigee/apigee-service/bin/apigee-service apigee-monit unmonitor -c all |
|
コンポーネントのモニタリングを開始する | |
/opt/apigee/apigee-service/bin/apigee-service apigee-monit monitor -c component_name /opt/apigee/apigee-service/bin/apigee-service apigee-monit monitor -c all |
|
ステータス情報の概要を取得する | |
/opt/apigee/apigee-service/bin/apigee-service apigee-monit report /opt/apigee/apigee-service/bin/apigee-service apigee-monit summary |
|
apigee-monit ログファイルを確認する |
|
cat /opt/apigee/var/log/apigee-monit/apigee-monit.log |
以降のセクションでは、これらのトピックとその他のトピックについて詳しく説明します。
apigee-monit について
apigee-monit
は、ノード上のすべてのコンポーネントが確実に稼働し続けることを保証します。これは、
次のようなさまざまなサービスを提供しています。
- 障害が発生したサービスの再起動
- サマリー情報の表示
- モニタリング ステータスのロギング
- 通知の送信
- Edge 以外のサービスのモニタリング
apigee-monit
をモニタリングして、実行されていることを確認することをおすすめします。詳しくは
apigee-monit をモニタリングするをご覧ください。
apigee-monit アーキテクチャ
Apigee Edge for Private Cloud のインストールと構成時に、必要に応じて別のインスタンスをインストールします。
クラスタ内の各ノードに apigee-monit
を追加します。これらの個別の apigee-monit
インスタンスは、相互に独立して動作します。
もう一つは、自身のコンポーネントのステータスを他のノードに伝えず、
モニタリング ユーティリティ自体の障害を中央サービスに伝達する。
次の図は、5 ノードクラスタの apigee-monit
アーキテクチャを示しています。
![アーキテクチャ
5 ノードクラスタでの Apigee Monit の](https://docs.apigee.com/static/private-cloud/images/monit-arch.png?authuser=1&hl=ja)
apigee-monit
の個別のインスタンスが、組織内の各ノードで独立して実行される
クラスタコンポーネントの構成
apigee-monit
は、モニタリングするコンポーネントを決定するために、コンポーネント構成を使用します。
チェックすべき要素、障害発生時に取るべき対応など、多岐にわたります。
デフォルトでは、apigee-monit
は事前定義されたコンポーネントを使用して、ノード上のすべての Edge コンポーネントをモニタリングします。
できます。デフォルトの設定を確認するには、apigee-monit
コンポーネントの構成を調べます。
できます。デフォルトのコンポーネント構成は変更できません。
apigee-monit
は、チェック対象のコンポーネントに応じて、コンポーネントのさまざまな側面をチェックします。「
次の表に、apigee-monit
が各コンポーネントに対して確認する内容と、そのコンポーネントの場所を示します。
コンポーネントごとに異なります。一部のコンポーネントは単一の構成で定義されている
他のユーザーは独自の構成を持ちます。
コンポーネント | 構成の場所 | モニタリング対象 |
---|---|---|
管理サーバー | /opt/apigee/edge-management-server/monit/default.conf |
apigee-monit チェック:
<ph type="x-smartling-placeholder">
さらに、これらのコンポーネント
|
Message Processor | /opt/apigee/edge-message-processor/monit/default.conf |
|
Postgres サーバー | /opt/apigee/edge-postgres-server/monit/default.conf |
|
Qpid サーバー | /opt/apigee/edge-qpid-server/monit/default.conf |
|
ルーター | /opt/apigee/edge-router/monit/default.conf |
|
Cassandra Edge UI OpenLDAP Postgres Qpid ズーキーパー |
/opt/apigee/data/apigee-monit/monit.conf |
apigee-monit チェック:
<ph type="x-smartling-placeholder">
|
次の例は、edge-router
のデフォルトのコンポーネント構成を示しています。
component:
check host edge-router with address localhost restart program = "/opt/apigee/apigee-service/bin/apigee-service edge-router monitrestart" if failed host 10.1.1.0 port 8081 and protocol http and request "/v1/servers/self/uuid" with timeout 15 seconds for 2 times within 3 cycles then restart if failed port 15999 and protocol http and request "/v1/servers/self" and status < 600 with timeout 15 seconds for 2 times within 3 cycles then restart
次の例は、従来の UI(edge-ui
)のデフォルト構成を示しています。
component:
check process edge-ui with pidfile /opt/apigee/var/run/edge-ui/edge-ui.pid start program = "/opt/apigee/apigee-service/bin/apigee-service edge-ui start" with timeout 55 seconds stop program = "/opt/apigee/apigee-service/bin/apigee-service edge-ui stop"
これは Classic UI に適用されます。コンポーネント名が
edge-management-ui
。
Apigee Edge for Private Cloud コンポーネントのデフォルトのコンポーネント構成は変更できません。たとえば、
外部サービス用に独自のコンポーネント構成(ターゲット エンドポイントなど)を
または httpd
サービス。詳細については、次をご覧ください:
Apigee 以外のコンポーネントの構成。
デフォルトでは、apigee-monit
はノードで実行されているすべてのコンポーネントをモニタリングします。Google Cloud コンソールから
すべてのコンポーネントまたは個々のコンポーネントで無効にできます。詳しくは以下をご覧ください。
apigee-monit をインストールする
apigee-monit
はデフォルトではインストールされません。インストール後に手動でインストールできます。
バージョン 4.19.01 以降の Apigee Edge for Private Cloud が必要です。
このセクションでは、apigee-monit
のインストール方法について説明します。
apigee-monit
のアンインストールについて詳しくは、以下をご覧ください。
apigee-monit
をアンインストールします。
apigee-monit をインストールする
このセクションでは、apigee-monit
のインストール方法について説明します。
apigee-monit
をインストールするには:
- 次のコマンドで
apigee-monit
をインストールします。/opt/apigee/apigee-service/bin/apigee-service apigee-monit install
- 次のコマンドを使用して
apigee-monit
を構成します。/opt/apigee/apigee-service/bin/apigee-service apigee-monit configure
- 次のコマンドで
apigee-monit
を起動します。/opt/apigee/apigee-service/bin/apigee-service apigee-monit start
- クラスタ内の各ノードで、この手順を繰り返します。
コンポーネントのモニタリングを停止、開始する
なんらかの理由でサービスが停止すると、apigee-monit
はサービスの再起動を試みます。
コンポーネントを意図的に停止する場合、これが問題になることがあります。たとえば、
バックアップやアップグレードの際にコンポーネントを停止できます。
バックアップ中またはアップグレード中に apigee-monit
によってサービスが再起動された場合、メンテナンス手順は次のようになります。
場合によっては停止することもあります
以降のセクションでは、コンポーネントのモニタリングを停止するためのオプションについて説明します。
コンポーネントを停止してモニタリング対象外にする
コンポーネントを停止してモニタリングを解除するには、次のコマンドを実行します。
/opt/apigee/apigee-service/bin/apigee-service apigee-monit stop-component -c component_name
apigee-cassandra
(Cassandra)apigee-openldap
(OpenLDAP)apigee-postgresql
(PostgreSQL データベース)apigee-qpidd
(Qpidd)apigee-sso
(Edge SSO)apigee-zookeeper
(ZooKeeper)edge-management-server
(Management Server)edge-management-ui
(新しい Edge UI)edge-message-processor
(Message Processor)edge-postgres-server
(Postgres Server)edge-qpid-server
(Qpid Server)edge-router
(Edge Router)edge-ui
(Classic UI)
「all」はは、stop-component
には無効なオプションです。停止して
stop-component
を使用して、一度に 1 つのコンポーネントのみをモニタリング対象外にします。
コンポーネントを再起動してモニタリングを再開するには、次のコマンドを実行します。
/opt/apigee/apigee-service/bin/apigee-service apigee-monit start-component -c component_name
「all」はは、start-component
には無効なオプションです。
すべてのコンポーネントを停止してモニタリング解除する方法については、以下をご覧ください。 すべてのコンポーネントを停止してモニタリング対象外にします。
コンポーネントをモニタリング解除する(ただし停止はしない)
コンポーネントを停止せずにモニタリング対象外にするには、次のコマンドを実行します。
/opt/apigee/apigee-service/bin/apigee-service apigee-monit unmonitor -c component_name
apigee-cassandra
(Cassandra)apigee-openldap
(OpenLDAP)apigee-postgresql
(PostgreSQL データベース)apigee-qpidd
(Qpidd)apigee-sso
(Edge SSO)apigee-zookeeper
(ZooKeeper)edge-management-server
(Management Server)edge-management-ui
(新しい Edge UI)edge-message-processor
(Message Processor)edge-postgres-server
(Postgres Server)edge-qpid-server
(Qpid Server)edge-router
(Edge Router)edge-ui
(Classic UI)
コンポーネントのモニタリングを再開するには、次のコマンドを実行します。
/opt/apigee/apigee-service/bin/apigee-service apigee-monit monitor -c component_name
すべてのコンポーネントのモニタリングを解除(ただし停止はしない)
すべてのコンポーネントをモニタリング対象外にするには(ただし、コンポーネントを停止せずに)、次のコマンドを実行します。
/opt/apigee/apigee-service/bin/apigee-service apigee-monit unmonitor -c all
すべてのコンポーネントのモニタリングを再開するには、次のコマンドを実行します。
/opt/apigee/apigee-service/bin/apigee-service apigee-monit monitor -c all
すべてのコンポーネントを停止してモニタリング対象外にする
すべてのコンポーネントを停止してモニタリングを解除するには、次のコマンドを実行します。
/opt/apigee/apigee-service/bin/apigee-service apigee-monit unmonitor -c all
/opt/apigee/apigee-service/bin/apigee-all stop
すべてのコンポーネントを再起動してモニタリングを再開するには、次のコマンドを実行します。
/opt/apigee/apigee-service/bin/apigee-all start
/opt/apigee/apigee-service/bin/apigee-service apigee-monit monitor -c all
すべてのコンポーネントのモニタリングを停止するには、apigee-monit
を無効にします。
apigee-monit を停止、起動、無効にします。
apigee-monit を停止、起動、無効にする
他のサービスと同様に、apigee-monit
も apigee-service
を使用して停止および開始できます。
使用できます。また、apigee-monit
は unmonitor
コマンドをサポートしています。これにより、
コンポーネントのモニタリングを一時的に停止します。
apigee-monit を停止する
apigee-monit
を停止するには、次のコマンドを使用します。
/opt/apigee/apigee-service/bin/apigee-service apigee-monit stop
apigee-monit を起動する
apigee-monit
を起動するには、次のコマンドを使用します。
/opt/apigee/apigee-service/bin/apigee-service apigee-monit start
apigee-monit を無効にする
次のコマンドを使用して、ノード上のすべてのコンポーネントのモニタリングを一時停止できます。
/opt/apigee/apigee-service/bin/apigee-service apigee-monit unmonitor -c all
または、apigee-monit
をノードからアンインストールすることで、完全に無効にすることもできます。
apigee-monit
をアンインストールしてください。
apigee-monit をアンインストールする
apigee-monit
をアンインストールするには:
- </ph>
- 次のファイルを編集します。
/opt/apigee/customer/application/monit.properties
ファイルが存在しない場合は作成し、オーナーを「apigee」に設定します。user:
chown apigee:apigee /opt/apigee/customer/application/monit.properties
ファイルがすでに存在する場合、追加の構成プロパティが定義されている可能性があるので注意してください。 上の表の内容に加えて使用できます。それ以外のプロパティは、 使用できます。
プロパティの値を新しい値に設定するか、置き換えます。
たとえば、ログファイルの場所を
/tmp
に変更するには、 次のプロパティを使用します。conf_monit_monit_logdir=/tmp/apigee-monit.log
- 変更を
monit.properties
ファイルに保存します。 - 次のコマンドで
apigee-monit
を再読み込みします。/opt/apigee/apigee-service/bin/apigee-service apigee-monit reload
apigee-monit
が再起動しない場合は、apigee-monit
ログファイルにアクセスします。 - クラスタ内のノードごとにこの手順を繰り返します。
apigee-monit.cron
をコピーしてcron
サポートを追加する/etc/cron.d
ディレクトリに移動します。cp /opt/apigee/apigee-monit/cron/apigee-monit.cron /etc/cron.d/
apigee-monit.cron
ファイルを開いて編集します。apigee-monit.cron
ファイルは、実行するcron
ジョブを定義します。 ジョブの実行頻度を指定します次の例は、デフォルトの values:# Cron entry to check if monit process is running. If not start it */2 * * * * root /opt/apigee/apigee-service/bin/apigee-service apigee-monit monitor_monit
このファイルでは、次の構文を使用して、最初の 5 つのフィールドで
apigee-monit
がアクションを実行します。min hour day_of_month month day_of_week task_to_execute
たとえば、デフォルトの実行時間は
*/2 * * * *
で、cron
:apigee-monit
プロセスを 2 分ごとにチェックします。cron
ジョブを 1 分に 1 回より頻繁に実行することはできません。cron
の使用の詳細については、サーバー OS のドキュメントまたは できます。- 組織のポリシーに合わせて
cron
の設定を変更します。たとえば、 実行頻度を 5 分ごとに変更するには、ジョブ定義を次のように設定します。*/5 * * * * root /opt/apigee/apigee-service/bin/apigee-service apigee-monit monitor_monit
apigee-monit.cron
ファイルを保存します。- クラスタ内のノードごとにこの手順を繰り返します。
cron
ジョブ定義の後に空白行があります。- このファイルに定義されている
cron
ジョブは 1 つだけです。(コメント行は、 count.) /etc/cron.d/apigee-monit.cron
ファイルを削除します。sudo rm /etc/cron.d/apigee-monit.cron
コピーし直さなければならないため、 後で
cron
を再度有効にしてapigee-monit
を視聴します。または
/etc/cron.d/apigee-monit.cron
ファイルを編集してジョブをコメントアウトする 「#」を付け足せます。次に例を示します。# 10 * * * * root /opt/apigee/apigee-service/bin/apigee-service apigee-monit monitor_monit
conf_monit_httpd_port
httpd
デーモンのポート。apigee-monit
はダッシュボードに httpd
を使用します
レポート/サマリーを有効にすることができます。デフォルト値は 2812 です。
conf_monit_httpd_allow
httpd
デーモンへのリクエストに対する制約。apigee-monit
の用途
httpd
: ダッシュボード アプリを実行し、レポート/サマリーを有効にします。この値は
localhost(httpd
が実行されているホスト)を指します。
リクエストにユーザー名とパスワードが含まれることを必須にするには、次の構文を使用します。
conf_monit_httpd_allow=allow username:"password"\nallow 127.0.0.1
ユーザー名とパスワードを追加する場合は、「\n」を入力してください必要があります。禁止事項 実際の改行または改行を値に挿入します。
conf_monit_monit_datadir
conf_monit_monit_delay_time
apigee-monit
が待機する時間です。
実行されますこれは、apigee-monit
の最初のプロセス チェックにのみ影響します。conf_monit_monit_logdir
apigee-monit
ログファイルの場所。conf_monit_monit_retry_time
apigee-monit
が各プロセスのチェックを試みる頻度。デフォルトは 60
秒です。conf_monit_monit_rundir
apigee-monit
がプロセスのチェックに使用します。デフォルトの apigee-monit
制御設定をカスタマイズするには:
これは、Edge 以外のコンポーネント専用です。コンポーネント構成はカスタマイズできません 使用できます。
apigee-monit ログファイルにアクセスする
apigee-monit
は、イベント、再起動、構成の変更、アラートなど、すべてのアクティビティをログに記録します。
表示されます。
ログファイルのデフォルトの場所は次のとおりです。
/opt/apigee/var/log/apigee-monit/apigee-monit.log
デフォルトの場所は、apigee-monit
コントロールをカスタマイズすることで変更できます。
設定をご覧ください。
ログファイルのエントリの形式は次のとおりです。
'edge-message-processor' trying to restart [UTC Dec 14 16:20:42] info : 'edge-message-processor' trying to restart 'edge-message-processor' restart: '/opt/apigee/apigee-service/bin/apigee-service edge-message-processor monitrestart'
apigee-monit
ログファイルのエントリの形式はカスタマイズできません。
apigee-monit を使用して集約されたステータスを表示する
apigee-monit
には、集計されたステータス情報を表示する次のコマンドが含まれています。
コンポーネント:
コマンド | 用途 |
---|---|
report |
/opt/apigee/apigee-service/bin/apigee-service apigee-monit report |
summary |
/opt/apigee/apigee-service/bin/apigee-service apigee-monit summary |
以降のセクションでは、これらの各コマンドについて詳しく説明します。
レポート
report
コマンドは、稼働しているコンポーネントの数をまとめた概要を表示します。
停止しているか、現在初期化中であるか、ノードで現在モニタリングされていない状態になっていることを意味します。「
次の例では、report
コマンドを呼び出します。
/opt/apigee/apigee-service/bin/apigee-service apigee-monit report
次の例は、AIO(オールインワン)での report
の出力を示しています。
構成:
/opt/apigee/apigee-service/bin/apigee-service apigee-monit report up: 11 (100.0%) down: 0 (0.0%) initialising: 0 (0.0%) unmonitored: 1 (8.3%) total: 12 services
この例では、apigee-monit
によって 12 個のサービスのうち 11 個が稼働中と報告されています。1 つのサービスは
できます。
最初にConnection refused
report
コマンド。この場合、
conf_monit_monit_delay_time
プロパティを設定してから、もう一度お試しください。
概要
summary
コマンドは、各コンポーネントを一覧表示して、そのステータスを表示します。次の
この例では、summary
コマンドを呼び出します。
/opt/apigee/apigee-service/bin/apigee-service apigee-monit summary
次の例は、AIO(オールインワン)での summary
の出力を示しています。
構成:
/opt/apigee/apigee-service/bin/apigee-service apigee-monit summary Monit 5.25.1 uptime: 4h 20m Service Name Status Type host_name OK System apigee-zookeeper OK Process apigee-cassandra OK Process apigee-openldap OK Process apigee-qpidd OK Process apigee-postgresql OK Process edge-ui OK Process edge-qpid-server OK Remote Host edge-postgres-server OK Remote Host edge-management-server OK Remote Host edge-router OK Remote Host edge-message-processor OK Remote Host
最初の実行時に Connection refused
エラーが発生した場合
summary
コマンドの待機時間が完了するまで
conf_monit_monit_delay_time
プロパティを設定してから、もう一度お試しください。
apigee-monit をモニタリングする
各ノードで apigee-monit
が実行されていることを定期的に確認することをおすすめします。
apigee-monit
が実行されていることを確認するには、次のコマンドを使用します。
/opt/apigee/apigee-service/bin/apigee-service apigee-monit monitor_monit
このコマンドは、apigee-monit
を実行している各ノードで定期的に発行することをおすすめします。
これを行う方法の一つは、スケジュールされたタスクを実行する cron
などのユーティリティを使用することです。
使用できます。
cron
を使用して apigee-monit
をモニタリングするには:
cron
が apigee-monit
の監視を開始しない場合は、次の点を確認してください。
apigee-monit
を停止または一時的に無効にする場合は、この cron
ジョブを無効にする必要があります。
そうでなければ、cron
は apigee-monit
を再起動します。
cron
を無効にするには、次のいずれかを行います。