linux - 使用 Ansible 在 Kubernetes 集群中实现证书轮换功能

标签 linux kubernetes coreos kubernetes-security

如何使用 Ansible 在 kubernetes 集群中的不同层轮换证书?

之前我们使用 fleet,现在迁移到 kubernetes。

最佳答案

如果我听到你的情况是正确的,那么我认为你会对 DaemonSet 最满意安装(并可选择监控)ansible-pull.serviceansible-pull.timer在节点上。

DaemonSet确保容器被安排在每个节点上(不像 CronJob 或类似的),并使用 /etc/systemd/system安装到容器中的卷加上 go-systemd's ability to daemon-reload (当然还有 dbus 套接字),容器可以写出一个适当的描述 .service.timer该节点的文件。

然后ansible-pull将像以前一样运行,执行您现有的 ansible 剧本执行的任何步骤。

有很多方法可以在非节点机器上实现类似的操作,所以我将把它作为练习留给读者。

我不知道您将什么定义为“基础设施”层,但是从 ansible-pull 的角度来看,旋转 Kubernetes 证书相对简单:写出新的 worker.pemworker.key/etc/kubernetes/ssl , 反弹 kubelet.service (或者它的 hyperkube 等价物),瞧。我期望的上层平台服务由拥有它们的 (ReplicaSet|Deployment|ReplicationController|etc) 管理,这意味着对于集群内资源可以更具声明性,可以访问 ConfigMap 的全部功能。 , Secret , Service

关于linux - 使用 Ansible 在 Kubernetes 集群中实现证书轮换功能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46370808/

相关文章:

linux - 如何在 Ubuntu Linux 上安装 MonoGame 模板

node.js - 保护后端API端点(MERN应用程序)

redis - 错误 : Waiting for group to become stable, 当前操作:创建:4

nginx - 如何负载均衡容器?

linux - 使用 O_TMPFILE 清理大页面......或其他方法?

linux - 如何在 Codelite 中设置窗口透明度?

linux - Device::SerialPort 不会发送我的数据,除非我捕获串行端口

nginx - Kubernetes Nginx入口路由路径

docker - supervisord:是否可以将子进程标准输出重定向回 supervisord?

coreos - 如何查找给定机器上正在运行哪个版本的CoreOS