NetApp Kubernetes Monitoring Operatorの設定
寄稿者
Cloud Insights では、などの多くのコンポーネントが使用されます "流暢なビット" および "Tegraf"をクリックしてください。Telegraf はプラグインベースのサーバエージェントで、指標、イベント、ログの収集とレポートに使用できます。入力プラグインは、システム /OS に直接アクセスするか、サードパーティ API を呼び出すか、設定されたストリームをリスニングすることによって、エージェントに必要な情報を収集するために使用されます(例:) Kafka や StatsD など)を参照してください。出力プラグインは、収集した指標、イベント、およびログをエージェントから Cloud Insights に送信するために使用します。
Cloud Insights では、Kubernetesコレクション向けにNetApp Kubernetes Monitoring Operator *(NKMO)を提供しています。データコレクタを追加するときは、「Kubernetes」タイルを選択するだけです。
以下は、オペレータが環境内のどこに配置されているかを示す大まかな図です。環境によっては、_Proxy Server_が必要になる場合と不要になる場合があります。
演算子(NKMO)とデータコレクタは、Cloud Insights Dockerレジストリからダウンロードされます。インストールが完了すると、NKMOはKubernetesクラスタノードに導入されたOperator互換コレクタを管理してデータを取得します。これには、コレクタのライフサイクルの管理も含まれます。このチェーンに続いて、データがコレクタから取得され、Cloud Insights に送信されます。
NetApp Kubernetes Monitoring Operatorをインストールする前に
-
カスタムまたはプライベートDockerリポジトリを使用している場合は、「カスタムまたはプライベートDockerリポジトリの使用」セクションの手順に従います
-
NetApp Kubernetes Monitoring Operatorインストールは、Kubernetesバージョン1.20以降でサポートされます。
-
Cloud Insights がバックエンドストレージを監視しており、KubernetesがDockerコンテナランタイムとともに使用されている場合、Cloud Insights はNFSおよびiSCSIのポッドとPVとストレージのマッピングと指標を表示できます。それ以外のランタイムではNFSのみが表示されます。
-
2022年8月より、NetApp Kubernetes Monitoring Operatorにはポッドのセキュリティポリシー(PSP)のサポートが含まれます。環境でPSPを使用している場合は、最新のNetApp Kubernetes Monitoring Operatorにアップグレードする必要があります。
-
OpenShift 4.6以降を実行している場合は、以下の前提条件を満たしていることを確認するだけでなく、以下のOpenShiftの手順に従う必要があります。
-
監視はLinuxノードにのみインストールCloud Insights は、Linuxを実行しているKubernetesノードの監視をサポートしています。これには、これらのプラットフォームで次のKubernetesラベルを検索するKubernetesノードセレクタを指定します。
プラットフォーム |
ラベル |
Kubernetes v1.20以降 |
Kubernetes の IO / OS = Linux |
Rancher + catt.io をオーケストレーション / Kubernetes プラットフォームとして使用 |
catt.io/os=linux |
-
NetApp Kubernetes Monitoring Operatorとその依存関係(テレグラム、kube-state-metrics、Fluentbitなど)は、Arm64アーキテクチャで実行されているノードではサポートされません。
-
次のコマンドが使用可能である必要があります。curl、kubectl。オプションのインストール手順にはdockerコマンドが必要です。最適な結果を得るには、これらのコマンドをパスに追加してください。kubectlは、少なくとも次のKubernetesオブジェクトにアクセスできるように設定する必要があります。エージェント、クラスタロール、クラスタロールバインド、カスタムリソース定義、導入、 ネームスペース’ロール’ロールバインド’シークレット’サービスアカウント' サービスを提供します。これらの最小クラスタロール権限を持つ.yamlファイルの例については、こちらを参照してください。
-
NetApp Kubernetes Monitoring Operatorのインストールに使用するホストは、ターゲットのKubernetesクラスタと通信するようにkubectlを設定し、Cloud Insights 環境にインターネット接続できるようにする必要があります。
-
インストール中にプロキシの背後にいる場合、または監視対象のKubernetesクラスタを操作している場合は、「プロキシサポートの設定」セクションの手順に従ってください。
-
NetApp Kubernetes Monitoring Operatorは、他のインスタンスとの競合を回避するために独自のkube-state-metricsをインストールします。監査およびデータレポートを正確に作成するには、Network Time Protocol(NTP;ネットワークタイムプロトコル)またはSimple Network Time Protocol(SNTP;簡易ネットワークタイムプロトコル)を使用してAgentマシンの時刻を同期することを強く推奨します。
-
Operatorを再デプロイする場合(つまり、Operatorを更新または置換する場合)は、_new_apiトークンを作成する必要はありません。前のトークンを再利用できます。
-
また、最新のNetApp Kubernetes Monitoring Operatorがインストールされていて、更新可能なAPIアクセストークンを使用している場合は、期限切れが近いトークンが新しい/更新されたAPIアクセストークンに自動的に置き換えられます。
開始する前に、これらの点に注意してください
以前のインストールからアップグレードする場合は、も参照してください をアップグレードして 情報。
オペレータの設定
新しいバージョンの演算子では、最も一般的に変更される設定は_AgentConfiguration_customリソースで構成できます。オペレータを配備する前に、_operator-config.yaml_fileを編集して、このリソースを編集できます。このファイルには、一部の設定例がコメントアウトされています。のリストを参照してください "使用可能な設定" 演算子の最新バージョン。
次のコマンドを使用してオペレータを配置した後で、このリソースを編集することもできます。
kubectl -n netapp-monitoring edit AgentConfiguration 展開したオペレータのバージョンがAgentConfigurationをサポートしているかどうかを確認するには、次のコマンドを実行します。
kubectl get crd agentconfigurations.monitoring.netapp.com 「Error from server (NotFound)」というメッセージが表示された場合は、AgentConfigurationを使用する前にオペレータをアップグレードする必要があります。
プロキシサポートを設定しています
環境にプロキシを使用してNetApp Kubernetes Monitoring Operatorをインストールする方法は2つあります。同じプロキシシステムでも、別のプロキシシステムでもかまいません。
-
プロキシは、インストールコードスニペット(「curl」を使用)の実行中に、スニペットが実行されるシステムをCloud Insights 環境に接続するために必要です
-
ターゲットのKubernetesクラスタがCloud Insights 環境と通信するために必要なプロキシ
これらのいずれか、または両方にプロキシを使用する場合は、NetApp Kubernetes Operating Monitorをインストールするために、まずCloud Insights 環境との良好な通信を可能にするようにプロキシが設定されていることを確認する必要があります。プロキシがあり、オペレータをインストールするサーバ/VMからCloud Insights にアクセスできる場合は、プロキシが適切に設定されている可能性があります。
NetApp Kubernetes Operating Monitorのインストールに使用するプロキシとして、オペレータをインストールする前に、_http_proxy/https_proxy_environment変数を設定します。一部のプロキシ環境では'_no_proxy環境変数も設定する必要があります
変数を設定するには、NetApp Kubernetes Monitoring Operatorをインストールする前に、システムで次の手順を実行します。
-
現在のユーザの https_proxy 変数と _http_proxy_environment 変数を設定します。
-
セットアップするプロキシに認証(ユーザ名/パスワード)がない場合は、次のコマンドを実行します。
export https_proxy=<proxy_server>:<proxy_port> .. セットアップするプロキシに認証(ユーザ名/パスワード)が設定されている場合は、次のコマンドを実行します。
export http_proxy=<proxy_username>:<proxy_password>@<proxy_server>:<proxy_port>
-
KubernetesクラスタがCloud Insights 環境と通信するために使用するプロキシについては、以下の手順をすべて読み、NetApp Kubernetes Monitoring Operatorをインストールします。
NetApp Kubernetes Monitoring Operatorを導入する前に、operator-config.yamlでAgentConfigurationのプロキシセクションを設定します。
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はCloud Insights リポジトリからコンテナイメージを取得します。監視のターゲットとして使用されているKubernetesクラスタがあり、カスタムまたはプライベートのDockerリポジトリまたはコンテナレジストリからのみコンテナイメージを取得するようにそのクラスタが設定されている場合は、NetApp Kubernetes Monitoring Operatorで必要なコンテナへのアクセスを設定する必要があります。
NetApp Monitoring Operatorのインストールタイルから[Image Pull Snippet]を実行します。このコマンドは、Cloud Insights リポジトリにログインし、オペレータのすべてのイメージ依存関係をプルして、Cloud Insights リポジトリからログアウトします。プロンプトが表示されたら、指定したリポジトリの一時パスワードを入力します。このコマンドは、オプション機能を含む、オペレータが使用するすべてのイメージをダウンロードします。これらの画像がどの機能に使用されるかについては、以下を参照してください。
Core Operator Functionality and Kubernetes Monitoringの略
-
ネットアップによる監視
-
kube-rbac-proxyの略
-
kube-state-metricsの略
-
テレグラフ
-
distroless-root-user
イベントログ
-
Fluent-bit
-
kubernetes-event-exporterの略
ネットワークのパフォーマンスとマップ
-
ci-net-observerの略
社内のポリシーに従って、オペレータ用の Docker イメージをプライベート / ローカル / エンタープライズ Docker リポジトリにプッシュします。リポジトリ内のこれらのイメージへのイメージタグとディレクトリパスが、Cloud 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>
operator-config.yamlのAgentConfigurationを編集して、新しいDockerリポジトリの場所を反映します。プライベートリポジトリ用に新しい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 link here: https://docs.netapp.com/us-en/cloudinsights/task_config_telegraf_agent_k8s.html#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以降で実行している場合は、_runPrivileged_settingを有効にするには、_operator-config.yaml_でAgentConfigurationを編集する必要があります。
# Set runPrivileged to true SELinux is enabled on your kubernetes nodes runPrivileged: true
OpenShiftは、一部のKubernetesコンポーネントへのアクセスをブロックする可能性のある追加のセキュリティレベルを実装する場合があります。
NetApp Kubernetes Monitoring Operatorをインストールします
-
一意のクラスタ名およびネームスペースを入力してください。実行中の場合 をアップグレードして スクリプトベースのエージェントまたは以前のKubernetes Operatorから、同じクラスタ名とネームスペースを使用します。
-
これらを入力すると、ダウンロードコマンドスニペットをクリップボードにコピーできます。
-
スニペットを a_bash_window に貼り付け、実行します。Operatorインストールファイルがダウンロードされます。スニペットには固有のキーがあり、24時間有効です。
-
カスタムリポジトリまたはプライベートリポジトリがある場合は、オプションのImage Pullスニペットをコピーし、a_bash_shellに貼り付けて実行します。画像がプルされたら、プライベートリポジトリにコピーします。必ず同じタグとフォルダ構造を維持してください。_operator-deployment.yaml_のパスと_operator-config.yaml_のDockerリポジトリ設定を更新します。
-
必要に応じて、プロキシやプライベートリポジトリの設定など、使用可能な設定オプションを確認します。あなたはについてもっと読むことができます "設定オプション"。
-
準備ができたら、kubectl Applyスニペットをコピーしてダウンロードし、実行してOperatorをデプロイします。
-
インストールが自動的に開始されます。完了したら、[Next]ボタンをクリックします。
-
インストールが完了したら、[Next]ボタンをクリックします。また、_operator-secrets.yaml_fileを削除するか、安全に保存してください。
詳細については、をご覧ください プロキシを設定します。
詳細については、をご覧ください カスタム/プライベートDockerリポジトリを使用する。
NetApp Kubernetes Monitoring Operatorをインストールすると、Kubernetes EMSログ収集がデフォルトで有効になります。インストール後にこの収集を無効にするには、Kubernetesクラスタの詳細ページの上部にある* Modify Deployment *ボタンをクリックし、[Log collection]の選択を解除します。
画面に[Log Collection]のチェックボックスが表示されている。"]
この画面には、現在のログ収集ステータスも表示されます。次の状態が考えられます。
-
無効
-
有効
-
Enabled -インストールを実行中です
-
Enabled -オフライン
-
有効-オンライン
-
エラー- APIキーに十分な権限がありません
をアップグレードして
|
以前にスクリプトベースのエージェントをインストールしている場合は、NetApp Kubernetes Monitoring Operatorにアップグレードする必要があります。 |
スクリプトベースのエージェントからNetApp Kubernetes Monitoring Operatorへのアップグレード
テレグラムエージェントをアップグレードするには、次の手順に従います。
-
Cloud Insights が認識するクラスタ名をメモしておきます。クラスタ名を確認するには、次のコマンドを実行します。名前空間がデフォルト(CI-MOTing)でない場合は、適切な名前空間を置き換えます。
kubectl -n ci-monitoring get cm telegraf-conf -o jsonpath='{.data}' |grep "kubernetes_cluster ="
-
K8sオペレータベースの監視解決策 のインストール中に使用するK8sクラスタ名を保存して、データの継続性を確保します。
CIにKubernetesクラスタの名前を覚えていない場合は、次のコマンドラインを使用して、保存した構成からクラスタを抽出できます。
cat /tmp/telegraf-configs.yaml | grep kubernetes_cluster | head -2 . スクリプトベースの監視を削除します
Kubernetes 上のスクリプトベースのエージェントをアンインストールするには、次の手順を実行します。
モニタリングネームスペースが Telegraf 専用に使用されている場合:
kubectl --namespace ci-monitoring delete ds,rs,cm,sa,clusterrole,clusterrolebinding -l app=ci-telegraf
kubectl delete ns ci-monitoring
モニタリングネームスペースが Telegraf 以外の目的で使用されている場合:
kubectl --namespace ci-monitoring delete ds,rs,cm,sa,clusterrole,clusterrolebinding -l app=ci-telegraf . <<installing-the-netapp-kubernetes-monitoring-operator,をインストールします>> 現在の演算子。必ず、上記の手順1と同じクラスタ名を使用してください。
最新のNetApp Kubernetes Monitoring Operatorにアップグレードします
既存のOperatorにAgentConfigurationが存在するかどうかを確認します(ネームスペースがdefault_netapp-monitoring_でない場合は、適切なネームスペースに置き換えてください)。
kubectl -n netapp-monitoring get agentconfiguration netapp-monitoring-configuration AgentConfigurationが存在する場合:
-
をインストールします 既存の演算子の上にある最新の演算子。
-
確認してください 最新のコンテナイメージを取得します カスタムリポジトリを使用している場合。
-
AgentConfigurationが存在しない場合は、次の手順を実行します。
-
クラスタ名がCloud Insights で認識される名前であることをメモします(ネームスペースがデフォルトのネットアップ監視機能でない場合は、該当するネームスペースで置き換えてください)。
kubectl -n netapp-monitoring get agent -o jsonpath='{.items[0].spec.cluster-name}' * 既存のOperatorのバックアップを作成します(ネームスペースがデフォルトのネットアップ監視機能になっていない場合は、適切なネームスペースで置き換えてください)。
kubectl -n netapp-monitoring get agent -o yaml > agent_backup.yaml * <<to-remove-the-netapp-kubernetes-monitoring-operator,をアンインストールします>> 既存の演算子。 * <<installing-the-netapp-kubernetes-monitoring-operator,をインストールします>> 最新の演算子。
-
同じクラスタ名を使用してください。
-
最新のOperator YAMLファイルをダウンロードしたら、展開する前に、agent_backup.yamlにあるカスタマイズをダウンロードしたoperator-config.yamlに移植します。
-
確認してください 最新のコンテナイメージを取得します カスタムリポジトリを使用している場合。
-
NetApp Kubernetes Monitoring Operatorを停止および開始します
NetApp Kubernetes Monitoring Operatorを停止するには、次の手順を実行します
kubectl -n netapp-monitoring scale deploy monitoring-operator --replicas=0 NetApp Kubernetes Monitoring Operatorを開始するには、次の手順を実行します
kubectl -n netapp-monitoring scale deploy monitoring-operator --replicas=1
アンインストール中です
|
以前にインストールしたスクリプトベースのKubernetesエージェントでを実行している場合は、を実行する必要があります アップグレード を使用して、NetApp Kubernetes Monitoring Operatorに接続します。 |
廃止されたスクリプトベースのエージェントを削除します
これらのコマンドは、デフォルトの名前空間「 CI-monitoring 」を使用していることに注意してください。独自のネームスペースを設定した場合は、それらのネームスペースと、以降のすべてのコマンドおよびファイルを置き換えます。
Kubernetes上のスクリプトベースのエージェント(NetApp Kubernetes Monitoring Operatorへのアップグレードなど)をアンインストールするには、次の手順を実行します。
モニタリングネームスペースが Telegraf 専用に使用されている場合:
kubectl --namespace ci-monitoring delete ds,rs,cm,sa,clusterrole,clusterrolebinding -l app=ci-telegraf kubectl delete ns ci-monitoring モニタリングネームスペースが Telegraf 以外の目的で使用されている場合:
kubectl --namespace ci-monitoring delete ds,rs,cm,sa,clusterrole,clusterrolebinding -l app=ci-telegraf
をクリックして、NetApp Kubernetes Monitoring Operatorを削除します
NetApp Kubernetes Monitoring Operatorのデフォルトのネームスペースは、「NetApp Monitoring」です。独自のネームスペースを設定した場合は、それらのネームスペースと、以降のすべてのコマンドおよびファイルを置き換えます。
新しいバージョンの監視オペレータは、次のコマンドを使用してアンインストールできます。
kubectl delete agent -A -l installed-by=nkmo-<name-space> kubectl delete ns,clusterrole,clusterrolebinding,crd -l installed-by=nkmo-<name-space>
最初のコマンドが「リソースが見つかりません」を返した場合は、次の手順に従って古いバージョンの監視オペレータをアンインストールします。
次の各コマンドを順番に実行します。現在のインストール状況によっては、これらのコマンドの一部で「オブジェクトが見つかりません」というメッセージが返される場合があります。これらのメッセージは無視してかまいません。
kubectl -n <NAMESPACE> delete agent agent-monitoring-netapp kubectl delete crd agents.monitoring.netapp.com kubectl -n <NAMESPACE> delete role agent-leader-election-role kubectl delete clusterrole agent-manager-role agent-proxy-role agent-metrics-reader <NAMESPACE>-agent-manager-role <NAMESPACE>-agent-proxy-role <NAMESPACE>-cluster-role-privileged kubectl delete clusterrolebinding agent-manager-rolebinding agent-proxy-rolebinding agent-cluster-admin-rolebinding <NAMESPACE>-agent-manager-rolebinding <NAMESPACE>-agent-proxy-rolebinding <NAMESPACE>-cluster-role-binding-privileged kubectl delete <NAMESPACE>-psp-nkmo kubectl delete ns <NAMESPACE>
スクリプトベースの Tegraf インストール用に手動で作成した Security Context Constraint の場合は、次の手順を実行します。
kubectl delete scc telegraf-hostaccess
Kubeステートメトリックについて
NetApp Kubernetes Monitoring Operatorは、kube-state-metricsを自動的にインストールします。ユーザによる操作は必要ありません。
kube-state-metrics カウンタ
これらのkubbeステートメトリックカウンタの情報にアクセスするには、次のリンクを使用します。
Kubernetes のチェックサムの検証
Cloud Insights エージェントのインストーラで整合性チェックが実行されますが、ダウンロードしたアーティファクトのインストールまたは適用前に独自の検証を実行したいユーザもいます。デフォルトのダウンロードおよびインストールではなく、ダウンロードのみの操作を実行するには、 UI から取得したエージェントインストールコマンドを編集し、末尾の「インストール」オプションを削除します。
次の手順を実行します。
-
指示に従ってエージェントインストーラスニペットをコピーします。
-
スニペットをコマンドウィンドウに貼り付ける代わりに、テキストエディタに貼り付けます。
-
コマンドから末尾の「--install」を削除します。
-
コマンド全体をテキストエディタからコピーします。
-
次に、コマンドウィンドウ(作業ディレクトリ内)に貼り付けて実行します。
-
Download and install (デフォルト):
installerName=cloudinsights-kubernetes.sh … && sudo -E -H ./$installerName --download –-install ** ダウンロードのみ:
installerName=cloudinsights-kubernetes.sh … && sudo -E -H ./$installerName --download
-
download-only コマンドを使用すると、必要なアーティファクトがすべて Cloud Insights から作業ディレクトリにダウンロードされます。アーティファクトには次のものがありますが、これらに限定することはできません。
-
インストールスクリプト
-
環境ファイル
-
YAML ファイル
-
署名済みチェックサムファイル( SHA256 署名)
-
署名の検証に使用する PEM ファイル( NetApp_cert.pem )
インストールスクリプト、環境ファイル、 YAML ファイルは、目視検査を使用して検証できます。
PEM ファイルは、フィンガープリントが次のようになっていることを確認することで検証できます。
1A918038E8E127BB5C87A202DF173B97A05B4996 具体的には、
openssl x509 -fingerprint -sha1 -noout -inform pem -in netapp_cert.pem 署名済みチェックサムファイルは、 PEM ファイルを使用して確認できます。
openssl smime -verify -in sha256.signed -CAfile netapp_cert.pem -purpose any すべてのアーティファクトが正常に検証されたら、次のコマンドを実行してエージェントのインストールを開始できます。
sudo -E -H ./<installation_script_name> --install
トラブルシューティング
NetApp Kubernetes Monitoring Operatorのセットアップで問題が発生した場合の対処方法を次に示します。
問題 | 次の操作を実行します |
---|---|
Kubernetes 永続ボリュームと対応するバックエンドストレージデバイスの間にハイパーリンク / 接続がありません。My Kubernetes Persistent Volume がストレージサーバのホスト名を使用して設定されます。 |
手順に従って既存の Tegraf エージェントをアンインストールし、最新の Tegraf エージェントを再インストールします。Tegrafバージョン2.0以降を使用していて、KubernetesクラスタストレージがCloud Insights によってアクティブに監視されている必要があります。 |
次のようなログにメッセージが表示されます。 E0901 15 : 21 : 39.96145 1 reflector.GO : 178]k81.io/kube-state/internal/store/Builder.GO : 352 : Failed to list *v1.MutatingWebhookConfiguration : 8s could not find the requested resource E0901 15:15:2ku161781. |
これらのメッセージは、1.20より前のバージョンのKubernetesでkube-state-metricsバージョン2.0.0以上を実行している場合に発生する可能性があります。Kubernetes のバージョンを取得するには、次の Leubectl version_ kbe-state-metrics バージョンを取得します。 kubectl デプロイ /kube-state-metrics -o jsonpath='{.image}' これらのメッセージが発生しないようにするには、 kube-state-metrics デプロイを修正して、次の Leases 設定を具体的に無効にしてください。 _hookates_web_volumeconfigurations resources= 証明リクエスト , configmaps,cronjobs,demonsets,horizontalscalers,ingleers,jobs,limitrange,scapers,networkpolicies , nodes,persistentvolumes,persistentvolumesalims,persistentvolumes,podeters, replicaSets,replicaSets,replicationcontrollers ,residetodポッド ,residetappeditors,appers,uns,uns,uns,uns,sets,uns,uns,uns,uns,uns,sets,uns,sets,uns,sets,uns,uns,sets,uns,uns,sets,uns,uns,uns,wodecodeclieticecodetics,sets,sets,sets,sets,uns,sets,uns,uns,sets,sets,sets,un 検証する Web フック設定 ' ボリュームの添付ファイル |
Telegraf から次のようなエラーメッセージが表示されますが、 Telegraf は起動して実行されます。 Oct 11 14 : 23 : 41 IP-172-39-47 systemd[1] : InfluxDB への指標の報告用に、プラグイン駆動型のサーバーエージェントを起動しました。10 月 11 日 14 : 23 : 41 IP-172-41-39-47 テレグラム [1827] : time="2021 - 10-11T14 : 23 : 41Z" level= error msg=" キャッシュディレクトリの作成に失敗しました。/etc/テレ グラム /.cache/snowflake 、 err: mkdir /etc/テレ グラム f/.ca che: 許可が拒否されました。ignored \n" func = "gosnowfleke. (*defaultLogger).Errorf" file="log. go:120" Oct 11 14:23:41 IP-172-21-39-47 TEテレ グラフ [1827]: time="2021 - 10-11T14:23:41Z" level=error.msg=" 失敗しました。無視されます。/etc/テレ グラム /.cache/snowflake/ocspa_response_cache.json を開きます。ファイルまたはディレクトリがありません \n" func="gosnowflake.(*defaultLogger).Errorf" file="log.go:120"Oct. 1114:23:41 IP-172-41-39-47 テレグラム [1827:1127]~21-21Z: Telegraf 1.19.3 を起動しています |
これは問題と呼ばれています。を参照してください "この GitHub の記事" 詳細:Tegraf が起動して動作している限り、ユーザはこのエラーメッセージを無視できます。 |
Kubernetes で、 Telegraf ポッドが次のエラーを報告しています。 "Error in processing mountstats info: failed to open mountstats file: /hostfs /proc/1/mountstats 、 error: open /hostfs /proc/1/mountstats : permission denied" |
SELinux が有効で強制されている場合、 Telegraf ポッドが Kubernetes ノードの /proc/1/mountstats ファイルにアクセスできない可能性があります。この制限を緩和するには、エージェントを編集します ( |
Kubernetes で、 Telegraf ReplicaSet ポッドから次のエラーが報告されています。 [ プラグインの inputs.prometheus] エラー: Could not load keypair /etc/Kubernetes /pki/ etcd/server.crt : /etc/Kubernetes /pki/ etcd/server.key : open /etc/Kubernetes /pki/ etcd/server.key :特定のディレクトリまたは crt ファイルをロードできませんでした |
Telegraf ReplicaSet ポッドは、マスターまたは etcd 用に指定されたノード上で実行することを目的としています。これらのノードのいずれかで ReplicaSet ポッドが実行されていない場合は、これらのエラーが発生します。マスター / etcd ノードに汚染があるかどうかを確認します。その場合は、 Telegraf ReplicaSet 、テレグラム af-RS に必要な忍容を追加します。たとえば、 ReplicaSet…kubectl を編集して RS テレグラムを編集し、仕様に適切な公差を追加します。次に、 ReplicaSet ポッドを再起動します。 |
PSP/PSA環境があります。これはモニタリングオペレータに影響しますか? |
ポッドセキュリティポリシー(PSP)またはポッドセキュリティアドミッション(PSA)を適用してKubernetesクラスタを実行している場合は、最新のNetApp Kubernetes Monitoring Operatorにアップグレードする必要があります。PSP/PSAをサポートして現在のNKMOにアップグレードするには、次の手順に従います。1. をアンインストールします 前の監視オペレータ:kubectl delete agent agent-monitoring netapp -n netapp -monitoring kubectl delete ns NetApp-monitoring kubectl delete CRD agents.monitoring.netapp.com kubectl delete clusterrole agent-manager-role agent-proxy-metrics -reader kubectl delete clusterrolebinding agent-manager-rolebinding agent-proxy -proxy -proxy -proxy -proxy -proxy -proxy -proxy -binding中のクラスタ役割を持つadminエージェントの役割を持つ役割を持つ役割を果たす役割を担う役割は、それぞれ果たす役割を担う。 をインストールします モニタリングオペレータの最新バージョン。 |
NKMOを導入する際に問題が発生し、PSP/PSAを使用しました。 |
1.次のコマンドを使用して、エージェントを編集します。kubectl -n <name-space> edit agent 2.「security-policy enabled」を「false」に設定します。これにより、ポッドセキュリティポリシーとポッドセキュリティアドミッションが無効になり、NKMOが展開できるようになります。次のコマンドを使用して確認します。kubectl get psp(should show Pod Security Policy removed)kubectl get all -n <namespace> |
grep -i psp(should show that nothing is found) |
「ImagePullBackoff」エラーが発生しました |
このエラーは、カスタムまたはプライベートのDockerリポジトリがあり、NetApp Kubernetes Monitoring Operatorで正しく認識されるように設定していない場合に表示されることがあります。 詳細はこちら カスタム/プライベートリポジトリの設定について |
監視オペレータの配置に問題 を使用していますが、現在のドキュメントでは解決できません。 |
次のコマンドの出力をキャプチャまたはメモし、テクニカルサポートチームに連絡します。 kubectl -n netapp-monitoring get all kubectl -n netapp-monitoring describe all kubectl -n netapp-monitoring logs <monitoring-operator-pod> --all-containers=true kubectl -n netapp-monitoring logs <telegraf-pod> --all-containers=true |
NKMOネームスペース内のNet-Observer(ワークロードマップ)ポッドはCrashLoopBackOffにあります |
これらのポッドは、Network ObservabilityのWorkload Mapデータコレクタに対応しています。以下を試してみてください:•いずれかのポッドのログをチェックして、カーネルの最小バージョンを確認してください。例:---{"ci-tenant-id":"your-tenant-id"、"collector-cluster":"your-k8s-cluster-name"、"environment":"prod"、"level":"error"、"msg":"検証に失敗しました。理由:カーネルバージョン3.10.0が最小カーネルバージョン4.18.0よりも小さい、"time":"2022-11-09T08:23:08Z"}---•Net-observerポッドを使用するには、Linuxカーネルバージョンが4.18.0以上である必要があります。「uname -r」コマンドを使用してカーネルのバージョンを確認し、4.18.0以上であることを確認します |
NKMO名前空間のnet-observerポッドは、OpenShift 4環境のCrashLoopBackOffにあります |
これは現在サポートされていません。今後のアップデートでサポートが追加される予定です。 |
ポッドはNKMOネームスペース(デフォルト:netapp-monitoring)で実行されていますが、[Queries]のワークロードマップまたはKubernetes指標のデータがUIに表示されません |
K8Sクラスタのノードの時間設定を確認します。監査およびデータレポートを正確に作成するには、Network Time Protocol(NTP;ネットワークタイムプロトコル)またはSimple Network Time Protocol(SNTP;簡易ネットワークタイムプロトコル)を使用してAgentマシンの時刻を同期することを強く推奨します。 |
NKMOネームスペース内の一部のnet-observerポッドが保留状態になっています |
net-observerはデーモンセットであり、Kubernetesクラスタの各ノードでポッドを実行します。•保留状態のポッドをメモし、CPUまたはメモリのリソース問題 が発生しているかどうかを確認します。必要なメモリとCPUがノードにあることを確認します。 |
NetApp Kubernetes Monitoring Operatorをインストールした直後にログに次のメッセージが表示されます。[inputs.prometheus] Error in plugin: error making HTTP request to http://kube-state-metrics.<namespace>.svc.cluster.local:8080/metrics: ゲット http://kube-state-metrics.<namespace>.svc.cluster.local:8080/metrics: dial tcp:lookup kube-state-metrics.<namespace> .svc.cluster.local:該当するホストがありません |
追加情報はから入手できます "サポート" ページまたはを参照してください "Data Collector サポートマトリックス"。