Miz*_*aru 11 kubernetes google-kubernetes-engine google-cloud-build
我正在运行带有“ private-cluster”选项的Google Kubernetes Engine。我还定义了“授权主网络”以能够远程访问环境-这很好。现在,我想使用Google Cloud Build设置某种CI / CD管道-成功构建新的docker映像后,该新映像应自动部署到GKE。当我第一次触发新管道时,部署到GKE失败-错误消息是:“无法连接到服务器:拨打tcp xxx.xxx.xxx.xxx:443:I/O超时”。由于我怀疑“连接的主网络”选项是造成连接超时的根本原因,因此我添加了0.0.0。0/0到允许的网络并再次启动Cloud Build作业-这次一切进行得很好,并且在创建Docker映像后将其部署到GKE。好。
剩下的唯一问题是,我真的不想让整个Internet都能够访问我的Kubernetes主服务器-这是一个坏主意,不是吗?
是否有更优雅的解决方案来通过使用允许的主网络来缩小访问范围,并能够通过云构建进行部署?
这是目前无法云制造机器添加到VPC。同样,Cloud Build不会宣布构建计算机的IP范围。因此,如果没有在该VPC内的GCE上创建“ ssh堡垒实例”或“代理实例”,您今天就无法这样做。
我怀疑这会很快改变。GCB在GKE私有集群之前就已经存在,并且私有集群仍然是beta功能。
我们最终做了以下事情:
1)从cloudbuild.yaml中删除部署步骤
2) 在私有集群内安装 Keel,并在云构建器/注册表项目中为其授予 pub/sub 编辑器权限
Keel 将监控镜像的变化并根据您的设置自动部署它们。
这非常有效,因为现在我们推送了 sha 哈希图像更新,无需添加虚拟机或执行任何类型的堡垒/ssh 主机。
| 归档时间: |
|
| 查看次数: |
1525 次 |
| 最近记录: |