使用 Cloud Deployment Manager 定义 Container-Optimized OS 实例模板
Use Cloud Deployment Manager to define a Container-Optimized OS instance template
我使用 google deployment manager 创建:
- 实例模板
- 一个实例组管理器
- 一个自动缩放器
这很有用(我在创建这样的实例模板时使用了这个 tutorial). However, I fail to define an instance template that runs a docker container (fwiw: the google cloud web console looks as that)。
我尝试了几件事(有些可能是愚蠢的):
查看工作实例模板的描述并尝试重现它。
- 使用命令
gcloud compute instance-templates describe <working-template>
获取工作实例模板的扩展定义
- 定义与工作实例模板匹配的实例模板
- 进行测试部署
- SSH 进入生成的实例,确认目标镜像没有被拉取
不要使用Container-Optimized OS (aka. copy this example)
- 在 yaml 中用我的 gcr.io 托管的 docker 图片替换
spec containers image
。
- 进行测试部署。
- SSH 进入生成的实例,确认目标镜像未被拉取。
确认之前的方法有问题:获取gcloud
console util command,复制工作实例模板。更新部署,以便实例组使用此手动复制的实例模板。
- 进行测试部署。
- SSH 进入生成的实例,确认目标镜像未被拉取。
确认 google 部署管理器没有乱来。
- 更新部署以便实例组使用工作实例模板。
- 进行测试部署。
- SSH 进入生成的实例,确认所有工作都按预期进行。
我是不是走错方向了?
为了使其与 Container-Optimized OS 一起使用,我定义了一个包含元数据 "user-data" 的模板,其中包含一个 "cloud-config" 文件,该文件创建一个运行预期容器的 systemd 服务。
我在 gist 上发布了结果,您必须 (a) 在 deploy.yaml
文件中指定 dockerImage
,并且 (b) 如果需要特殊范围更新将它们与您的 developer.gserviceaccount.com 帐户一起设置在 instance_template.py
中。
希望对您有所帮助。
我使用 google deployment manager 创建:
- 实例模板
- 一个实例组管理器
- 一个自动缩放器
这很有用(我在创建这样的实例模板时使用了这个 tutorial). However, I fail to define an instance template that runs a docker container (fwiw: the google cloud web console looks as that)。
我尝试了几件事(有些可能是愚蠢的):
查看工作实例模板的描述并尝试重现它。
- 使用命令
gcloud compute instance-templates describe <working-template>
获取工作实例模板的扩展定义 - 定义与工作实例模板匹配的实例模板
- 进行测试部署
- SSH 进入生成的实例,确认目标镜像没有被拉取
- 使用命令
不要使用Container-Optimized OS (aka. copy this example)
- 在 yaml 中用我的 gcr.io 托管的 docker 图片替换
spec containers image
。 - 进行测试部署。
- SSH 进入生成的实例,确认目标镜像未被拉取。
- 在 yaml 中用我的 gcr.io 托管的 docker 图片替换
确认之前的方法有问题:获取
gcloud
console util command,复制工作实例模板。更新部署,以便实例组使用此手动复制的实例模板。- 进行测试部署。
- SSH 进入生成的实例,确认目标镜像未被拉取。
确认 google 部署管理器没有乱来。
- 更新部署以便实例组使用工作实例模板。
- 进行测试部署。
- SSH 进入生成的实例,确认所有工作都按预期进行。
我是不是走错方向了?
为了使其与 Container-Optimized OS 一起使用,我定义了一个包含元数据 "user-data" 的模板,其中包含一个 "cloud-config" 文件,该文件创建一个运行预期容器的 systemd 服务。
我在 gist 上发布了结果,您必须 (a) 在 deploy.yaml
文件中指定 dockerImage
,并且 (b) 如果需要特殊范围更新将它们与您的 developer.gserviceaccount.com 帐户一起设置在 instance_template.py
中。
希望对您有所帮助。