wait-injection服务依赖等待注入
在kubernetes集群中,服务之间存在依赖关系,wait-injection利用initcontainer功能快速便捷的为服务添加相应的依赖关系
项目地址
https://github.com/huisebug/wait-injection.git
部署配置
1 | kubectl apply -f cert-manager.yaml |
为需要进行注入的服务所在命名空间打上label
1 | kubectl label namespace 业务namespace wait-pod-admission-webhook-injection=enabled |
利用kubernetes pod注入对运行的服务进行注入容器,注入多个init容器
需要在以下进行注解
pod.spec.template.metadata.annotations
tcpsocket.waiting.huisebug.org/dep数字: ip:端口号或者域名:端口号
tcpsocket使用telnet对依赖服务和端口进行telnet
httpget.waiting.huisebug.org/dep数字: api-url|成功标识
httpget对依赖服务给的api url进行curl,使用|作为分隔符,|后面是api请求成功标志
相同类型使用多个数字进行区分
依赖必须全部满足才会进行业务container创建
例如:
1 | apiVersion: apps/v1 |
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 huisebug!