如果是kubeadm的方式部署:
默认是在/etc/kubernetes/manifests目录下
在这里插入图片描述直接在该目录下创建新的yaml即可。例如:

static-web.yaml

apiVersion: v1
kind: Pod
metadata:
  name: static-web
  labels:
    role: myrole
spec:
  containers:
    - name: web
      image: nginx:1.17.6
      ports:
        - name: web
          containerPort: 80
          protocol: TCP

二进制部署的k8s则略有不同:
首先查看kubelet的执行参数是否有–pod-manifest-path=<路径>

systemctl status kubelet

在这里插入图片描述如果没有则需要在配置文件中增加该参数并指定静态pod存放目录–pod-manifest-path=<路径>

cat /usr/lib/systemd/system/kubelet.service
[Unit]
Description=Kubernetes Kubelet
After=docker.service
[Service]
EnvironmentFile=/opt/kubernetes/cfg/kubelet.conf
ExecStart=/opt/kubernetes/bin/kubelet $KUBELET_OPTS
Restart=on-failure
LimitNOFILE=65536
[Install]
WantedBy=multi-user.target

然后就可以发现待会儿静态pod就起来了,并且标有节点名称
在这里插入图片描述
静态pod不可被kubectl删除,只可以在静态pod目录中删除yaml文件。

Logo

K8S/Kubernetes社区为您提供最前沿的新闻资讯和知识内容

更多推荐