在 Google Kubernetes Engine 节点中添加不安全注册表的正确方法是什么?

mit*_*t13 4 google-kubernetes-engine

我们有一个使用 Google kubernetes 引擎创建的 kubernetes 集群(3 个节点)。

每个节点都运行容器优化的操作系统。

BUILD_ID=10032.71.0
NAME="Container-Optimized OS"
KERNEL_COMMIT_ID=c4c6234ae4f384ce00819c41b48ca8f6f1fa3ba8
GOOGLE_CRASH_ID=Lakitu
VERSION_ID=63
BUG_REPORT_URL=https://crbug.com/new
PRETTY_NAME="Container-Optimized OS from Google"
VERSION=63
GOOGLE_METRICS_PRODUCT_ID=26
HOME_URL="https://cloud.google.com/compute/docs/containers/vm-image/"
ID=cos
Run Code Online (Sandbox Code Playgroud)

我需要添加一个不安全的 docker 注册表,我计划将它添加到每个节点的 /etc/docker/daemon.json 中,然后重新启动 docker 使其生效。

我不知道这是否是正确的做法,因为即使我尝试在每个节点内启动 docker 容器,我也不确定 kubernetes 服务是否会启动并运行。

这是正确的做法吗?我在Gooogle Kubernetes Engine Docs 中看不到任何关于如何重新启动 kubernetes 服务的文档(或者我可能没有权限?)。

mit*_*t13 5

通过执行以下步骤,我能够添加不安全的注册表。

  1. 将每个节点的 /etc/default/docker 下的 DOCKER_OPTS 更新成这样

    DOCKER_OPTS="-p /var/run/docker.pid [...] --insecure-registry docker.registry2:5000 --insecure-registry docker.registry2:5001"

  2. 排空节点

    kubectl 排水管

  3. 在节点上重启docker

  4. 在其余节点上重复步骤 1 -3。