k8s常用命令

# 查看集群信息
kubectl cluster-info
# 查看各组件信息
kubectl -s http://localhost:8080 get componentstatuses
# 查看pods所在的运行节点
kubectl get pods -o wide
# 查看pods定义的详细信息
kubectl get pods -o yaml
# 查看rc信息
kubectl get rc
# 查看service的信息
kubectl get svc
# 查看集群节点信息
kubectl get nodes
# 创建
kubectl create -f 文件名
# 重建
kubectl replace -f 文件名 [--force]
# 删除
kubectl delete -f 文件名
kubectl delete pod pod名
kubectl delete rc rc名
kubectl delete service service名
kubectl delete pod --all

k8s概念
这个就跟学习数据库是一样的,首先理解数据库能干什么?由哪些东西组成。比如它是存客户业务数据的,由表、表空间等等一些东西组成。在k8s中有这么一些概念:cluster、Master、Node、Pod、Rc、Service、Namespace以及yaml文件、helm包、kube-proxy等等。本身就是一个分布式高可用的东西。

  • cluster。它是计算、存储、网络资源的整合。k8s利用这些资源去运行各种基于容器的应用。

  • Master。集群主节点,这个相当于人的大脑,我们的一切行为都是大脑去调配。它主要负责分配和调度任务。决定将应用放在哪里去执行。Master运行与 linux 上,可以使物理机也可以是虚拟机。为了可以实现高可用,可以部署多个Master节点。

  • Node。它的职责是听从Master的调配并负责容器 docker 的应用。Node由Master管理,去负责监控并汇报容器的状态,同时根据 Master的要求去管理容器的生命周期。它也是运行在 linux 上,可以是物理机也可以是虚拟机。

  • Pod。Pod是k8s调度的最小单元。每一个Pod包含一个或多个容器。pod中的容器会作为一个整体被Master调度到一个node上运行。

  • rc控制文件。主要用来管理配置。

  • service。顾名思义提供服务的,想要跑起来非得靠它不可。

  • Namespace。其实就类似于数据库中有多个用户,创建了30个视图,每个视图需要分配给不同的用户,并同时将他们的资源切割开来。便于管理。

  • helm包。k8s用来打包的工具。其实就类似与debian、乌班图得apt,红帽和centos上的 yum 仓库一样。而helm就是 k8s 上的包管理工具。

  • kube-proxy。它得作用主要用来做负载均衡功能。什么叫负载均衡?比如这里有 180 斤 土豆,大家平均分配哈,要不然两个人背了 30 斤,你让剩下的那个人情以何堪呀?

你可能感兴趣的:(k8s常用命令)