如何在Google Container VM映像中安装Stackdriver监控代理?

hir*_*shi 7 google-kubernetes-engine stackdriver google-container-os

我按照此说明 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.
Run Code Online (Sandbox Code Playgroud)

/ 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
Run Code Online (Sandbox Code Playgroud)

https://cloud.google.com/compute/docs/containers/vm-image/faq#what_is_the_software_package_manager_for_container-vm_image

为了更新特定包,需要更新整个OS映像

所以,似乎我们必须等到更新堆栈驱动程序代理安装的映像版本或放弃它.

此vm图像也不是我的选择.默认情况下,新创建的GKE节点使用Container-VM映像.所以现在我将尝试通过创建节点gcloud container node-pools create --image-type

kub*_*ii2 8

您可以在容器操作系统虚拟机实例上启用 Stackdriver Monitoring Agent,只需运行此命令(并重新启动它)即可启用监控代理:

gcloud compute instances add-metadata instance-name --metadata=google-monitoring-enabled=true
Run Code Online (Sandbox Code Playgroud)

  • 我与 Google 支持人员进行了讨论,他们分享了这个并且它有效。 (2认同)

Gui*_*ume 7

你可以做

sudo systemctl start stackdriver-logging
sudo systemctl start stackdriver-monitoring
Run Code Online (Sandbox Code Playgroud)

它将在代理运行时启动一些容器。几分钟后,数据将显示在您的 Stackdriver 仪表板中。

我没有在任何地方找到它的记录,所以我无法确定在哪些图像中可以使用它。但我在Container-Optimized OS 77-12371.114.0 stable


cod*_*ped 6

据我所知(以及Google已向我确认的内容),新的Chromium OS映像目前不支持Stackdriver代理.作为一种解决方法,我使用以下命令将节点池升级回'container-vm'(具有Debian映像):

$ gcloud container clusters upgrade YOUR_CLUSTER_NAME --image-type=container_vm --node-pool=YOUR_NODE_POOL
Run Code Online (Sandbox Code Playgroud)

替换群集名称并将节点池名称设置为先前已升级到gci的名称(在我的情况下为"default-pool").节点版本将升级到最新版本.但是,您可以添加一个选项来部署另一个版本.

您现在应该可以像以前一样安装Stackdriver代理并设置所需的自定义指标.