Download PDF
Download page Azure AKS での Private Synthetic Agent の設定.
Azure AKS での Private Synthetic Agent の設定
Azure AKS で Private Synthetic Agent を設定するには、次の手順を実行します。
- Kubernetes クラスタを作成します。
- Docker イメージをビルドしてカスタマイズします。。
- イメージにタグを付け、レジストリにプッシュします。
- Private Synthetic Agent を展開します。
- Kubernetes クラスタをモニタします。
このマニュアルには、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.18.10 \ --node-count 4 \ --node-vm-size Standard_D8s_v3 \ --generate-ssh-keys \ --attach-acr $ACR_NAME
CODE上記のコードの
node-vm-size
とnode-count
は、推奨される設定タイプに従って選択されます。異なるタイプとノード数で、任意の設定を指定できます。node-vm-size を参照してください。
クラスタへのアクセス
Kubernetes クラスタにアクセスするには、次の手順に従って、クラスタとの対話型ユーティリティである kubectl をインストールします。
クラスタが実行されていることを確認するには、次のように入力します。
kubectl get nodes
Docker イメージのビルドとカスタマイズ
Simple Synth PSA のインストール用の zip ファイルは、Appdynamics ダウンロードポータルまたはベータアップロードツールからダウンロードできます。このファイルには、エージェントのインストールとモニタリングの設定に使用される、sum-chrome-agent、sum-heimdall、および Helm チャートの Dockerfile が含まれています。sum-chrome-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-heimdall の場合:
- zip ファイルを解凍して、sum-heimdall ディレクトリにアクセスします。
このディレクトリに移動して、次のコマンドを実行します。
docker build -f Dockerfile-PSA -t sum-heimdall:<heimdall-tag> .
CODE
<heimdall-tag> および <agent-tag> には、任意の値を使用できます。ただし、以降の手順で同じ値を使用します。
カスタム Python ライブラリの追加
標準ライブラリセットに加えて、スクリプト測定用のカスタム 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
環境変数を使用する必要があります。
イメージにタグを付けるには、次のように入力します。
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>
イメージをプッシュするには、次のように入力します。
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>
Private Synthetic Agent の展開
イメージがレジストリに登録されると、アプリケーションはクラスタに展開されます。Helm チャートを使用して、必要な順序ですべての Kubernetes リソースを展開および作成します。
こちらの手順に従って、Helm をインストールします。
Heimdall、Postgres データベース、および測定ポッドを実行する新しい測定名前空間を作成します。
測定名前空間を作成するには、次のように入力します。
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
ファイルで編集する必要がある設定キーと値のペアです。設定キー 値 heimdall > repository
$ACR_LOGIN_SERVER/sum-heimdall
heimdall > tag
<heimdall-tag>
agent > repository
$ACR_LOGIN_SERVER/sum-chrome-agent
agent > tag
<agent-tag>
shepherd > url
Shepherd URL
shepherd > credentials
credentials
shepherd > location
agent location
残りの値はデフォルトのままにすることも、要件に基づいて設定することもできます。シェパード URL、ログイン情報、場所、およびオプションのキーと値のペアの詳細については、「Private Synthetic Agent の設定」を参照してください。
上記の設定を使用して 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、Postgres、および実行中の測定に関する詳細が表示されます。