Download PDF
Download page Azure AKS での Web モニタリング PSA および API モニタリング PSA の設定.
Azure AKS での Web モニタリング PSA および API モニタリング PSA の設定
次のように、Azure AKS での Web モニタリング PSA と API モニタリング PSA を設定します。既存の Kubernetes クラスタで PSA を設定する場合は、「Kubernetes クラスタの作成」セクションをスキップします。
- Kubernetes クラスタを作成します。
- Docker イメージをビルドしてカスタマイズします。
- イメージにタグを付け、レジストリにプッシュします。
- Web モニタリング PSA と API モニタリング PSA を展開します。
- Kubernetes クラスタをモニタします。
ほとんどの手順は、Web モニタリング PSA と API モニタリング PSA の両方に共通です。該当する場合は、手順の違いが強調表示されています。
このマニュアルには、Azure CLI のマニュアルへのリンクが記載されています。Azure CLI でそのマニュアルが管理されているため、AppDynamics は Azure CLI のマニュアルの正確さについては責任を負いません。
Kubernetes クラスタの作成
Azure AKS で Kubernetes クラスタを作成するには、次の手順を実行します。
Azure CLI をインストールして認証します。
リソースグループを作成するには、次のように入力します。
RESOURCE_GROUP=heimdall-onprem az group create --name $RESOURCE_GROUP --location eastus
CODEコンテナレジストリを作成するには、次のように入力します。
ACR_NAME=heimdallonprem az acr create --resource-group $RESOURCE_GROUP --name $ACR_NAME --sku Basic
CODEクラスタを作成するには、次のように入力します。
CLUSTER_NAME=heimdall-onprem az aks create \ --resource-group $RESOURCE_GROUP \ --name $CLUSTER_NAME \ --enable-managed-identity \ --kubernetes-version 1.x.x \ --node-count 4 \ --node-vm-size Standard_D8s_v3 \ --generate-ssh-keys \ --attach-acr $ACR_NAME
CODE上記のコードの
kubernetes-version
を、サポートされているバージョンのいずれかに置き換えます。サポートされている Kubernetes のバージョンを参照してください。上記のコードの
node-vm-size
とnode-count
は、推奨される設定タイプに従って選択されます。異なるタイプとノード数で、任意の設定を指定できます。 node-vm-size を参照してください。--attach-acr
コマンドを実行するには、Azure サブスクリプションの所有者または管理者である必要があります。
クラスタへのアクセス
Kubernetes クラスタにアクセスするには、次の手順に従って、クラスタとの対話型ユーティリティである kubectl をインストールします。
クラスタが実行されていることを確認するには、次のように入力します。
kubectl get nodes
Docker イメージのビルドとカスタマイズ
Simple Synth PSA のインストール用の zip ファイルは、Appdynamics ダウンロードポータルまたはベータアップロードツールからダウンロードできます。
このファイルには、エージェントのインストールとモニタリングの設定のための Dockerfile が含まれています。
- Web Monitoring PSA::sum-chrome-agent、sum-heimdall、および Helm チャートの Dockerfile
- API Monitoring PSA: sum-api-monitoring-agent、sum-heimdall、および Helm チャートの Dockerfile
sum-chrome-agent、sum-api-monitoring-agent、および sum-heimdall のイメージをビルドする場合は、Docker がインストールされていることを確認します。インストールされていない場合は、ここから Docker をダウンロードしてインストールできます。
sum-chrome-agent の場合:
- zip ファイルを解凍して、sum-chrome-agent ディレクトリにアクセスします。
ディレクトリに移動して、次のコマンドを実行します。
docker build -f Dockerfile-PSA -t sum-chrome-agent:<agent-tag> .
CODE
sum-api-monitoring-agent の場合:
- zip ファイルを解凍して、sum-api-monitoring-agent ディレクトリにアクセスします。
ディレクトリに移動して、次のコマンドを実行します。
docker build -f Dockerfile-PSA -t sum-api-monitoring-agent:<agent-tag> .
CODE
sum-heimdall の場合:
- zip ファイルを解凍して、sum-heimdall ディレクトリにアクセスします。
このディレクトリに移動して、次のコマンドを実行します。
docker build -f Dockerfile-PSA -t sum-heimdall:<heimdall-tag> .
CODE
<heimdall-tag> および <agent-tag> には、任意の値を使用できます。ただし、以降の手順で同じ値を使用します。
(オプション)カスタム Python ライブラリの追加
このセクションは、Web モニタリング PSA にのみ適用されます。
標準ライブラリセットに加えて、スクリプト測定用のカスタム Python ライブラリをエージェントに追加できます。カスタム Python ライブラリを追加するには、ダウンロードしたベースイメージを使用してイメージをビルドします。
Dockerfile を作成し、Python pip を実行する
RUN
ディレクティブを作成します。たとえば、algorithms
ライブラリをインストールするには、次のように Dockerfile を作成します。# Use the sum-chrome-agent image we just loaded as the base image FROM sum-chrome-agent:<agent-tag> # Install algorithm for python3 on top of that RUN python3 -m pip install algorithms==0.1.4 # We can add more RUN directives for installing more libraries # RUN python3 -m pip install ...
CODE任意の数の
RUN
ディレクティブを作成して、必要なライブラリをインストールできます。新しいイメージをビルドするには、次のように入力します。
docker build -t sum-chrome-agent:<agent-tag> - < Dockerfile
CODE新しくビルドされたエージェントイメージには、必要なライブラリが含まれています。
イメージのタグ付けとレジストリへのプッシュ
クラスタがアクセスできるように、イメージにタグを付けてレジストリにプッシュする必要があります。クラスタの作成時に ACR_NAME
環境変数を使用する必要があります。
イメージにタグを付けるには、次のように入力します。
Web Monitoring PSA:
ACR_LOGIN_SERVER=$ACR_NAME.azurecr.io
docker tag sum-heimdall:<heimdall-tag> $ACR_LOGIN_SERVER/sum-heimdall:<heimdall-tag>
docker tag sum-chrome-agent:<agent-tag> $ACR_LOGIN_SERVER/sum-chrome-agent:<agent-tag>
API Monitoring PSA:
ACR_LOGIN_SERVER=$ACR_NAME.azurecr.io
docker tag sum-heimdall:<heimdall-tag> $ACR_LOGIN_SERVER/sum-heimdall:<heimdall-tag>
docker tag sum-api-monitoring-agent:<agent-tag> $ACR_LOGIN_SERVER/sum-api-monitoring-agent:<agent-tag>
イメージをプッシュするには、次のように入力します。
Web Monitoring PSA:
az acr login --name $ACR_NAME
docker push $ACR_LOGIN_SERVER/sum-heimdall:<heimdall-tag>
docker push $ACR_LOGIN_SERVER/sum-chrome-agent:<agent-tag>
API Monitoring PSA:
az acr login --name $ACR_NAME
docker push $ACR_LOGIN_SERVER/sum-heimdall:<heimdall-tag>
docker push $ACR_LOGIN_SERVER/sum-api-monitoring-agent:<agent-tag>
Web モニタリング PSA および API モニタリング PSA の展開
Web モニタリング PSA および API モニタリング PSA をインストールするときは、それぞれの該当する一連の手順に必ず従ってください。一部の手順は、両方で共通しています。
イメージがレジストリに登録されると、アプリケーションはクラスタに展開されます。Helm チャートを使用して、必要な順序ですべての Kubernetes リソースを展開および作成します。
こちらの手順に従って、Helm をインストールします。
次のいずれかのデータベースを使用して PSA をインストールします。
データベース サポートされている PSA バージョン 22.6.0 以前 インメモリデータベース(Ignite)を使用する Heimdall 22.9.0 For Heimdall with Postgres database:
- Heimdall、Postgres データベース、および測定ポッドを実行する新しい測定名前空間を作成します。
Postgres データベース、またはインメモリデータベースを使用する Heimdall は、一度にいずれかを使用できます。
測定名前空間を作成するには、次のように入力します。
kubectl create namespace measurement
CODE1 つのコマンドを使用して、展開の詳細を含む Helm チャートを展開できます。エージェントを展開するには、以前にダウンロードした zip ファイルの Helm チャート
sum-psa-heimdall.tgz
を使用します。Private Synthetic Agent を展開する前に、いくつかの設定オプションを設定する必要があります。設定オプションを表示するには、すでにダウンロードしたsum-psa-heimdall.tgz
ファイルに移動し、次のように入力します。helm show values sum-psa-heimdall.tgz > values.yaml
CODE以下は、
values.yaml
ファイルで編集する必要がある設定キーと値のペアです。Web Monitoring PSA:
設定キー
値
heimdall > repository
$ACR_LOGIN_SERVER/sum-heimdall
heimdall > tag
<heimdall-tag>
heimdall > pullPolicy
Always
chromeAgent > repository
$ACR_LOGIN_SERVER/sum-chrome-agent
chromeAgent > tag
<agent-tag>
shepherd > url
Shepherd URL
shepherd > credentials
credentials
shepherd > location
agent location
API Monitoring PSA:
設定キー
値
1 heimdall > repository
$ACR_LOGIN_SERVER/sum-heimdall
2 heimdall > tag
<heimdall-tag>
3 heimdall > pullPolicy
Always
4 apiMonitoringAgent > repository
$ACR_LOGIN_SERVER/sum-api-monitoring-agent
5 apiMonitoringAgent > tag
<agent-tag>
6 shepherd > url
Shepherd URL
7 shepherd > credentials
credentials
8 shepherd > location
agent location
残りの値はデフォルトのままにすることも、要件に基づいて設定することもできます。シェパード URL、ログイン情報、場所、およびオプションのキーと値のペアの詳細については、「Private Synthetic Agent の設定」を参照してください。
For Heimdall with in-memory database (Ignite):
Ignite を使用するインメモリデータベースを用いる Heimdall、および測定ポッドを実行する新しい測定名前空間を作成します。
Postgres データベース、またはインメモリデータベースを使用する Heimdall は、一度にいずれかを使用できます。
測定名前空間を作成するには、次のように入力します。
kubectl create namespace measurement
CODE1 つのコマンドを使用して、展開の詳細を含む Helm チャートを展開できます。エージェントを展開するには、以前にダウンロードした zip ファイルの Helm チャート
sum-psa-heimdall.tgz
を使用します。Private Synthetic Agent を展開する前に、いくつかの設定オプションを設定する必要があります。設定オプションを表示するには、すでにダウンロードしたsum-psa-heimdall.tgz
ファイルに移動し、次のように入力します。helm show values sum-psa-heimdall.tgz > values.yaml
CODE以下は、
values.yaml
ファイルで編集する必要がある設定キーと値のペアです。Web Monitoring PSA:
設定キー
値
heimdall > repository
$ACR_LOGIN_SERVER/sum-heimdall
heimdall > tag
<heimdall-tag>
heimdall > pullPolicy
Always
heimdall > replicaCount
1
ignite > devmode
true
chromeAgent > repository
$ACR_LOGIN_SERVER/sum-chrome-agent
chromeAgent > tag
<agent-tag>
shepherd > url
Shepherd URL
shepherd > credentials
credentials
shepherd > location
agent location
複数のコンテナを作成することはできません。
API Monitoring PSA:
設定キー
値
heimdall > repository
$ACR_LOGIN_SERVER/sum-heimdall
heimdall > tag
<heimdall-tag>
heimdall > pullPolicy
Always
heimdall > replicaCount
1
ignite > devmode
true
apiMonitoringAgent > repository
$ACR_LOGIN_SERVER/sum-api-monitoring-agent
apiMonitoringAgent > tag
<agent-tag>
shepherd > url
Shepherd URL
shepherd > credentials
credentials
shepherd > location
agent location
複数のコンテナを作成することはできません。
残りの値はデフォルトのままにすることも、要件に基づいて設定することもできます。シェパード URL、ログイン情報、場所、およびオプションのキーと値のペアの詳細については、「Private Synthetic Agent の設定」を参照してください。
- Heimdall、Postgres データベース、および測定ポッドを実行する新しい測定名前空間を作成します。
上記の設定を使用して Helm チャートを展開するには、すでにダウンロードした
sum-psa-heimdall.tgz
ファイルに移動し、次のように入力します。helm install heimdall-onprem sum-psa-heimdall.tgz --values values.yaml --namespace measurement
CODEすべての Kubernetes リソースがクラスタに作成され、Heimdall を使用できます。数秒後、Heimdall が初期化され、コントローラに表示されます。
ポッドが実行されているかどうかを確認するには、次のように入力します。
kubectl get pods --namespace measurement
CODE初期導入後に
values.yaml
に変更を加えるには、すでにダウンロードしたsum-psa-heimdall.tgz
ファイルに移動して、次のように入力します。helm upgrade heimdall-onprem sum-psa-heimdall.tgz --values values.yaml --namespace measurement
CODE展開を削除するには、次のコマンドを実行します。
helm uninstall heimdall-onprem --namespace measurement
CODEこれは、必要でない限り推奨されません。
Kubernetes クラスタのモニタリング
ダウンロードした zip 内の Helm チャート sum-psa-monitoring.tgz
により、モニタリングスタックがインストールされます。この Helm チャートは、Private Simple Synthetic Agent をモニタするためのカスタム Grafana ダッシュボードとともに kube-prometheus-stack をインストールします。
この展開のモニタリングはオプションです。ただし、クラスタをモニタして正常性を定期的に確認することを強く推奨します。
モニタリングスタックのインストール
別の
monitoring
名前空間を作成するには、次のように入力します。kubectl create namespace monitoring
CODE設定オプションを確認するには、次のように入力します。
helm show values sum-psa-monitoring.tgz > values.yaml
CODEこれにより、すべての設定オプションを含む
values.yaml
ファイルが生成されます。Helm チャートのインストール中に生成されたvalues.yaml
ファイルを変更して渡すには、次のように入力します。helm install psa-monitoring sum-psa-monitoring.tgz --values values.yaml --namespace monitoring
CODEモニタリングスタックをインストールした後、(クラスタ内で実行される)Grafana を起動してダッシュボードを表示できます。クラスタの外部から Grafana にアクセスするには、ポートフォワーディングを設定するか、Ingress を設定します。ローカルにアクセスするようにポートフォワーディングを設定するには、次のように入力します。
kubectl port-forward svc/psa-monitoring-grafana 3000:80 --namespace monitoring
CODEブラウザから localhost:3000 を起動し、デフォルトのログイン情報(ユーザ名:
admin
、パスワード:prom-operator
)を使用して、ログインします。[Private Simple Synthetic Agent] という名前のダッシュボードに、Kubernetes クラスタ、Heimdall、インメモリデータベース(Ignite)を使用する Heimdall、Postgres、および実行中の測定に関する詳細が表示されます。