Skip to main content
Cloud Insights
本繁體中文版使用機器翻譯,譯文僅供參考,若與英文版本牴觸,應以英文版本為準。

Kubernetes 監控營運商的安裝與組態

貢獻者

Cloud Insights 提供 Kubernetes Monitoring Operator* for Kubernetes 系列。瀏覽至 * Kubernetes > Collectores > +Kubernetes Collector* 以部署新的運算子。

安裝 Kubernetes Monitoring Operator 之前

請參閱 "先決條件" 安裝或升級 Kubernetes Monitoring Operator 之前的文件。

安裝 Kubernetes Monitoring Operator


在 Kubernetes 上安裝 Kubernetes Monitoring Operator Agent 的步驟:
  1. 輸入唯一的叢集名稱和命名空間。如果您是 升級 從先前的 Kubernetes 運算子中、使用相同的叢集名稱和命名空間。

  2. 一旦輸入這些指令碼、您就可以將 Download Command 片段複製到剪貼簿。

  3. 將程式碼片段貼到_bash_視窗中並執行。將下載操作員安裝檔案。請注意、程式碼片段具有獨特的金鑰、有效時間為24小時。

  4. 如果您有自訂或私有儲存庫、請複製選用的「影像」抽取片段、將其貼入 bash Shell 並加以執行。影像擷取完成後、請將其複製到您的私有儲存庫。請務必維持相同的標記和資料夾結構。更新 operer-deployment.yaml 中的路徑、以及 operer-config.yaml 中的泊塢視窗儲存庫設定。

  5. 如有需要、請檢閱可用的組態選項、例如 Proxy 或私有儲存庫設定。您可以深入瞭解 "組態選項"

  6. 準備好之後、請複製 KUBECtl 套用程式碼片段、下載並執行、以部署操作員。

  7. 安裝會自動繼續進行。完成後、按一下 _ 下一步 _ 按鈕。

  8. 安裝完成後、按一下 _ 下一步 _ 按鈕。請務必刪除或安全儲存 operer-Secrets 。 yaml 檔案。

如果您使用的是 Proxy 、請參閱 設定 Proxy

如果您有自訂儲存庫、請參閱 使用自訂 / 私有泊塢視窗儲存庫

Kubernetes 監控元件

Cloud Insights Kubernetes 監控由四個監控元件組成:

  • 叢集度量

  • 網路效能與地圖(選用)

  • 事件記錄(選用)

  • 變更分析(選用)

根據預設、每個 Kubernetes 收集器都會啟用上述選用元件;如果您決定不需要特定收集器的元件、您可以瀏覽至 Kubernetes > Collectors 、然後從畫面右側的收集器「三點」功能表中選取「修改部署」、將其停用。

在 Kubernetes Collector 清單頁面上修改部署功能表

畫面會顯示每個元件的目前狀態、並可讓您視需要停用或啟用該收集器的元件。

Mody 部署選項、 700

升級

升級至最新的 Kubernetes Monitoring Operator

判斷現有運算子是否存在 AgentConfiguration (如果您的命名空間不是預設的 _NetApp-monitoring 、請改用適當的命名空間):

 kubectl -n netapp-monitoring get agentconfiguration netapp-monitoring-configuration
如果存在 AgentConfiguration :

如果 AgentConfiguration 不存在:

  • 請記下 Cloud Insights 所識別的叢集名稱(如果您的命名空間不是預設的 NetApp-Monitoring 、請改用適當的命名空間):

     kubectl -n netapp-monitoring get agent -o jsonpath='{.items[0].spec.cluster-name}'
    * 建立現有運算子的備份(如果您的命名空間不是預設的 NetApp 監控功能、請改用適當的命名空間):
     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 、然後再進行部署。

    • 確保您是 擷取最新的容器映像 如果您使用的是自訂儲存庫。

停止並啟動 Kubernetes 監控操作員

若要停止 Kubernetes 監控操作員:

 kubectl -n netapp-monitoring scale deploy monitoring-operator --replicas=0
