我正在研究一个用例,其中 sidecar 容器在更改主容器的目录权限时连续运行 shell 脚本。
我只想在 pod 中的主容器准备就绪后才启动侧容器。
我正在查看 Init Containers,我发现当我们具有 pod 间依赖关系时,init 容器是很好的候选者(pod A 仅在 Pod B 启动/健康后才启动)。
就我而言,只有在同一个 Pod 中启动容器 A 后,我才需要启动容器 B。
Deployment.yaml供参考
containers:
- name: {{ .Chart.Name }}
securityContext:
{{- toYaml .Values.securityContext | nindent 12 }}
image: "{{ .Values.image.repository }}:{{ .Values.image.tag | default .Chart.AppVersion }}"
imagePullPolicy: {{ .Values.image.pullPolicy }}
- name: container2
image: some-repo
imagePullPolicy: {{ .Values.image.pullPolicy }}
我不知道有任何 K8s 本机功能或挂钩可以满足您描述的用例。
我会这样解决:
在与常规容器相同的 Pod 中运行 sidecar 容器,并让它执行一个脚本,该脚本会在继续检查目录权限之前对应用程序容器的就绪端点执行 ping 操作。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)