antony@notes:~/kubernetes$ cat "透過-VMware-Aria-Operations-監控-Kubernetes.md"
透過 VMware Aria Operations 監控 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. 開始安裝
從 VMware Marketplace 下載該管理套件的 PAK 檔案。
使用管理員權限登入 VMware Aria Operations。
從左側選單中,點擊 Data Sources > Integrations。前往右側窗格中的 Repository 索引標籤。
在 Repository 索引標籤上,點擊 Add。

此時會出現「Add Solutions Wizard Options」(新增解決方案精靈選項)。該精靈包含三個頁面,您可以在此尋找並上傳 PAK 檔案、接受 EULA (使用者授權合約) 並進行安裝,以及檢視安裝過程。點擊 Browse (瀏覽) 以找到您的暫存資料夾並選取 PAK 檔案。
- 在升級至最新版本時,您可以勾選 Install the PAK file even if it is already installed (即使已安裝也要安裝 PAK 檔案) 和 Reset Default Content (重設預設內容) 這兩個選項。
點擊 Upload (上傳)。上傳過程可能需要幾分鐘。

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

當 VMware Aria Operations Management Pack for Kubernetes 安裝完成後,點擊 Finish (完成)。
從 Data Sources -> Integrations -> ADD → Kubernetes 索引標籤設定此項整合。
先在 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- 獲取 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- 依序輸入以下欄位內容:
- Cloud Account Information
- Name:
topgun
- Name:
- 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
- Credential Kind:
- Collector / Group: 選
CloudProxy-xx-xx-xx-xx-xxx
- Control Plane URL:
- Advanced Settings
- Java Process Monitoring: Activatied
- Delete nonexistent object older than: 2 hours
- cAdvisor Install Check Deactivated
- 點選左下角 SAVE 按鈕

- 確認連接成功
