Helm チャートを使用したインフラストラクチャの可視性のインストール
このページでは、クラスターエージェントの Helm チャートを使用してインフラストラクチャの可視性(InfraViz)を展開する方法について説明します。
Helm は Kubernetes のパッケージマネージャです。Helm チャートは、一連の Kubernetes リソースについて説明するファイルのコレクションです。クラスターエージェントの Helm チャートは、Splunk AppDynamics オペレータと InfraViz を展開するのに便利な方法です。
要件
-
マシン エージェント バージョン 21.9.0 以降
-
NetViz バージョン 21.3.0 以降
-
コントローラバージョン 20.6.0 以降
-
クラスタエージェントの Helm チャートが Helm 3.0 と互換性を持っている
クラスターにインフラストラクチャの可視性をインストールする
設定オプション
| 構成オプション | 説明 | 必須 |
|---|---|---|
installInfraViz | InfraViz のインストールに使用されます。これは true に設定する必要があります。 | 必須(デフォルトは false) |
| イメージ設定オプション(values.yaml 内の imageInfo キーの下にあるオプション) | ||
imageInfo.operatorImage | <registryUrl>/<registryAccount>/cluster-agent-operator 形式のオペレータのイメージアドレス | オプション(デフォルトは Docker ハブイメージ) |
imageInfo.operatorTag | オペレータのイメージタグ/バージョン | オプション(デフォルトは 22.1.0) |
imageInfo.imagePullPolicy | オペレータポッドのイメージプルポリシー | オプション |
imageInfo.machineAgentImage | <registryUrl>/<registryAccount>/machine-agent 形式のマシンエージェントのイメージアドレス | オプション(デフォルトは Docker Hub イメージ) |
imageInfo.machineAgentTag | マシンエージェントのイメージタグ/バージョン | オプション(デフォルトは最新) |
ImageInfo.netVizImage | <registryUrl>/<registryAccount>/machine-agent-netviz 形式の NetViz エージェントのイメージアドレス | オプション(デフォルトは Docker ハブイメージ) |
ImageInfo.netvizTag | NetViz エージェントのイメージタグ/バージョン | オプション(デフォルトは最新) |
| コントローラ設定オプション(values.yaml の controllerInfo キーの下にある設定オプション) | ||
controllerInfo.accessKey | コントローラのアクセスキー | 必須 |
controllerInfo.globalAccount | コントローラのグローバルアカウント | 必須 |
controllerInfo.account | コントローラアカウント | 必須 |
controllerInfo.authenticateProxy | プロキシが認証を必要とする場合は true または false | オプション |
controllerInfo.customSSLCert | PEM 形式の SSL 証明書の Base64 エンコーディング | オプション |
controllerInfo.password | コントローラのパスワード | 自動インストルメンテーションが有効になっている場合にのみ必須です。 |
controllerInfo.proxyPassword | プロキシ認証のパスワード | オプション |
controllerInfo.proxyUrl | コントローラが一部のプロキシの背後にある場合のプロキシ URL | オプション |
controllerInfo.proxyUser | プロキシ認証のユーザ名 | オプション |
controllerInfo.url | コントローラ URL | 必須 |
controllerInfo.keyStoreFileSecret | カスタム SSL 構成を適用するキーストアファイル | オプション |
controllerInfo.keyStorePasswordSecret | カスタム SSL 構成を適用するキーストアパスワード | オプション |
controllerInfo.username | コントローラのユーザー名 | 自動インストルメンテーションが有効になっている場合にのみ必須です。 |
| RBAC 設定 | ||
infravizServiceAccount | InfraViz が使用するサービスアカウント | オプション |
createServiceAccount | 前述された ServiceAccounts が Helm によって作成される場合は true を設定 | オプション |
operatorServiceAccount | Splunk AppDynamics オペレータが使用するサービスアカウント | オプション |
| NetViz 設定 | ||
netViz.resourcesNetViz | ネットワークの可視性(NetViz)コンテナのリソースを設定 | オプション |
| netViz.netVizPort | 0 より大きい場合、ネットワークエージェントはマシンエージェントとともにサイドカーに展開されます。デフォルトでは、ネットワークの可視性エージェントはポート 3892 で動作します。 | オプション |
netViz.securityContext.runAsGroup | アプリケーションコンテナを非ルートユーザとして構成した場合は、対応するグループの を提供します。 これにより、エージェント アーティファクトに適切なファイル権限が設定されます。 この値は、インストゥルメント化されたすべてのリソースに適用されます。 runAsGroup のデフォルト値をオーバーライドする必要がある場合は、このパラメータを追加します。 | オプション |
netViz.securityContext.runAsUser | :アプリケーションコンテナを非ルートユーザーとして構成した場合は、対応するユーザーの を提供します。 これにより、エージェント アーティファクトに適切なファイル権限が設定されます。 この値は、インストゥルメント化されたすべてのリソースに適用されます。 runAsUser のデフォルト値をオーバーライドする必要がある場合は、このパラメータを追加します。 | オプション |
| netViz.securityContext.allowPrivilegeEscalation | プロセスが親プロセスよりも多くの権限を取得できるかどうかを制御します。次のコンテナとして実行されている場合、この値は true です。
注: このパラメータは、現在、Deployment および DeploymentConfig モードで使用できます。 | オプション |
| netViz.securityContext.capabilities | 実行中のコンテナの POSIX 機能を追加または削除します。これは、コンテナランタイムにデフォルトの機能セットを使用します。 これらの値は、値を指定するかどうかに関係なく、デフォルトで含まれます。
機能に値を指定すると、Helm はデフォルト値とともにその値を考慮します。 注: このパラメータは、現在、Deployment および DeploymentConfig モードで使用できます。 | オプション |
| netViz.securityContext.privileged | ホストでのルートに相当する特権モードでコンテナを実行します。 注: このパラメータは、現在、Deployment および DeploymentConfig モードで使用できます。 | オプション |
| netViz.securityContext.procMount | コンテナに使用する proc マウントのタイプ。 注: このパラメータは、現在、Deployment および DeploymentConfig モードで使用できます。 | オプション |
| netViz.securityContext.readOnlyRootFilesystem | このコンテナに読み取り専用のルートファイルシステムがあるかどうかを指定します。 注: このパラメータは、現在、Deployment および DeploymentConfig モードで使用できます。 | オプション |
| netViz.securityContext.runAsNonRoot | コンテナを非ルートユーザーとして実行する必要があるかどうかを指定します。 この値が true の場合、Kubelet は実行時にイメージを検証して、ルートとして実行したときにコンテナの開始が失敗することを確認します。このパラメータが指定されていない場合、または値が false の場合、検証は行われません。 注: このパラメータは、現在、Deployment および DeploymentConfig モードで使用できます。 | オプション |
| netViz.securityContext.seLinuxOptions | SELinux コンテキストをコンテナに適用します。このパラメータが指定されていない場合、コンテナランタイムは各コンテナにランダムな SELinux コンテキストを割り当てます。 注: このパラメータは、現在、Deployment および DeploymentConfig モードで使用できます。 | オプション |
| netViz.securityContext.seccompProfile | コンテナで使用される seccomp オプションを指定します。ポッドレベルとコンテナレベルの両方で seccomp オプションが指定されている場合、コンテナオプションはポッドオプションをオーバーライドします。 注: このパラメータは、現在、Deployment および DeploymentConfig モードで使用できます。 | オプション |
| netViz.securityContext.windowsOptions | すべてのコンテナに Windows 固有のオプションを指定します。 注: このパラメータは、現在、Deployment および DeploymentConfig モードで使用できます。 | オプション |
| InfraViz 設定 | ||
infraViz.appName | クラスタ名としてコントローラ UI に表示されるクラスタの名前。この設定によって、master、worker、infra、worker-infra ロールに基づいてクラスタのノードがグループ化され、メトリックブラウザに表示されます。 | オプション |
infraViz.enableContainerd | Containerd 可視性の有効化true または false のいずれかを指定します。デフォルト値は false です。 | オプション |
infraViz.enableContainerHostId | コンテナ名の導出方法を決定するフラグ。true または false を指定します。 | 必須 |
infraViz.enableMasters | デフォルトでは、ワーカーノードのみがモニタされます。true に設定すると、マスターノードに対してサーバーの可視性が提供されます。管理対象の Kubernetes プロバイダーの場合、マスタープレーンにアクセスできないため、フラグは無効です。 | オプション |
infraViz.enableServerViz | サーバの可視性の有効化 | 必須 |
infraViz.enableDockerViz | Docker の可視性の有効化 | 必須 |
infraViz.eventServiceUrl | イベント サービス エンドポイント。 | オプション |
infraViz.runAsUser | コンテナプロセスのエントリポイントを実行する UID(ユーザー ID)。UID を指定しない場合、これはデフォルトで、イメージで指定されたユーザー ID になります。
他の UID で実行する必要がある場合は、グループ ID を変更せずに、runAsUser の UID を変更します。 runAsUser infraviz.securityContext securityContext infraViz.runasUser を指定する場合 注: このパラメータは廃止されます。infraviz.securityContext.runAsUser の使用を推奨します。 | オプション |
infraViz.logProperties.logLevel | ロギングの冗長性のレベル。有効なオプションは、info または debug です。 | オプション |
infraViz.metricProperties.metricsLimit | マシンエージェントがコントローラに送信するメトリックの最大数。 | オプション |
infraViz.propertyBag | その他のマシン エージェント パラメータを含む文字列 | オプション |
infraViz.runAsGroup | コンテナプロセスのエントリポイントを実行する GID(グループ ID)。ID を指定しない場合、これはイメージで指定された UID を使用します。 docker.io/appdynamics/machine-agent docker.io/appdynamics/machine-agent-analytics:latest runAsGroup infraviz.securityContext securityContext infraViz.runasGroup も指定する場合 注: このパラメータは廃止されます。infraviz.securityContext.runAsGroup の使用を推奨します。 | オプション |
infraViz.stdoutLogging | ログをファイルに保存するか、コンソールにリダイレクトするかを決定します。 | オプション |
infraViz.uniqueHostId | Splunk AppDynamics の一意のホスト ID。有効なオプションは、spec.nodeName、status.hostIP です。 | オプション |
infraViz.securityContext.runAsGroup | アプリケーションコンテナを非ルートユーザとして構成した場合は、対応するグループの を提供します。 これにより、エージェント アーティファクトに適切なファイル権限が設定されます。 この値は、インストゥルメント化されたすべてのリソースに適用されます。 runAsGroup のデフォルト値をオーバーライドする必要がある場合は、このパラメータを追加します。 | オプション |
infraViz.securityContext.runAsUser | :アプリケーションコンテナを非ルートユーザーとして構成した場合は、対応するユーザーの を提供します。 これにより、エージェント アーティファクトに適切なファイル権限が設定されます。 この値は、インストゥルメント化されたすべてのリソースに適用されます。 runAsUser のデフォルト値をオーバーライドする必要がある場合は、このパラメータを追加します。 | オプション |
| infraViz.securityContext.allowPrivilegeEscalation | プロセスが親プロセスよりも多くの権限を取得できるかどうかを制御します。次のコンテナとして実行されている場合、この値は true です。
このパラメータを設定しない場合、Helm はデフォルト値 true を使用します。 注: このパラメータは、現在、Deployment および DeploymentConfig モードで使用できます。 | オプション |
| infraViz.securityContext.capabilities | 実行中のコンテナの POSIX 機能を追加または削除します。これは、コンテナランタイムにデフォルトの機能セットを使用します。 注: このパラメータは、現在、Deployment および DeploymentConfig モードで使用できます。 | オプション |
| infraViz.securityContext.privileged | ホストでのルートに相当する特権モードでコンテナを実行します。 このパラメータを設定しない場合、Helm はデフォルト値 true を使用します。 注: このパラメータは、現在、Deployment および DeploymentConfig モードで使用できます。 | オプション |
| infraViz.securityContext.procMount | コンテナに使用する proc マウントのタイプ。 注: このパラメータは、現在、Deployment および DeploymentConfig モードで使用できます。 | オプション |
| infraViz.securityContext.readOnlyRootFilesystem | このコンテナに読み取り専用のルートファイルシステムがあるかどうかを指定します。 注: このパラメータは、現在、Deployment および DeploymentConfig モードで使用できます。 | オプション |
| infraViz.securityContext.runAsNonRoot | コンテナを非ルートユーザーとして実行する必要があるかどうかを指定します。 この値が true の場合、Kubelet は実行時にイメージを検証して、ルートとして実行したときにコンテナの開始が失敗することを確認します。このパラメータが指定されていない場合、または値が false の場合、検証は行われません。 注: このパラメータは、現在、Deployment および DeploymentConfig モードで使用できます。 | オプション |
| infraViz.securityContext.seLinuxOptions | SELinux コンテキストをコンテナに適用します。このパラメータが指定されていない場合、コンテナランタイムは各コンテナにランダムな SELinux コンテキストを割り当てます。 注: このパラメータは、現在、Deployment および DeploymentConfig モードで使用できます。 | オプション |
| infraViz.securityContext.seccompProfile | コンテナで使用される seccomp オプションを指定します。ポッドレベルとコンテナレベルの両方で seccomp オプションが指定されている場合、コンテナオプションはポッドオプションをオーバーライドします。 注: このパラメータは、現在、Deployment および DeploymentConfig モードで使用できます。 | オプション |
| infraViz.securityContext.windowsOptions | すべてのコンテナに Windows 固有のオプションを指定します。 注: このパラメータは、現在、Deployment および DeploymentConfig モードで使用できます。 | オプション |
| InfraViz のポッド設定 | ||
infravizPod.nodeSelector | InfraViz のポッド仕様の Kubernetes ノードセレクタフィールド。 | オプション |
infravizPod.resources | InfraViz のポッド仕様の Kubernetes CPU およびメモリのリソース。 | オプション |
infravizPod.imagePullPolicy | InfraViz ポッドのイメージプルポリシー。 | オプション |
infravizPod.imagePullSecret | プライベート Docker レジストリまたはリポジトリからイメージを取得する場合の認証に使用されるクレデンシャルファイル。 | オプション |
infravizPod.priorityClassName | ポッドの仕様で優先順位を設定するために使用される、ポッド優先順位クラスの名前。 | オプション |
infravizPod.env | 環境変数のリスト。 | オプション |
infravizPod.overrideVolumeMounts | volumeMounts のリスト。 | オプション |
infravizPod.tolerations | ノードに関連付けられている taint に基づく許容値のリスト。 | オプション |
| オペレータのポッド設定 | ||
operatorPod.nodeSelector | Splunk AppDynamics オペレータのポッド仕様の Kubernetes ノードセレクタフィールド | オプション |
operatorPod.tolerations | Splunk AppDynamics オペレータのポッド仕様の Kubernetes 許容フィールド | オプション |
operatorPod.resources | Splunk AppDynamics オペレータポッド仕様の Kubernetes CPU およびメモリのリソース | オプション |
機密データのベストプラクティス
複数の values.yaml ファイルを使用して、機密データを個別の values.yaml ファイルに分けることを推奨します。これらの値の例を次に示します。
-
controllerInfo.password -
controllerInfo.accessKey -
controllerInfo.customSSLCert -
controllerInfo.proxyPassword
各値
user-values.yamlDefault
# To install InfraViz
installInfraViz: true
imageInfo:
operatorImage: docker.io/appdynamics/cluster-agent-operator
operatorTag: 22.1.0
imagePullPolicy: Always # Will be used for operator pod
machineAgentImage: docker.io/appdynamics/machine-agent
machineAgentTag: latest
netVizImage: docker.io/appdynamics/machine-agent-netviz
netvizTag: latest
controllerInfo:
url: https://<controller-url>:443
account: <appdynamics-controller-account>
username: <appdynamics-controller-username>
password: <appdynamics-controller-password>
accessKey: <appdynamics-controller-access-key>
infravizServiceAccount: appdynamics-infraviz-ssl # Can be any valid name
operatorServiceAccount: appdynamics-operator-ssl # Can be any valid name
controllerInfo:
password: welcome
accessKey: abc-def-ghi-1516
Helm チャートをインストールする場合は、複数の -f を使用します
helm install -f ./user-values.yaml -f ./user-values-sensitive.yaml "<my-cluster-agent-helm-release>" appdynamics-cloud-helmcharts/cluster-agent --namespace ca-appdynamics
クラスタへのクラスタエージェントおよびインフラストラクチャの可視性のインストール
クラスターエージェントとインフラストラクチャの可視性を同時にインストールするには、「クラスターにインフラストラクチャの可視性をインストールする」に記載されている手順と同じ手順に従い、以下の更新を行います。