第5章Pod基础
1.什么叫Pod
POD内的容器使用container模式共享根容器的网络
容器看到的网络设备信息和根容器完全相同
POD内的多个容器可以直接使用localhost通信
POD内的多个容器不能绑定相同的端口
POD的生命周期和根容器一样,如果根容器推出,POD就退出了
直接创建的Pod资源类型是不受Pod副本控制器影响的,简单来说就是删了就没了,不会自动创建
2.Pod原理
1)Pod的组成
业务容器+根容器=POD
业务容器共享根容器的网络和文件系统
2)共享网络空间

3)共享文件系统

3.使用命令行形式创建一个Pod
kubectl create pod nginx --image=nginx
4.使用资源配置清单创建Pod
体验一下使用资源配置清单创建Pod:
cat > nginx-pod.yaml << 'EOF'
apiVersion: v1
kind: Pod
metadata:
  name: nginx
  labels:
    app: nginx
spec:
  containers:
  - name: nginx
    image: nginx
EOF
资源配置清单解释:
apiVersion: v1		#k8s资源的版本号
kind: Pod					#要创建的资源类型pod,deployment...
metadata:					#元数据,存在ETCD里的,不能重复,唯一标识这个资源
  name: nginx			#资源名称,必须写,不能重复
  labels:					#标签,非常重要
    app: nginx		#自定义 标签名:值
spec:							#POD的具体配置
  containers:			#容器的具体配置
  - name: nginx		#容器名
    imagePullPolicy: IfNotPresent	#镜像拉取策略,always,IfNotPresent
    image: nginx	#镜像
应用资源配置:
kubectl apply -f nginx-pod.yaml
查看Pod创建情况:
kubectl get pod
kubectl get pod -o wide
查看Pod详细信息:
kubectl describe pod nginx
5.学习查看资源配置清单
第一种方法:看命令行帮助说明
kubectl explain pod
kubectl explain pod.metadata
kubectl explain pod.spec
kubectl explain pod.spec.containers
第二种方法:看官方文档
https://kubernetes.io/zh-cn/docs/concepts/workloads/controllers/deployment/
第三种方法:看官方文档
6.Pod相关命令
kubectl get pod
kubectl get pod -o wide
kubectl apply -f nginx-pod.yaml
kubectl delete -f nginx-pod.yaml
kubectl create pod nginx-pod --image=nginx
kubectl create deployment nginx-dp --image=nginx --replicas=3
kubectl scale dp nginx-dp --replicas=5
kubectl set image dp nginx-dp nginx-dp=nginx:1.27.0
更新: 2024-08-28 13:48:16