Skip to content

antony@notes:~/kubernetes$ cat "透過-VMware-Aria-Operations-監控-Kubernetes.md"

透過 VMware Aria Operations 監控 Kubernetes

2025-11-14· kubernetes

透過 VMware Aria Operations 監控 Kubernetes

1. 先決條件

在使用 VMware Aria Operations Management Pack for Kubernetes 來監控 Kubernetes 叢集之前,您必須先準備好您的 VMware Aria Operations 環境。您必須確保 VMware Aria Operations 符合下列一般需求。

  • 確保您已安裝 VMware Aria Operations (SaaS)VMware Aria Operations 8.1 或更高版本。
  • 確認您已安裝 VMware Aria Operations Management Pack for Kubernetes
  • 確保您的環境中已部署一個 Kubernetes 叢集
  • 確保您已建立一個服務帳戶,該帳戶具有讀取權限,可用於存取叢集並取得詳細目錄。
  • 決定您的 Kubernetes 叢集的身份驗證模式
  • 決定您要使用 cAdvisor 還是 Prometheus 來監控您的 Kubernetes 環境。
    • 如果您選擇 cAdvisor,請確保 cAdvisor 是以 Kubelet 或 DaemonSet 的形式執行。
    • 如果您選擇 Prometheus,請確保您已在叢集內部署 Prometheus,或是在叢集外部署一個獨立的 Prometheus 執行個體。

2. 環境準備

2.1. 在 Kubernetes 中安裝 VMware Aria Operations Management Pack

2.1.1. 先決條件

  • 已安裝 Kubernetes
  • 已安裝 VMware Aria Operations
  • 確認擁有最新版本的管理套件,且該管理套件與您的 VMware Aria Operations 版本相容。
  • 確保擁有安裝管理套件的權限。

2.1.2. 開始安裝

  1. 從 VMware Marketplace 下載該管理套件的 PAK 檔案。

  2. 使用管理員權限登入 VMware Aria Operations。

  3. 從左側選單中,點擊 Data Sources > Integrations。前往右側窗格中的 Repository 索引標籤。

  4. Repository 索引標籤上,點擊 Addimage

  5. 此時會出現「Add Solutions Wizard Options」(新增解決方案精靈選項)。該精靈包含三個頁面,您可以在此尋找並上傳 PAK 檔案、接受 EULA (使用者授權合約) 並進行安裝,以及檢視安裝過程。點擊 Browse (瀏覽) 以找到您的暫存資料夾並選取 PAK 檔案。

    • 在升級至最新版本時,您可以勾選 Install the PAK file even if it is already installed (即使已安裝也要安裝 PAK 檔案) 和 Reset Default Content (重設預設內容) 這兩個選項。
  6. 點擊 Upload (上傳)。上傳過程可能需要幾分鐘。 image

  7. 閱讀並接受 EULA,然後點擊 Next (下一步)。 image

  8. 當 VMware Aria Operations Management Pack for Kubernetes 安裝完成後,點擊 Finish (完成)。

  9. 從 Data Sources -> Integrations -> ADD → Kubernetes 索引標籤設定此項整合。

  10. 先在 K8s 建立一個 read only 的 serviceAccount

cat <<EOF | kubectl apply -f -
kind: ClusterRole
apiVersion: rbac.authorization.k8s.io/v1
metadata:
  namespace: '*'
  name: vrops-read-only
rules:
  - apiGroups: ["*"]
    resources: ["*"]
    verbs: ["get", "list", "watch"]
  - nonResourceURLs:
      - /
    verbs:
      - get
---
apiVersion: v1
kind: ServiceAccount
metadata:
  name: vrops-mp-read-only-user
  namespace: default
---
apiVersion: v1
kind: Secret
type: kubernetes.io/service-account-token
metadata:
  name: vrops-mp-read-only-user-token
  namespace: default
  annotations:
    kubernetes.io/service-account.name: "vrops-mp-read-only-user"
---
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRoleBinding
metadata:
  name: vrops-mp-read-only-user
roleRef:
  apiGroup: rbac.authorization.k8s.io
  kind: ClusterRole
  name: vrops-read-only
subjects:
  - kind: ServiceAccount
    name: vrops-mp-read-only-user
    namespace: default
EOF
  1. 獲取 sa 的 token
echo $(kubectl -n default get secret vrops-mp-read-only-user-token -o jsonpath='{.data.token}' | base64 --decode )

執行結果:

eyJhbGciOiJSUzI1NiIsImtpZCI6Ijk5Vi1DZlc5M1Y0eUh5UEtBYTA4bG9OaC1jMFFTT0s1cElCa0lOZ3NuaTAifQ.eyJpc3MiOiJrdWJlcm5ldGVzL3NlcnZpY2VhY2NvdW50Iiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9uYW1lc3BhY2UiOiJkZWZhdWx0Iiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9zZWNyZXQubmFtZSI6InZyb3BzLW1wLXJlYWQtb25seS11c2VyLXRva2VuIiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9zZXJ2aWNlLWFjY291bnQubmFtZSI6InZyb3BzLW1wLXJlYWQtb25seS11c2VyIiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9zZXJ2aWNlLWFjY291bnQudWlkIjoiNDI2MmJmNTctMzA5OC00ZjYxLWFlMDAtNDE3M2UzMmYzZGJjIiwic3ViIjoic3lzdGVtOnNlcnZpY2VhY2NvdW50OmRlZmF1bHQ6dnJvcHMtbXAtcmVhZC1vbmx5LXVzZXIifQ.lpM7IEWiiB4sbrCLYB-Re_R4d7-g3sELisU4npjJyp_pwzJB0LehOo-pwnlwWH33FtTOqrsD26hYlYO5POmEpGjAUt49DoL9-SkoOfCjcQy82lGKbj_F6kMVqyddVEcHBIUWIuHAckvekSerLxH1M4dIztBnTFXulKJ_GIY72VA6aQOt0kGX35-dCH8GK-nHUJIu5cKcbrWV1NAfkzLBpFqlkVnjcOgHpf2jXJ3-3ozGQ4wMvCeZlG9YA86rY8Xn1XrlbztQx2klURLuy4b2RgEt7sfZuilrZScrFoPI68a7Av5prb8EQeRnzEZSsagNP5RfH5PG1qmRW64R_BrAlg
  1. 依序輸入以下欄位內容:
  • Cloud Account Information
    • Name: topgun
  • Connection Information
    • Control Plane URL: https://172.20.6.10:6443
    • Collector Service: Prometheus Server
    • Credential: <點選右邊的 + 按鈕>
      • Credential Kind: Token Auth
      • Credential name: kubeadm-prometheus
      • Bearer Token: 將步驟 11 得到的 token 複製貼上
      • Prometheus Server: http://prometheus.bbg.com:80
      • Prometheus endpoint username: bigred
      • Prometheus endpoint password: bigred image
    • Collector / Group: 選 CloudProxy-xx-xx-xx-xx-xxx image
  • Advanced Settings
    • Java Process Monitoring: Activatied
    • Delete nonexistent object older than: 2 hours
    • cAdvisor Install Check Deactivated
  • 點選左下角 SAVE 按鈕 image
  1. 確認連接成功 image