10.3.1 Dockerイメージ,Podmanイメージの作成方法
- 〈この項の構成〉
(1) 作業ディレクトリ下に準備する情報
作業ディレクトリ下に準備するファイルは,JP1/IM - Agentと同様です。IMエクスポーターのアドオンプログラムに関する定義ファイルは,confディレクトリ下に配置します。Script exporterの監視対象もコンテナで動かす場合は,同様にイメージに含む必要があります。
ここでは,JP1/IM - Agentのディレクトリ構成に追加するファイルを記載します。
作業ディレクトリ/
└ conf/
├ jpc_process_exporter.yml※1
├ jpc_script_exporter.yml※2
└ promitor/※3
├ scraper/※4
│├ runtime.yaml※5
│└ metrics-declaration.yaml※6
└ resource-discovery/※7
├ runtime.yaml※8
└ resource-discovery-declaration.yaml※9注※1 Process exporter設定ファイル(設定を変更する場合)
注※2 Script exporter設定ファイル(設定を変更する場合)
注※3 Promitor定義ファイル格納ディレクトリ(設定を変更する場合)
注※4 Promitor Scraper定義ファイル格納ディレクトリ(設定を変更する場合)
注※5 Promitor Scraper設定ファイル(設定を変更する場合)
注※6 Promitor Scraper runtime設定ファイル(設定を変更する場合)
注※7 Promitor Resource Discovery定義ファイル格納ディレクトリ(設定を変更する場合)
注※8 Promitor Resource Discovery設定ファイル(設定を変更する場合)
注※9 PromitorResource Discovery runtime設定ファイル(設定を変更する場合)
なお,サービスプリンシパル方式でAzureに接続する場合の構築手順は,次のとおりです。
-
「JP1/IM - Agentのコンテナ環境の構築」の構築手順のうち,「10.1.2(6) Promitorのセットアップ」の「(b) Azureに接続するための認証情報の設定」の手順4以外を実施し,作業ディレクトリ下にファイルを作成します。
-
コンテナを起動後,「10.1.2(6) Promitorのセットアップ」の「(b) Azureに接続するための認証情報の設定」の手順4を実施します。
-
Promitorのサービスを起動します。サービス管理については,「JP1/IM - Agentのコンテナ環境の構築」の説明を参照してください。
Dockerfileファイルの例を次に示します。
FROM oraclelinux:8 : ENV JP1IMAGENT_ADDON_PROMITOR_ACTIVE "no"※ ENV JP1IMAGENT_ADDON_PROCESS_EXPORTER_ACTIVE "yes" ENV JP1IMAGENT_ADDON_SCRIPT_EXPORTER_ACTIVE "no" : CMD [ "/bin/bash", "-c", "/opt/start.sh" ]
- 注※
-
"yes"の場合,コンテナ起動後に次のログが出力され,サービス起動に失敗した状態となります。認証情報を設定して再起動すると,正常に起動します。
Validation failed: Azure authentication is not configured correctly - No identity secret was configured for service principle authentication
supervisordのサービス定義ファイルの作成例を次に示します。
[unix_http_server] file=/tmp/supervisor.sock ; the path to the socket file : [program:process_exporter] command=コマンドライン directory=/opt/jp1ima/bin autostart=true stopwaitsecs=180