如何在 kubernetes pod 中初始化 systemd 服务?
How to initialize systemd services in kubernetes pod?
我有一个来自基础 os centos/systemd 的图像。当我在容器的 laucher 文件中提供 "exec /usr/sbin/init" 并使用 docker systemd 服务创建容器时向上。
但是,当我在 kubernetes 中使用具有相同启动器文件的相同图像创建容器时,systemd 服务不会将 up.How 更改为 运行,kubernetes 中的 /usr/sbin/init 因此 systemd 服务会在容器创建
要解决此问题,您可以使用 kubernetes init container 运行 首先在主容器创建之前启动必要的服务。
apiVersion: v1
kind: Pod
metadata:
name: myapp-pod
labels:
app: myapp
spec:
initContainers:
- name: check-system-ready
image: busybox
command: ['sh', '-c', 'Your sysntax for systemd']
containers:
- your container spec
在这里分享官方 kubernetes init 容器文档:https://kubernetes.io/docs/concepts/workloads/pods/init-containers/
https://kubernetes.io/docs/tasks/configure-pod-container/configure-pod-initialization/
我有一个来自基础 os centos/systemd 的图像。当我在容器的 laucher 文件中提供 "exec /usr/sbin/init" 并使用 docker systemd 服务创建容器时向上。 但是,当我在 kubernetes 中使用具有相同启动器文件的相同图像创建容器时,systemd 服务不会将 up.How 更改为 运行,kubernetes 中的 /usr/sbin/init 因此 systemd 服务会在容器创建
要解决此问题,您可以使用 kubernetes init container 运行 首先在主容器创建之前启动必要的服务。
apiVersion: v1
kind: Pod
metadata:
name: myapp-pod
labels:
app: myapp
spec:
initContainers:
- name: check-system-ready
image: busybox
command: ['sh', '-c', 'Your sysntax for systemd']
containers:
- your container spec
在这里分享官方 kubernetes init 容器文档:https://kubernetes.io/docs/concepts/workloads/pods/init-containers/
https://kubernetes.io/docs/tasks/configure-pod-container/configure-pod-initialization/