Q1:新建命名空间,在该命名空间中创建一个pod
• 命名空间名称: aliang-cka
• pod名称: pod-01
• 镜像: nginx
A1:
kubectl create namespace aliang-cka
kubectl run pod-01 --image=nginx --namespace=aliang-cka
Q2:创建一个deployment并暴露Service
• 名称: web
• 镜像: nginx
A2:
kubectl create deployment web --image=nginx
kubectl expose deployment web --port=80 --type=NodePort --target-port=80 --name=web
kubectl get deploy,pods
kubectl get service
解释: (kubectl expose deployment web --port=80 --type=NodePort --target-port=8080 --name=web
--port=80 # service端口,k8s集群内部访问端口,目前用不到,后面再用
--target-port=8080 # 镜像里服务运行的端口,例如lizhenliang/java-demo,这是一个tomcat镜像,默认端口是8080,再例如nginx,默认端口80
--type=NodePort # 随机生成一个端口,k8s集群外部访问端口,kubectl get service,以下的31849就是随机端口
web NodePort 10.111.63.235 <none> 80:31849/TCP 3m20s )
Q3:列出命名空间下指定标签pod
• 命名空间名称: kube-system
• 标签: k8s-app=kube-dns
A3:
kubectl get pods -n kube-system --show-labels -l=k8s-app=kube-dns