若要啟動 Kubernetes Monitoring 運算子:
kubectl -n netapp-monitoring scale deploy monitoring-operator --replicas=1

正在解除安裝

移除 Kubernetes Monitoring Operator

請注意、 Kubernetes Monitoring Operator 的預設命名空間是「 NetApp-Monitoring 」。 如果您已設定自己的命名空間、請在這些名稱空間以及所有後續命令和檔案中取代該命名空間。

可使用下列命令解除安裝較新版本的監控操作員:

kubectl -n <NAMESPACE> delete agent -l installed-by=nkmo-<NAMESPACE>
kubectl -n <NAMESPACE> delete clusterrole,clusterrolebinding,crd,svc,deploy,role,rolebinding,secret,sa -l installed-by=nkmo-<NAMESPACE>

如果監控操作員部署在其專屬命名空間中、請刪除命名空間:

 kubectl delete ns <NAMESPACE>
如果第一個命令傳回「找不到資源」、請依照下列指示解除安裝舊版監控操作員。

依序執行下列每個命令。視您目前的安裝情況而定、其中一些命令可能會傳回「找不到物件」訊息。這些訊息可能會被安全忽略。

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>

如果先前已建立安全性內容限制:

kubectl delete scc telegraf-hostaccess

關於Kube-state指標

NetApp Kubernetes監控操作員會安裝自己的Kube-態 指標、以避免與任何其他執行個體發生衝突。

如需有關 Kube-State-Metrics 的資訊、請參閱 "本頁"

設定 / 自訂操作員

這些區段包含自訂運算子組態、使用 Proxy 、使用自訂或私有泊塢視窗儲存庫或使用 OpenShift 的相關資訊。

組態選項

最常修改的設定可在 AgentConfiguration 自訂資源中進行設定。您可以編輯 operer-config.yaml 檔案、在部署運算子之前編輯此資源。此檔案包含設定的註解範例。請參閱清單 "可用的設定" 適用於最新版的運算子。

您也可以使用下列命令在部署運算子之後編輯此資源:

 kubectl -n netapp-monitoring edit AgentConfiguration
若要判斷您部署的營運者版本是否支援 AgentConfiguration 、請執行下列命令:
 kubectl get crd agentconfigurations.monitoring.netapp.com
如果您看到「錯誤來自伺服器( NotFound )」訊息、則必須先升級您的營運商、才能使用 AgentConfiguration 。

設定Proxy支援

您可以在兩個地方使用環境中的 Proxy 來安裝 Kubernetes Monitoring Operator 。這些可能是相同或獨立的Proxy系統:

  • 在執行安裝程式碼片段時(使用「Curl」)需要Proxy、以便將執行程式碼片段的系統連接Cloud Insights 至您的作業系統環境

  • 目標Kubernetes叢集需要Proxy才能與Cloud Insights 您的支援環境進行通訊

如果您使用任一或兩個代理程式、為了安裝 Kubernetes 作業系統監視器、您必須先確定您的 Proxy 已設定為允許與 Cloud Insights 環境進行良好的通訊。如果您有Proxy、而且可以Cloud Insights 從要安裝該運算子的伺服器/ VM存取功能、則您的Proxy可能設定正確。

對於用於安裝 Kubernetes 作業系統的 Proxy 、在安裝運算子之前、請先設定 _http 代理伺服器 /https 代理伺服器 _ 環境變數。在某些Proxy環境中、您可能也需要設定_no_proxyEnvironments _變數。

若要設定變數、請在系統 * 上 * 安裝 Kubernetes Monitoring 運算子之前 * 執行下列步驟:

  1. 為目前使用者設定_https_proxy_和/或_https_proxy_環境變數:

    1. 如果正在設定的Proxy沒有驗證(使用者名稱/密碼)、請執行下列命令:

       export https_proxy=<proxy_server>:<proxy_port>
      .. 如果正在設定的Proxy具有驗證(使用者名稱/密碼)、請執行下列命令:
      export http_proxy=<proxy_username>:<proxy_password>@<proxy_server>:<proxy_port>

