NetApp Kubernetes Monitoring Operator をインストールまたはアップグレードする前に
インストールまたはアップグレードする前にこの情報をお読みください"Kubernetes モニタリング オペレーター"。
| コンポーネント | 要件 |
|---|---|
Kubernetesバージョン |
Kubernetes v1.20 以上。 |
Kubernetesディストリビューション |
AWS Elastic Kubernetes Service (EKS) Azure Kubernetes Service (AKS) Google Kubernetes Engine (GKE) Red Hat OpenShift Rancher Kubernetes Engine (RKE) VMware Tanzu |
Linux OS |
Data Infrastructure Insights は、 Arm64 アーキテクチャで実行されているノードをサポートしていません。ネットワーク監視: Linux カーネル バージョン 4.18.0 以上を実行している必要があります。 Photon OS はサポートされていません。 |
ラベル |
Data Infrastructure Insights は、これらのプラットフォームで次の Kubernetes ラベルを検索する Kubernetes ノード セレクターを指定することにより、Linux を実行している Kubernetes ノードの監視をサポートします: Kubernetes v1.20 以上: Kubernetes.io/os = linux Rancher + cattle.io (オーケストレーション/Kubernetes プラットフォームとして): cattle.io/os = linux |
コマンド |
curl コマンドと kubectl コマンドが使用可能である必要があります。最良の結果を得るには、これらのコマンドを PATH に追加します。 |
接続 |
kubectl cli は、ターゲットの K8s クラスターと通信するように構成されており、 Data Infrastructure Insights環境にインターネット接続できます。インストール中にプロキシを使用している場合は、"プロキシサポートの設定"オペレータインストールのセクション。正確な監査とデータ レポートを行うには、ネットワーク タイム プロトコル (NTP) または簡易ネットワーク タイム プロトコル (SNTP) を使用してエージェント マシンの時刻を同期します。 |
その他 |
OpenShift 4.6以降を実行している場合は、"OpenShift の手順"これらの前提条件が満たされていることを確認することに加えて。 |
APIトークン |
Operator を再デプロイする場合 (つまり、更新または置換する場合)、新しい API トークンを作成する必要はなく、以前のトークンを再利用できます。 |
始める前に注意すべき重要な事項
こちらもご覧ください権限。
プロキシサポートの設定
NetApp Kubernetes Monitoring Operator をインストールするために、テナント上でプロキシを使用できる場所は 2 つあります。これらは同じプロキシ システムである場合もあれば、別のプロキシ システムである場合もあります。
-
インストール コード スニペットの実行中(「curl」を使用)に、スニペットが実行されるシステムをData Infrastructure Insights環境に接続するために必要なプロキシ
-
ターゲット Kubernetes クラスターがData Infrastructure Insights環境と通信するために必要なプロキシ
これらのいずれかまたは両方にプロキシを使用する場合、 NetApp Kubernetes Operating Monitor をインストールするには、まずプロキシがData Infrastructure Insights環境との良好な通信を許可するように構成されていることを確認する必要があります。たとえば、Operator をインストールするサーバー/VM から、 Data Infrastructure Insightsにアクセスし、 Data Infrastructure Insightsからバイナリをダウンロードできる必要があります。
NetApp Kubernetes Operating Monitor のインストールに使用するプロキシについては、Operator をインストールする前に、http_proxy/https_proxy 環境変数を設定します。一部のプロキシ環境では、no_proxy environment 変数も設定する必要がある場合があります。
変数を設定するには、 NetApp Kubernetes Monitoring Operator をインストールする前に、システムで次の手順を実行します。
-
現在のユーザーの https_proxy および/または http_proxy 環境変数を設定します。
-
セットアップするプロキシに認証 (ユーザー名/パスワード) がない場合は、次のコマンドを実行します。
export https_proxy=<proxy_server>:<proxy_port> .. セットアップするプロキシに認証 (ユーザー名/パスワード) がある場合は、次のコマンドを実行します。
export http_proxy=<proxy_username>:<proxy_password>@<proxy_server>:<proxy_port>
-
Kubernetes クラスターがData Infrastructure Insights環境と通信するために使用するプロキシについては、これらの手順をすべて読んだ後、 NetApp Kubernetes Monitoring Operator をインストールしてください。
NetApp Kubernetes Monitoring Operator をデプロイする前に、operator-config.yaml の AgentConfiguration の proxy セクションを構成します。
agent:
...
proxy:
server: <server for proxy>
port: <port for proxy>
username: <username for proxy>
password: <password for proxy>
# In the noproxy section, enter a comma-separated list of
# IP addresses and/or resolvable hostnames that should bypass
# the proxy
noproxy: <comma separated list>
isTelegrafProxyEnabled: true
isFluentbitProxyEnabled: <true or false> # true if Events Log enabled
isCollectorsProxyEnabled: <true or false> # true if Network Performance and Map enabled
isAuProxyEnabled: <true or false> # true if AU enabled
...
...
カスタムまたはプライベートDockerリポジトリの使用
デフォルトでは、 NetApp Kubernetes Monitoring Operator は、 Data Infrastructure Insightsリポジトリからコンテナ イメージをプルします。監視のターゲットとして Kubernetes クラスタが使用されており、そのクラスタがカスタムまたはプライベート Docker リポジトリまたはコンテナ レジストリからのみコンテナ イメージをプルするように構成されている場合は、 NetApp Kubernetes Monitoring Operator に必要なコンテナへのアクセスを構成する必要があります。
NetApp Monitoring Operator インストール タイルから「イメージ プル スニペット」を実行します。このコマンドは、 Data Infrastructure Insightsリポジトリにログインし、オペレーターのすべてのイメージ依存関係をプルし、 Data Infrastructure Insightsリポジトリからログアウトします。プロンプトが表示されたら、提供されたリポジトリの一時パスワードを入力します。このコマンドは、オプション機能を含む、オペレータが使用するすべてのイメージをダウンロードします。これらの画像がどの機能に使用されているかについては、以下を参照してください。
コアオペレーター機能とKubernetesモニタリング
-
netapp 監視
-
kube-rbac-プロキシ
-
kube-state-metrics
-
テレグラフ
-
ディストロレスルートユーザー
イベントログ
-
流暢なビット
-
kubernetes イベント エクスポーター
ネットワークパフォーマンスとマップ
-
ci-net-オブザーバー
企業ポリシーに従って、オペレーターの Docker イメージをプライベート/ローカル/エンタープライズ Docker リポジトリにプッシュします。リポジトリ内のこれらのイメージへのイメージ タグとディレクトリ パスが、 Data Infrastructure Insightsリポジトリのものと一致していることを確認します。
operator-deployment.yaml の monitoring-operator デプロイメントを編集し、すべてのイメージ参照を変更してプライベート Docker リポジトリを使用します。
image: <docker repo of the enterprise/corp docker repo>/kube-rbac-proxy:<kube-rbac-proxy version> image: <docker repo of the enterprise/corp docker repo>/netapp-monitoring:<version>
新しい docker リポジトリの場所を反映するように、operator-config.yaml の AgentConfiguration を編集します。プライベート リポジトリ用に新しい imagePullSecret を作成します。詳細については、https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/ を参照してください。
agent: ... # An optional docker registry where you want docker images to be pulled from as compared to CI's docker registry # Please see documentation for link:task_config_telegraf_agent_k8s.html#using-a-custom-or-private-docker-repository[using a custom or private docker repository]. dockerRepo: your.docker.repo/long/path/to/test # Optional: A docker image pull secret that maybe needed for your private docker registry dockerImagePullSecret: docker-secret-name
OpenShift の手順
OpenShift 4.6 以降で実行している場合は、operator-config.yaml の AgentConfiguration を編集して、runPrivileged 設定を有効にする必要があります。
# Set runPrivileged to true SELinux is enabled on your kubernetes nodes runPrivileged: true
Openshift は、一部の Kubernetes コンポーネントへのアクセスをブロックする可能性のある追加のセキュリティ レベルを実装する場合があります。
権限
監視対象のクラスタに、ClusterRoleを持たないカスタムリソースが含まれている場合、"表示する集計"イベント ログでこれらのリソースを監視するには、オペレーターにこれらのリソースへのアクセスを手動で許可する必要があります。
-
インストール前に operator-additional-permissions.yaml を編集するか、インストール後にリソース ClusterRole/<namespace>-additional-permissions を編集します。
-
動詞 ["get", "watch", "list"] を使用して、目的の apiGroup とリソースの新しいルールを作成します。参照\https://kubernetes.io/docs/reference/access-authn-authz/rbac/
-
変更をクラスターに適用する