本文へスキップ

Docker環境インストール

Dockerコンテナベースで実行するPHPアプリケーションに、WhaTapモニタリングエージェントを適用し、コンテナイメージをパッケージングする手順を次のように案内します。

エージェントダウンロード

PHPアプリケーションのDockerイメージビルド時、whatap-phpパッケージをインストールしてください。

x64
RUN wget https://s3.ap-northeast-2.amazonaws.com/repo.whatap.io/alpine/x86_64/whatap-php.tar.gz
RUN tar -xvzf whatap-php.tar.gz -C /

エージェント設定

  • 次のコマンドを使用してインストールスクリプトを設定してください。 WhaTapアクセスキー、サーバーIP情報を入力すると、PHP環境情報を自動的に収集します。

    RUN (echo "[アクセスキー]"; echo "[サーバーIP]")|/usr/whatap/php/install.sh
  • 次のような方法で、PHP環境情報を直接入力することもできます。

    # RUN /usr/whatap/php/install.sh -l [アクセスキー] -s [サーバーIP] -v [PHPバージョンx.x] -i [php.iniのフルパス] -p [プロセス名] -z [thread safety]
    RUN /usr/whatap/php/install.sh -l xxxxx -s 1.1.1.1/2.2.2.2 -v 7.0 -i /etc/php.ini -p httpd [-z]
ノート

アクセスキーがDocker Publicのイメージにオープンされないように注意してください。

コンテナ環境変数の設定

Dockerビルド後、Kubernetes環境内のコンテナ環境変数を設定します。 アプリケーションのリリーズyamlファイルに次の内容を追加します。


env:
- name: NODE_IP
valueFrom: {fieldRef: {fieldPath: status.hostIP}}
- name: NODE_NAME
valueFrom: {fieldRef: {fieldPath: spec.nodeName}}
- name: POD_NAME
valueFrom: {fieldRef: {fieldPath: metadata.name}}

次の例を参照にしてください。

apiVersion: v1
kind: Pod
metadata:
name: # Pod Name
labels: # Pod Labels
spec:
containers:
env:
- name: NODE_IP
valueFrom: {fieldRef: {fieldPath: status.hostIP}}
- name: NODE_NAME
valueFrom: {fieldRef: {fieldPath: spec.nodeName}}
- name: POD_NAME
valueFrom: {fieldRef: {fieldPath: metadata.name}}
ノート

環境変数の役割

  • NODE_IP: 現在のPodがホストされているノード(Node)のIPアドレスを収集します。

  • NODE_NAME: 現在Podが実行中のノードの名前を収集します。

  • POD_NAME: 現在のPodの名前を収集します。

エージェント実行

アプリケーション開始コマンドの前にwhatap-php開始コマンドを追加します。

sh -c "/usr/whatap/php/whatap-php start && [アプリケーション開始コマンド]"

次のコマンドを実行して、WhaTapサービスが正常に実行されているかを確認してください。 アプリケーションサーバーが実行されると、エージェントがモニタリング情報を収集します。


ps -ef | grep whatap_php

エージェントのインストール確認

エージェントが正常にインストールされたかを確認するには、ダッシュボード > ダッシュボードメニューへ移動してください。

ダウンロードしたファイルをインストールした後にダッシュボードメニューからエージェントが表示されない場合は、次の事項を確認してください。

  • コンテナでps -ef | grep whatapコマンドを実行し、エージェントオプションを適用されていることを確認してください。

  • 該当コンテナ内の_/usr/whatap/php/logs_経路の内容を確認してください。 エージェントログは、logs/whatap-{boot、またはinstall}-yyyymmdd.log 形式のファイル名として出力されます。