對於 Kubernetes 叢集用來與 Cloud Insights 環境通訊的 Proxy 、請在閱讀完所有指示之後、安裝 Kubernetes Monitoring Operator 。

在部署 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
  ...
...

使用自訂或私有泊塢視窗儲存庫

根據預設、 Kubernetes Monitoring Operator 會從 Cloud Insights 儲存庫擷取容器映像。如果您使用 Kubernetes 叢集做為監控目標、且該叢集設定為僅從自訂或私有 Docker 儲存庫或容器登錄中提取容器映像、則必須設定 Kubernetes Monitoring Operator 所需的容器存取權。

從 NetApp Monitoring Operator 安裝方塊執行「影像提取片段」。此命令會登入 Cloud Insights 儲存庫、擷取操作員的所有映像相依性、然後登出 Cloud Insights 儲存庫。出現提示時、請輸入提供的儲存庫暫存密碼。此命令會下載操作員所使用的所有影像、包括選用功能。請參閱下方、瞭解這些影像的用途。

核心營運者功能與 Kubernetes 監控

  • NetApp 監控

  • CI-KRBA-Proxy

  • CI-ksm

  • CI-Telegraf

  • 無 distrouse-root 使用者

事件記錄

  • CI-Fluent 位元

  • CI-Kubernetes-event-Exporter

網路效能與地圖

  • CI-net-觀察者

根據您的企業原則、將「operator」泊塢視窗影像推送到您的「私有/本機/企業」泊塢視窗儲存庫。確保儲存庫中這些映像的映像標記和目錄路徑與 Cloud Insights 儲存庫中的映像標記和目錄路徑一致。

在 operer-deployment.yaml 中編輯監控營運者部署、並修改所有映像參照以使用您的私有 Docker 儲存庫。

image: <docker repo of the enterprise/corp docker repo>/kube-rbac-proxy:<ci-kube-rbac-proxy version>
image: <docker repo of the enterprise/corp docker repo>/netapp-monitoring:<version>

在 operer-config.yaml 中編輯 AgentConfiguration 、以反映新的泊塢視窗 repo 位置。為您的私有儲存庫建立新的 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 或更新版本上執行、則必須在 operer-config.yaml 中編輯 AgentConfiguration 、才能啟用 runPrivileged 設定:

# Set runPrivileged to true SELinux is enabled on your kubernetes nodes
runPrivileged: true

OpenShift可能會實作額外的安全層級、以封鎖對某些Kubernetes元件的存取。

關於機密的備註

若要移除 Kubernetes Monitoring Operator 檢視整個叢集機密的權限、請在安裝之前、從 operer-setup.yaml 檔案中刪除下列資源:

 ClusterRole/netapp-ci-<namespace>-agent-secret-clusterrole
 ClusterRoleBinding/netapp-ci-<namespace>-agent-secret-clusterrolebinding

如果是升級、也請從叢集中刪除資源:

 kubectl delete ClusterRole/netapp-ci-<namespace>-agent-secret-clusterrole
 kubectl delete ClusterRoleBinding/netapp-ci-<namespace>-agent-secret-clusterrolebinding

如果啟用變更分析、請修改 AgentConfigurationoperer-config.yaml 以取消變更管理區段的註解、並在變更管理區段下包含 _kindsToIgnoreFromWatch :「 Secrets 」。請注意此行中單引號和雙引號的存在和位置。

# change-management:
  ...
  # # A comma separated list of kinds to ignore from watching from the default set of kinds watched by the collector
  # # Each kind will have to be prefixed by its apigroup
  # # Example: '"networking.k8s.io.networkpolicies,batch.jobs", "authorization.k8s.io.subjectaccessreviews"'
  kindsToIgnoreFromWatch: '"secrets"'
  ...

正在驗證Kubernetes Checksum

雖然無法執行完整性檢查、Cloud Insights 但有些使用者可能想在安裝或套用下載的成品之前、先執行自己的驗證。若要執行純下載作業(而非預設的下載與安裝)、這些使用者可以編輯從UI取得的代理程式安裝命令、並移除後續的「install」選項。

