知识点记录-K8S中资源pod


资源描述:
apiVersion:
kind:
metadata:
spec:
status:

查看指令
kubectl explain pod/deploy.metadata/service等

说明

可运行多个容器: 有pause容器与多个用户容器
由pod控制器控制
监控
内部访问IP与端口

指令

格式 kubectl  run  pod控制器名称   参数

运行  kubectl run nginx --image=nginx --port=80  --namespace=dev

查看   kubectl get pod -n dev
查看   kubectl get pods -n dev
详细   kubectl get pod -n dev -o wide
详细  kubectl describe pod pod名称 -n dev
详细  kubectl get pod pod名称 -n dev -o yaml
删除  kubectl delete pod  pod名称  -n  dev(删除pod控制器 
kubectl delete  deployment pod控制器名称 -n dev
kubectl delete  deploy pod控制器名称 -n dev)

配置

创建pod-nginx.yaml

apiVersion: v1
kind: Pod
metadata:
	name: nginx
	namespace: dev
spec:
	containers: 
	- image: nginx
	  imagePullPolicy: IfNotPresent
	  name: pod
	  ports:
	  - name: nginx-port
	    containerPort: 80
	    protocol: TCP
     
创建 kubectl create -f pod-nginx.yaml

删除 kubectl delete -f pod-nginx.yaml


pod-base.yaml

apiVersion: v1
kind: Pod
metadata:
	name: pod-base
	namespace: dev
spec:
	containers: 
	- name: nginx
	  image: nginx
	  imagePullPolicy: Always/Never/IfNotPresent #镜像策略
	- name: busybox
	  image: busybox
	  command: ["/bin/sh" , "-c", "touch /test.txt;while true;do /bin/echo 5 >> /test.txt;sleep 5;done;"] # 启动指令
	  args: # 启动参数
	  #有command或args就不使用DOCKERFILE中的,没有就使用DOCKERFILE中ENTRYPOINT定义的
	  env: # 环境变量 可登录容器用echo显示 echo $username
	  - name: "username"
	    value: "admin"
	  - name: "password"
	    value: "admin"
	  ports:  # 端口设置  pod地址+容器端口访问
	   - name: base-port
	     containerPort: 80
	     protocol: TCP
	  resources: # 资源控制
	  	limits:
		  	cpu: "6"
		  	memory: "6G"
	  	requests:
		  	cpu: "2"
		  	memory: "2G"

登录pod内容器
kubectl exec pod名称 -n dev -ti -c 容器名称 /bin/sh

Logo

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

更多推荐