k8s常用命令
所有资源查看命令,在后面加上: -o wide 可以查看详细信息,包含资源所在ip等
如果资源指定了命名空间,那么在进行资源操作时都需要指定命名空间: -n nsName 或者使用: -A 或者 --all–namespace 表示在所有命名空间里面操作
1.镜像操作
#拉取镜像
docker pull imageName
#推送镜像
docker push imageName
#镜像重命名
docker tag oldImageName newImageName
#镜像打包
#直接打包
docker save imageName -o fileName.tar
#通过本地包加载镜像
docker load -i fileName.tar
#压缩打包
docker save imageName1 imageName2 ... |gzip > fileName.tar.gz
#本地压缩包加载成镜像
gunzip -c fileName.tar.gz | docker load
2.节点操作
#节点加入集群,主节点安装时有一个打印信息,类似: kubeadm join ...的语句,复制该语句在需要加入的节点信息上执行
#查询节点,后面加 : |grep xxx 可以按条件查询
kubectl get node
#查询节点并展示详细信息
kubectl get node -o wide
#查看指定节点的详细信息
kubectl describe node nodeId
#给节点设置标签,pod可以通过标签选择器指定其分布到对应的节点
kubectl label node nodeId env=cs
3.命名空间操作
如果资源指定的命名空间,那么在进行资源操作时都需要指定命名空间: -n nsName 或者使用: -A 或者 --all–namespace 表示在所有命名空间里面操作
#查询命名空间,namespace也可以使用简写ns
kubectl get namespace
#创建命名空间,
kubectl create namespace namespaceName
#命名空间设置harbor仓库权限
kubectl create secret docker-registry regcred --docker-server=harbor:1111 --docker-username=admin --docker-password=admin -n namespaceName
#也可以使用yaml的方式创建,对应yaml信息见下方。apply也可以换成create
kubectl apply -f ns.yaml
命名空间创建的yaml: ns.yaml
apiVersion vl
kind : Namespace
metadata :
name: namespaceName
4.deployment操作
#查询deployment,deployment也可简写成deploy。
kubectl get deployment
#修改deployment的yaml文件,deployment也可简写成deploy
kubectl edit deployment deploymentId
5.pod操作
#查询pod
kubectl get pod
#重启pod
kubectl delete pod podId
#查看pod的详细信息,可以用于当pod启动失败时,分析失败的原因
kubectl describe pod podId
#查看pod的日志
kubectl logs -f --tail=200 podId
#进入pod虚拟机,可以用于服务启动失败时,查看Tomcat启动的localhost.date.log日志,分析具体原因。退出虚拟机使用命令: exit
kubectl exec -it podId bash
6.service操作
#查询service,service也可简写成svc。加 |grep xxx 可以指定条件查询,条件可以是服务名字或端口
kubectl get service
#修改service
kubectl edit service serviceId
7.configMap操作
#查询configMap
kubectl get configmap
#修改configMap,configMap修改后需要重启对应的pod服务才能生效
kubectl edit configmap configmapId
#k8s环境地址映射问题,k8s集群通过coredns进行内部地址解析,所以查看及修改coredns的配置信息可以设置相应的地址解析
#查询coredns的信息,coredns属于k8s系统的组件,其一般在k8s系统的命名空间(kube-system)里面
kubectl get configmap -n kube-system |grep coredns
#修改configmap,修改后需要重启coredns的pod
kubectl edit configmap configmapId -n kube-system