請遵循下列步驟:

  1. 依照指示複製代理程式安裝程式程式片段。

  2. 不要將程式碼片段貼到命令視窗中、而是貼到文字編輯器中。

  3. 從命令中刪除後端"--install"。

  4. 從文字編輯器複製整個命令。

  5. 現在請將其貼到命令視窗(工作目錄)中、然後執行。

    • 下載並安裝(預設):

       installerName=cloudinsights-rhel_centos.sh … && sudo -E -H ./$installerName --download –-install
      ** 僅限下載:
      installerName=cloudinsights-rhel_centos.sh … && sudo -E -H ./$installerName --download

純下載命令會將Cloud Insights 所有必要的成品從功能性資訊下載到工作目錄。 這些成品包括但不限於:

  • 安裝指令碼

  • 環境檔案

  • Y反 洗錢檔案

  • 簽署的Checksum檔案(sh256.signed)

  • 用於簽名驗證的一個PES檔案(NetApp_CERT.pem)

安裝指令碼、環境檔案及Yaml檔案均可使用目視檢查進行驗證。

您可以確認其指紋為下列項目、以驗證該PEM檔案:

 1A918038E8E127BB5C87A202DF173B97A05B4996
更具體地說、
 openssl x509 -fingerprint -sha1 -noout -inform pem -in netapp_cert.pem
簽署的Checksum檔案可以使用PEM檔案進行驗證:
 openssl smime -verify -in sha256.signed -CAfile netapp_cert.pem -purpose any
一旦所有成品都已通過驗證、即可執行下列步驟來啟動代理程式安裝:
sudo -E -H ./<installation_script_name> --install

公差和污染

NetApp-CI-telegraf-DSNetApp-CI-Fluent-bit-DSNetApp-CI-net-觀察者 -L4-DS 示範必須在叢集中的每個節點上排程一個 Pod 、以便正確收集所有節點上的資料。已將操作員配置爲允許某些已知的 * 污點 * 。如果在節點上配置了任何自定義污點,從而阻止 Pod 在每個節點上運行,則可以爲這些污點創建一個 *公差 * "在 AgentConfiguration 中"。如果您已將自訂污點套用至叢集中的所有節點、您也必須在操作員部署中新增必要的容錯功能、以便排程及執行操作員 Pod 。

深入瞭解 Kubernetes "污染與容許"

疑難排解

如果您在設定 Kubernetes 監控操作員時遇到問題、請嘗試下列事項:

問題: 試用:

我看不到Kubernetes持續Volume與對應的後端儲存設備之間的超連結/連線。我的Kubernetes持續Volume是使用儲存伺服器的主機名稱來設定。

請依照步驟解除安裝現有的Telegraf代理程式、然後重新安裝最新的Telegraf代理程式。您必須使用Telegraf 2.0版或更新版本、而且Kubernetes叢集儲存設備必須由Cloud Insights 效益管理系統主動監控。

我在記錄中看到類似下列內容的訊息:

E0901 15 : 21 : 39.962145 1 個反射器。前往: 178 ) k8s.io/kube-state 指標 / 內部 / 儲存 / 建置器。前往: 352 :無法列出 * v1.MutatingWebhookConfiguration :伺服器找不到要求的資源
E0901 15 : 21 : 43.168161 1 個反射器。前往: 178 : k8s.io/kube-state - 規格 / 內部 / 儲存 / 建置器。前往: 352 :無法列出 * v1. 租用:伺服器找不到要求的資源( Get scales.calation.k8s.io )
等等

如果您執行Kubernetes版本低於1.20的Kubernetes 2.0.0版或更新版本之Kube-state度量、則可能會出現這些訊息。


若要取得 Kubernetes 版本:

kubectl 版本 _

若要取得 kube 狀態度量版本:

_kubectl Get deploy/kube-state-metabs -o jsonpath='{.image}'


為了防止這些訊息發生、使用者可以修改其 kube 狀態度量部署、以停用下列簡化:

