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
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。