k8s的常用命令(一)

常用的kubectl命令
 
kubectl run kubia --image=luksa/kubia --port=8080 --generator=run/v1
 
--image 指定镜像
--port 是告诉kubernetes 应用监听8080端口
--generator 通常不会用到,它让kubernetes创建一个replicationController . 一般不带这个参数 ,创建的是depoly资源,deploy 在调用replicaset资源,replicaset 和replicationController很像,好像是它的升级版本有更强的selector表达能力,而且这里的--generator=run/v1 并不是创建出的rc名称是run/v1,创建出的rc就是kubia, run/v1可能是标示rc的版本吧,具体不知道,反正后面不用这个,知道有这么个东西即可
后续学习中,得知--generator=run/v1 就是告诉kubernetes需要创建一个rc来管理pod
如果是:kubectcl run dnsutils --image=tutum/dnsutils --generator=run-pod/v1 --command -- sleep infinity
这里的--generator=run-pod/v1选项就是让kubectl直接创建pod,而不需要通过replicationController之类的资源来创建。
 
kubectl get pods
kubectl expose rc kubia --type=loadBalancer --name kubia-http
暴露 名称为kubia的rc 为名称kubia-http 的service,并且使用loadbalnacer,会将创建kubia时 port端口8080 映射出来
 
kubectl get service
 
kubectl get repliactioncontrollers
 
kubectl scale rc kubia --replicas=3 扩容为3个pod
 
kubectl get pods -o wide 查看pod在哪个node节点上
 
kubectl describe pod pod-id
 
 
查看集群状态
kubectl cluster-info
 
使用kubectl explain 来发现可能的API对象字段,如:
kubectl explain pods
想查看某个对象下某个具体字段的使用方法
kubectl explain pod.spec
 
使用kubectl create 来创建pod
kubectl create -f kubia-manual.yaml
 
得到运行中pod的完整定义
kubectl get pod kubia-manual -o yaml
kubectl get pod kubia-manual -o json
 
查看应用程序日志
kubectl logs kubia-manual
当一个pod中有多个容器时
kubectl logs kubia-manual -c kubia
 
在不通过service外界相与pod通信,可以使用port-forward命令将短裤转发到指定pod
以下命令会将机器的本地端口8888转发到我们的kubia-manual pod的端口8080:
kubectl port-forward kubia-manual 8888:8080
 
 
在kubernetes中 标签时可以组织kubernetes所有资源。
kubernetes 中创建出来的具体的对象都是资源。某一个资源 属于某一个资源类如 pod资源类,或者对象。
 
查看所有pod上有什么标签
kubectl get po --show-labels
 
如果你想将标签作为显示列的列头可以使用-L
kubectl get po -L env,app
 
添加pod标签
kubectl label po kubia-manual env=test
 
修改pod的现有标签
kubectl label po kubia-manual env=debug --overwrite
 
通过标签选择器列出pod
kubectl get po -l env=debug
 
列出包含evn标签的pod,不管env是什么值
kubectl get po -l env
 
列出不含evn标签的pod
kubectl get po -l '!env' (确保是单引号)
 
env !=
env in (test,debug)
env not in (prod,devel)

posted @ 2019-10-22 13:51  zhming  阅读(2170)  评论(0编辑  收藏