_ 互斥網路連帽組態 _
_validatingwebhookconfigurations _
_vole附件 資源 _

更具體地說、他們可以使用下列 CLI 引數:

resources= 憑證命名查詢、組態對應、可頌工作、取消設定、部署、端點、水平播客自動轉接器、擷取、工作、限制範圍、命名空間、網路原則、節點、持續不斷的卷冊、持續不斷的預算、群組、複製集、控制器、資源等量、機密、服務、狀態集

預設資源清單為:

" 憑證命名查詢、組態對應、可頌工作、取消設定集、部署、端點、水平播客自動轉接器、擷取、工作、租用、限制範圍、互動式網路連線組態、命名空間、網路原則、節點、持續不斷的磁碟區、持續不斷的預算、群組、複製控制器、資源集、資源等狀態服務、 驗證 webhookconfigurations 、 volume附件 "

我看到 Telegraf 的錯誤訊息類似下列內容、但 Telegraf 確實啟動並執行:

10 月 11 日 14 : 23 : 41 IP-172-31-39-47 系統 d[1] :啟動外掛程式導向的伺服器代理程式、將計量標準回報至影響資料庫。
10月11日14:23:41 IP-172-31-39-47 Telewraf[1827]:Times="2021:10-11T14:23:41Z" level =錯誤msg="failed to create cache directory./etc/telegraf/.cache/snowflake 、 err: mkdir /etc/telegraf/.ca
Che :權限遭拒。忽略 \n" func="gosnowflake.(*defaultLogger).Errorf" file="log.go:120"
10 月 11 日 14 : 23 : 41 IP-172-31-39-47 Teledraf[1827] : Time="2021-10-11T14:23:41Z" Level=error msg=" 無法開啟。忽略。開啟 /etc/telegraf/.cache/snowflake/OCSP 回應 _cache.json :否
檔案或目錄 \n" func="gosnowflake.(*defaultLogger).Errorf" file="log.go:120"
10 月 11 日 14 : 23 : 41 《 IP-172-31-39-47 電臺》 [1827] : 2021-10-11T14 : 23 : 41Z I !啟動Telegraf 1.19.3

這是已知的問題。 請參閱 "這篇GitHub文章" 以取得更多詳細資料。只要Telegraf已啟動且正在執行、使用者就可以忽略這些錯誤訊息。

在 Kubernetes 上、我的 Telegraf Pod 回報下列錯誤:
" 處理 mountstats 時發生錯誤資訊:無法開啟 mountstats 檔案: /hostfs/proc/1/mountstats 、錯誤:開啟 /hostfs/proc/1/mountstats :權限遭拒 "

如果啟用並強制執行 SELinux 、則可能會阻止 Telegraf Pod 存取 Kubernetes 節點上的 /proc/1/mountstats 檔案。若要克服此限制、請編輯 agentconfiguration 、然後啟用 RunPrivileged 設定。如需詳細資訊、請參閱: https://docs.netapp.com/us-en/cloudinsights/task_config_telegraf_agent_k8s.html#openshift-instructions

在 Kubernetes 上、我的 Telegraf ReplicicaSet Pod 回報下列錯誤:

[ 外掛程式中的 inputs.prometheus] 錯誤:無法載入 keypair /etc/kubernetes/pi/etcd/server.crt : /etc/kubernetes/pi/etcd/server.key :開啟 /etc/kubernetes/pi/etcd/server.crt :無此類檔案或目錄

Telegraf ReplicaSet Pod可在指定為主節點或etcd節點上執行。如果ReplicaSet Pod未在其中一個節點上執行、您將會收到這些錯誤。檢查您的主節點/ etcd節點是否有問題。如果有、請將必要的容許值新增至Telegraf ReplicaSet、Telegraf-RS。

例如、編輯 ReplicaSet…​

Kubectl 編輯 RS telegraf-RS

並在規格中加入適當的公差。然後重新啟動ReplicaSet Pod。

我有PSP/PSA.環境。這是否會影響我的監控操作員?

