![](/img/trans.png)
[英]enable stackdriver monitoring agent google container engine clusters on gci image
[英]How to install Stackdriver monitoring agent in Google Container VM images?
我按照此說明https://cloud.google.com/monitoring/agent/install-agent#linux-install
$ curl -O "https://repo.stackdriver.com/stack-install.sh"
$ sudo bash stack-install.sh --write-gcm
Unidentifiable or unsupported platform.
/etc/os-release 的內容。
$ cat /etc/os-release
BUILD_ID=8820.0.0
NAME="Container-VM Image"
GOOGLE_CRASH_ID=Lakitu
VERSION_ID=55
BUG_REPORT_URL=https://crbug.com/new
PRETTY_NAME="Google Container-VM Image"
VERSION=55
GOOGLE_METRICS_PRODUCT_ID=26
HOME_URL="https://cloud.google.com/compute/docs/containers/vm-image/"
ID=gci
為了更新特定的包,需要更新整個操作系統映像
因此,似乎我們必須等到更新堆棧驅動程序代理安裝版本的圖像或放棄它。
此外,這個 vm 圖像不是我的選擇。 新創建的 GKE 節點默認使用 Container-VM 映像。 所以現在我將嘗試通過gcloud container node-pools create --image-type
創建節點
您可以在容器操作系統虛擬機實例上啟用 Stackdriver Monitoring Agent,只需運行此命令(並重新啟動它)即可啟用監控代理:
gcloud compute instances add-metadata instance-name --metadata=google-monitoring-enabled=true
你可以做
sudo systemctl start stackdriver-logging
sudo systemctl start stackdriver-monitoring
它將在代理運行時啟動一些容器。 幾分鍾后,數據將顯示在您的 Stackdriver 儀表板中。
我沒有在任何地方找到它的記錄,所以我無法確定在哪些圖像中可以使用它。 但我在Container-Optimized OS 77-12371.114.0 stable
對其進行了測試
據我所知(以及 Google 向我確認的內容),新的 Chromium OS 映像目前不支持 Stackdriver 代理。 作為一種解決方法,我使用以下命令將節點池升級回“container-vm”(具有 Debian 映像):
$ gcloud container clusters upgrade YOUR_CLUSTER_NAME --image-type=container_vm --node-pool=YOUR_NODE_POOL
替換集群名稱並將節點池名稱設置為之前升級到 gci 的名稱(在我的情況下為“default-pool”)。 節點版本將升級到最新版本。 但是,您可以添加一個選項來部署另一個版本。
您現在應該能夠像習慣一樣安裝 Stackdriver 代理並設置所需的自定義指標。
我能夠解決代理與新 Chromium 映像不兼容的問題的方法是將代理部署為以特權模式運行的容器(方便地已經構建: https : //github.com/wikiwi/stackdriver-agent )在 kubernetes DaemonSet 中,因此它在每個主機上運行。 這是我最終使用的 YAML(空格很重要):
apiVersion: extensions/v1beta1
kind: DaemonSet
metadata:
name: stackdriver-agent
spec:
template:
metadata:
labels:
app: stackdriver-agent
spec:
containers:
- name: stackdriver-agent
image: wikiwi/stackdriver-agent
securityContext:
privileged: true
volumeMounts:
- mountPath: /mnt/proc
name: procmnt
env:
- name: MONITOR_HOST
value: "true"
volumes:
- name: procmnt
hostPath:
path: /proc
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.