kubernetes中kubectl常用命令
一、Nodes
一个Pod总是在一个(Node)节点上运行,Node是Kubernetes中的工作节点,可以是虚拟机或物理机。每个Node由 Master管理,Node上可以有多个pod,Kubernetes Master会自动处理群集中Node的pod调度,同时Master的自动调度会考虑每个Node上的可用资源。
每个Kubernetes Node上至少运行着:
Kubelet,管理Kubernetes Master和Node之间的通信; 管理机器上运行的Pods和containers容器。
container runtime(如Docker,rkt)。
获取cluster中所有的nodes展示
kubectl get nodes
kubectl describe node
获取所有node信息
kubectl describe node
获取单个node信息
如:
kubectl describe node cn-hangzhou.i-bp19r1gdp82pt6s
二、Namespace
Kubernetes 支持多个虚拟集群,它们底层依赖于同一个物理集群。 这些虚拟集群被称为命名空间。
获取所有的namespace
kubectl get namespace
kubectl get ns
获取具体某个namespace里的pods
kubectl get pods --namespace dev
或简写
kubectl get po -n dev
获取某个命名空间内具体pods
kubectl get pods rccaccount-5588bc8679-j4f9x -n dev
三、Pods
Kubernetes Pod:
是Kubernetes中一个抽象化概念,由一个或多个容器组合在一起得共享资源。这些资源包括:共享存储,如 Volumes 卷网络,唯一的集群IP地址每个容器运,行的信息,例如:容器镜像版本
Pod是Kubernetes中的最小单位
查看所有namespace的pods
kubectl get pods -A
进入pods
kubectl exec -i -t marigold-oms-api-8c85755b5-qkhkh /bin/bash -n dev
查看log
cd log
tail -f base.log
base.log 出错和错误信息
Production.log 正常的rails输出,请求路由,sql执行
主要查看这两个log帮开发debug错误原因,提升工作效率
获取pod的信息详情
kubectl describe pod marigold-oms-api-8c85755b5-qkhkh -n dev
查看pods的log