如果您的 Kubernetes 叢集正在執行 Pod 安全政策( PSP )或 Pod 安全許可( PSA )、則您必須升級至最新的 Kubernetes 監控營運者。請依照下列步驟升級至目前支援 PP/PSA 的營運商:

1. 解除安裝 先前的監控業者:

kubectl delete agent agent-monitoring ( kubectl 刪除代理代理監視) -netapp -n netapp 監控
kubectl delete ns netapp 監控
kubectl delete crd agents.monitoring.netapp.com
kubectl delete clusterrole agent-manager-role agent-proxy-role agent-eterms-reader
kebectl delete clusterrolebinding agent-manager-rolebinding agent-proxy-rolebinding agent-cluster-admin-rolebinding

2. 安裝 監控操作員的最新版本。

我在嘗試部署操作員時遇到問題、而且我使用 PP/PSA 。

1. 使用下列命令編輯代理程式:

kubectl -n <name-space> 編輯代理程式

2. 將「安全性原則啟用」標示為「假」。這將會停用 Pod 安全政策和 Pod 安全許可、並允許營運者進行部署。使用下列命令確認:

Kubectl Get PSP (應顯示 Pod 安全政策已移除)
kubectl Get all -n <namespace>

grep -i PSP (應顯示找不到任何項目)

出現「ImagePullBackOff」錯誤

如果您有自訂或私有泊塢視窗儲存庫、但尚未設定 Kubernetes Monitoring Operator 正確辨識、就可能會出現這些錯誤。 瞭解更多資訊 關於設定自訂/私有repo。

我的監控操作員部署有問題、目前的文件無法協助我解決問題。

擷取或記下下列命令的輸出、然後聯絡技術支援團隊。

 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

Operator 命名空間中的 Net-Oborative (工作負載對應) Pod 位於 CrashLoopBackOff

這些 Pod 對應於網路可觀察性的工作負載對應資料收集器。請嘗試下列項目:
•檢查其中一個 Pod 的記錄、確認最低核心版本。例如:

