我遵循了这条指令 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
答案 0 :(得分:5)
据我所知(以及Google已向我确认的内容),新的Chromium操作系统映像目前不支持Stackdriver代理。作为一种解决方法,我使用以下命令将节点池升级回'container-vm'(具有Debian映像):
$ gcloud container clusters upgrade YOUR_CLUSTER_NAME --image-type=container_vm --node-pool=YOUR_NODE_POOL
替换群集名称并将节点池名称设置为之前升级为gci的名称(在我的情况下为“default-pool”)。节点版本将升级到最新版本。但是,您可以添加一个选项来部署另一个版本。
您现在应该可以像以前一样安装Stackdriver代理并设置所需的自定义指标。
答案 1 :(得分:5)
您可以在Container OS VM实例上启用Stackdriver Monitoring Agent,只需运行此命令(然后重新启动)即可启用监视代理程序:
gcloud compute instances add-metadata instance-name --metadata=google-monitoring-enabled=true
答案 2 :(得分:2)
我能够解决代理与新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
答案 3 :(得分:1)
您可以
sudo systemctl start stackdriver-logging
sudo systemctl start stackdriver-monitoring
它将在代理运行时启动一些容器。几分钟后,数据将显示在您的stackdriver仪表板中。
我在任何地方都没有找到文档,因此我无法确定在哪些图像中完全可用。但我在Container-Optimized OS 77-12371.114.0 stable