18.Kubernetes深入Pod之静态Pod

静态Pod

静态Pod是由kubectl进行管理的仅存于特定Node上的Pod。他们不能通过API Server惊醒管理,无法与ReplicationController、Deployment或者DaemonSet进行关联,并且kubelet也无法对他们进行健康检查。静态Pod总是由kubectl进行创建,并且总是在kubelet所在的Node上运行。

创建Pod有两种方式:配置文件HTTP方式,这里只说常用的配置文件方式

配置文件方式

在目录/etc/kubelet.d中放入static-web.yaml文件,内容:

apiVersion: v1
kind: Pod
metadata:
  name: static-web
  labels:
    name: static-web
  spce:
    containers:
    - name: static-web
      image: nginx
      ports:
      - name: web
        containerPort: 80

等一会,查看本机中已经启动的容器:

docker ps

就可以看到一个Nginx容器已经被Kubelet成功创建了出来。

到Master节点查看Pod列表,可以看到这个static pod

kubectl get pods

由于静态Pod无法通过API Server直接管理,所以在Master节点尝试删除这个Pod,将会使其标为Pending状态,且不会被删除。

kubectl delete pod static-web-node1

删除该Pod的操作只能是到其所在Node上,将其自定义文件static-web.yaml从/etc/kubelet.d目录下删除

rm /etc/kubelet.d/static-web.yaml
docker ps

容器已经删除了


链接:https://www.orchome.com/1255
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
 
原文地址:https://www.cnblogs.com/linux20190409/p/10976303.html