---
{ "CI-租 戶 -id" : "your -租戶 -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 觀察者 Pod 要求 Linux 核心版本至少為 4.18.0 。使用命令 "uname -r " 檢查核心版本、並確定它們 >=4.18.0

Pod 在 Operator 命名空間中執行(預設值: NetApp-Monitoring )、但查詢中的工作負載對應或 Kubernetes 度量、 UI 中不會顯示任何資料

檢查 K8S 叢集節點上的時間設定。為了準確地進行稽核和資料報告、強烈建議您使用網路時間傳輸協定( NTP )或簡易網路時間傳輸協定( SNTP )、同步代理機器上的時間。

運算子命名空間中的某些網路觀察者 Pod 處於「擱置中」狀態

Net-觀察者 是一組示範集、在 k8s 叢集的每個節點上執行 Pod 。
•記下處於「擱置中」狀態的 Pod 、並檢查它是否發生 CPU 或記憶體資源問題。確保節點中有可用的必要記憶體和 CPU 。

安裝 Kubernetes Monitoring Operator 後、我立即在記錄中看到下列內容:

[ 外掛程式中的 inputs.prometheus] 錯誤:向 http://kube-state-metrics 提出 HTTP 要求時發生錯誤。 <namespace> 。 svc.cluster 。本機: 8080 / 指標: Get http://kube-state-metrics 。 <namespace> 。 svc.cluster 。本機: 8080 / 指標:撥號 TCP : LOOKUP kube-state - 度量。 <namespace> 。 svc.cluster 。本機:無此類主機

此訊息通常只有在安裝新的營運者、且_Telefra-Rs_ pod在_ksm_ pod啟動之前就已啟動時才會出現。所有Pod都在執行時、這些訊息應該會停止。

我沒有看到叢集中存在的 Kubernetes CronJobs 正在收集任何度量。

驗證 Kubernetes 版本(即 kubectl version)。 如果是 v1.2.x 或更低版本、這是預期的限制。 Kubernetes Monitoring Operator 部署的 kube-state 度量版本僅支援 v1.cronjob 。 使用 Kubernetes 1.2.x 及以下版本時、 cronjob 資源為 v1beta 。 cronjob. 因此、 kube 狀態度量無法找到 cronjob 資源。

安裝操作員之後、 Telegraf-DS Pod 會進入 CrashLoopBackOff 、 Pod 記錄會顯示「 su :驗證失敗」。

編輯 AgentConfiguration 中的 Teledraf 區段、並將 dockerMetricCollectionEnabled 設為 false 。如需詳細資訊、請參閱操作員的 "組態選項"

附註: 如果您使用的是 Cloud Insights 聯邦版、則限制使用 su 的使用者將無法收集泊塢視窗計量、因為存取泊塢視窗插槽需要以 root 身分執行 telegraf 容器、或使用 su 將 telegraf 使用者新增至泊塢視窗群組。Docker 度量集合和使用 su 預設為啟用;若要停用兩者、請移除 AgentConfiguration 檔案中的 _telegraf.泊 塢視窗項目:

…​
規格:
…​
Telegraf :
…​
     - 名稱: Docker
            執行模式:
              –示範
            替代:
              - 索引鍵:泊塢視窗 _UNIX 襪子 _placeholder
                值: UNIX : //RUN / Docker 。 sock
…​
…​

我在 Telegraf 記錄檔中看到類似以下內容的重複錯誤訊息:

好![agent] 寫入 outputs.http : POST 時發生錯誤 "https://<tenant_url>/rest/v1/lake/ingest/influxdb": 已超過內容期限(等待標頭時超過 Client.Timeout )

編輯 AgentConfiguration 中的 Teledraf 區段、並將 dockerMetricCollectionEnabled 設為 false 。如需詳細資訊、請參閱操作員的 "組態選項"

我遺失某些事件記錄的 _ 參與物件 _ 資料。

請務必遵循中的步驟 "權限" 上一節。

為什麼我看到兩個監控營運商 Pod 正在執行、一個名為 NetApp-CI-monitoring 、 <pod> 、另一個名為 monitoring 、 <pod> ?

截至 2023 年 10 月 12 日、 Cloud Insights 已重新考慮營運商、以便為使用者提供更好的服務;若要充分採用這些變更、您必須 移除舊的運算子安裝新的

我的 Kubernetes 事件意外停止回報 Cloud Insights 。

擷取事件導出者 Pod 的名稱:

`kubectl -n netapp-monitoring get pods

grep event-exporter

awk '{print $1}'

sed 's/event-exporter./event-exporter/'`
應為「 NetApp-CI-EVENT - Exporter 」或「 EVENT - Exporter 」。 接著、編輯監控代理程式 kubectl -n netapp-monitoring edit agent,然後設置 log_file 的值以反映上一步中找到的適當事件導出程序 Pod 名稱。 更具體地說、 log_file 應該設定為「 /var/log/container/NetApp-CI-event-Exporter.log 」或「 /var/log/containers/event-Exporter.log 」

…​.
fluent-bit:
…​
- name: event-exporter-ci
substitutions:
- key: LOG_FILE
values:
- /var/log/containers/netapp-ci-event-exporter*.log
…​
…​.
或者、您也可以 解除安裝重新安裝 代理程式。

我看到 Kubernetes Monitoring Operator 部署的 Pod 因為資源不足而當機。

請參閱 Kubernetes Monitoring Operator "組態選項" 視需要增加 CPU 和 / 或記憶體限制。

遺失影像或組態無效、導致 NetApp-CI-kube 狀態指標 Pod 無法啟動或準備就緒。目前狀況集已停滯、組態變更並未套用至 NetApp-CI-kube 狀態指標群。

StatefulSet 位於 A 中 "毀損" 州/省。在修正任何組態問題之後、 NetApp-CI-kube 狀態指標 Pod 就會恢復運作。

如需其他資訊、請參閱 "支援" 頁面或中的 "資料收集器支援對照表"