全版的kubernetes集群我们部署完成了。
下面我们使用新集群先温习一下之前学习过的命令,然后再认识一些新的命令,新的参数,新的功能。
熟悉命令
kubectl version
kubectl get node
kubectl get svc
运行一个pod
查看pod的日志 kubectl logs kubernetes-bootcamp-6b7849c495-bqc5r -f
kubectl run kubernetes-bootcamp --image=jocatalin/kubernetes-bootcamp:v1 --port=8080 kubectl get pods kubectl get deploy kubectl logs kubernetes-bootcamp-6b7849c495-bqc5r -f
image.png
进入容器
查看pod详情,发现pod里面有对应的挂载点,进入容器内发现挂载点内有证书。
kubectl describe pods kubectl exec -it kubernetes-bootcamp-6b7849c495-bqc5r bash
容器内的这2个文件是怎么来的,crt,namespace,token
就是secrets 里面的值复制给pod,apiserver里面的开启了serviceaccount,会在default的命名空间下,创建一个默认的serviceaccount,在每个pod启动后,会把servicesecret,以文件的形式挂载在pod上。
kubectl get serviceaccount -o json kubectl get secrets -o yaml
image.png
kubectl apply
nginx-pod.yaml 文件
apiVersion: v1kind: Podmetadata: name: nginxspec: containers: - name: nginx image: nginx:1.7.9 ports: - containerPort: 80
kubectl apply -f nginx-pod.yaml kubectl get pod kubectl describe pods nginx
这个比create生成时候多了Anntations。create是删除,在创建。apply是原有的应用的基础上覆盖,可以回滚。
kubectl 拉取镜像运行本地
kubectl run busybox --rm=true --image=busybox --restart=Never --tty -i
作者:IT人故事会
链接:https://www.jianshu.com/p/09d4eb65f3d1