プライベート合成エージェントのアップグレード

PSA をアップグレードするには、次の手順を実行します。

  1. Docker イメージのビルド
  2. (オプション)カスタム Python ライブラリの追加
  3. イメージのタグ付けとレジストリへのプッシュ
  4. Helm チャートの更新
  5. PSA のアップグレード

Docker イメージのビルド

  1. AppDynamics ダウンロードポータルから最新バージョンの PSA ファイルをダウンロードします。このファイルには、エージェントのインストールとモニタリングの設定に使用される、sum-chrome-agent、sum-heimdall、および Helm チャートの Dockerfile が含まれています。
  2. sum-heimdall のイメージをビルドします。

    sum-chrome-agent および sum-heimdall のイメージをビルドする場合は、Docker がインストールされていることを確認します。インストールされていない場合は、ここから Docker をダウンロードしてインストールできます。

    1. ファイルを解凍して、sum-heimdall ディレクトリにアクセスします。 
    2. ディレクトリに移動して、次のコマンドを実行します。

      docker build -f Dockerfile-PSA -t sum-heimdall:<heimdall-tag> .
      CODE

      <heimdall-tag> および <agent-tag> には、任意の値を使用できます。ただし、以降の手順で同じ値を使用します。

カスタム Python ライブラリの追加

この手順は任意です。使用可能な標準ライブラリセットに加えて、スクリプト測定で使用するカスタム Python ライブラリをエージェントに追加できます。ベースイメージとしてロードしたイメージに基づいて新しいイメージをビルドします。

  1. 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 ディレクティブを作成して、必要なライブラリをインストールできます。

  2. 新しいイメージをビルドするには、次のように入力します。

    docker build -t sum-chrome-agent:<agent-tag> - < Dockerfile
    CODE

    新しくビルドされたエージェントイメージには、必要なライブラリが含まれています。

イメージのタグ付けとレジストリへのプッシュ

EKS や AKS などのマネージド Kubernetes サービスは、イメージをプッシュできるコンテナレジストリを提供します。その他の設定は必要ありません。EKS または AKS 内の Kubernetes クラスタは、これらのイメージにアクセスできます。

クラスタがアクセスできるように、イメージにタグを付けてレジストリにプッシュする必要があります。Amazon EKS クラスタは、AWS が提供するマネージドレジストリである Elastic Container Registry(ECR)からイメージをプルします。 

Vanilla K8S は AWS インフラストラクチャで実行されるため、Kubernetes Operations(kops)が適切なロールを作成してクラスタノードに割り当て、それらは ECR に直接アクセスできます。その他の設定は必要ありません。そのため、プロセスは、EC2 を使用する EKS と Vanilla K8S の両方で同じです。

イメージにタグを付けるには、次のように入力します。

docker tag sum-heimdall:<heimdall-tag> <aws_account_id>.dkr.ecr.<region>.amazonaws.com/sum/sum-heimdall:<heimdall-tag>
docker tag sum-chrome-agent:<agent-tag> <aws_account_id>.dkr.ecr.<region>.amazonaws.com/sum/sum-chrome-agent:<agent-tag>
CODE

<aws_account_id><region> をアカウント ID とリージョンの値に置き換える必要があります。 

リポジトリを作成するには、次のように入力します。

aws ecr create-repository --repository-name sum/sum-heimdall
aws ecr create-repository --repository-name sum/sum-chrome-agent
CODE

イメージをプッシュするには、次のように入力します。

aws ecr get-login-password --region us-west-2 | docker login --username AWS --password-stdin <aws_account_id>.dkr.ecr.<region>.amazonaws.com
docker push <aws_account_id>.dkr.ecr.<region>.amazonaws.com/sum/sum-heimdall:<heimdall-tag>
docker push <aws_account_id>.dkr.ecr.<region>.amazonaws.com/sum/sum-chrome-agent:<agent-tag>
CODE

Helm チャートの更新

次の手順に従って、values.yaml ファイル内の設定キーと値のペアを更新します。

PSA のアップグレード

新しい Linux ディストリビューション フォルダに移動して、次のコマンドを実行します。

helm upgrade heimdall-onprem sum-psa-heimdall.tgz --values values.yaml --namespace measurement
CODE