Kubernetes集群操作

查看集群信息:

kubectl get nodes

删除节点

(⽆效且显示的也可以删除)

后期如果 要删除某个节点,为了不增加其他节点的访问压力,先增加一个节点,再删除要删除的节点

语法 :kubect delete node 节点名

如果删除后,该节点需要再次加入集群,在master重置token,打印加入的命令

kubeadm token create --print-join-command

拿着打印的命令,再要加入的node节点执行

kubeadm reset

kubeadm join 192.168.88.110:6443 --token lbstm5.q1ebkuj09swyok2z --discovery-token-ca-cert-hash sha256:96c19c5b7d281678b7c80be1b6145a05bb337012658c8e6bc6419928acbc84ab

单独查看某⼀个节点

(节点名称可以用空格隔开写多个)

kubectl get node k8s-node1

使用 kubectl describe 命令,查看⼀个 API 对象的详细信息:

注意:Events(事件) 值得你特别关注

在 Kubernetes 执⾏的过程中,对 API 对象的所有重要操作,都会被记录在这个对象的 Events ⾥,并且显示在 kubectl describe 指令返回的结果中。

这个部分正是我们将来进⾏ Debug 的重要依据。如果有异常发⽣,⼀定要第⼀时间查看这些 Events,往往可以看到⾮常详细的错误信息。

查看node的详细信息

kubectl describe node k8s-node1

#注意:最后被查看的节点名称只能用get nodes⾥⾯查到的name!

cpu

Requests: 200m (10%) --- 表示容器请求的 CPU 资源为 200 毫核(milli-cores),即 0.2 个核心,占据了总 CPU 资源的 10%。

Limits: 100m (5%) --- 表示容器的 CPU 限制为 100 毫核,即 0.1 个核心,占据了总 CPU 资源的 5%。

memory

Requests: 100Mi (2%) --- 表示容器请求的内存资源为 100 MiB,占据了总内存资源的 2%。

Limits: 50Mi (1%) --- 表示容器的内存限制为 50 MiB,占据了总内存资源的 1%。

ephemeral-storage

Requests: 0 (0%) --- 表示容器请求的临时存储资源为 0。

Limits: 0 (0%) --- 表示容器的临时存储限制为 0。

hugepages-1Gi

解释

Requests 是容器启动时 Kubernetes 调度器用来决定节点上可用资源的基础。它代表了容器正常运行所需的最低资源量。

Limits 是容器可以使用的最大资源量。超出这个限制,容器可能会被限制或终止。

查看各组件信息:

NAME: kubernetes --- 这是服务的名称。

TYPE: ClusterIP --- 这是服务的类型。ClusterIP 类型的服务只能在集群内部访问,无法从外部直接访问。

CLUSTER-IP: 10.96.0.1 --- 这是服务在集群内部的虚拟 IP 地址。它用于将流量路由到服务后端的 Pods。

EXTERNAL-IP: <none> --- 这个字段显示为 <none>,意味着该服务没有配置外部 IP,也就是说,外部网络不能直接访问这个服务。ClusterIP 类型的服务默认没有外部 IP。

PORT(S): 443/TCP --- 这是服务监听的端口和协议。这里是 TCP 协议的 443 端口。

AGE: 19h --- 这是服务创建的时间,从创建到现在已经过去了 19 小时。

在不同的namespace⾥⾯查看service:

在不同的namespace⾥⾯查看service:

root@kub-k8s-master \~\]# kubectl get service -n kube-system -n:namespace名称空间 查看所有名称空间内的资源: \[root@kub-k8s-master \~\]# kubectl get pods --all-namespaces ![7e7edd2ace6b4949b66623e7e47fff42.png](https://i-blog.csdnimg.cn/direct/7e7edd2ace6b4949b66623e7e47fff42.png) 同时查看多种资源信息: \[root@kub-k8s-master \~\]# kubectl get pod,service -n kube-system ![9fc28fab3166404eb184edbb5ea99dc2.png](https://i-blog.csdnimg.cn/direct/9fc28fab3166404eb184edbb5ea99dc2.png) 查看主节点: \[root@k8s-master prome\]# kubectl cluster-info api查询: \[root@kub-k8s-master \~\]# kubectl api-versions ![ccf6e243bf9741c197c6a71c33231cd0.png](https://i-blog.csdnimg.cn/direct/ccf6e243bf9741c197c6a71c33231cd0.png)

创建名称空间

1.编写yaml文件

root@kub-k8s-master \~\]# mkdir prome \[root@kub-k8s-master \~\]# cd prome/ \[root@kub-k8s-master prome\]# vim namespace.yml --- # yaml开始的标记 apiVersion: v1 #api版本 kind: Namespace #类型---固定的 metadata: #元数据 name: ns-monitor #给命名空间起个名字 labels: #用于给这个 Namespace 添加标签。标签是键值对,可以用于标识、组织和选择资源 name: ns-monitor # 该namespace的标签 2.创建资源 \[root@k8s-master prome\]# kubectl apply -f namespace.yml 3.查看资源 \[root@k8s-master prome\]# kubectl get namespace 注: namespace 可以缩写为 ns 既: kubectl get ns 4.查看某⼀个namespace \[root@k8s-master prome\]# kubectl get namespace ns-monitor

5.根据标签名查询命名空间

而我们在上面输入的lable中的name的值 monitor_hah_lale,是给这个命名空间打的一个标签,键值对形式出现,可以用于标签查询,查询有特定标签的namespace

root@k8s-master prome\]# kubectl get namespaces --selector=name=monitor_hah_lale ![a35d283ee6c948b2a3da93fc1e300043.png](https://i-blog.csdnimg.cn/direct/a35d283ee6c948b2a3da93fc1e300043.png) 6.查看某个namespace的详细信息 ![795ac77c7e7043b9a0c4aa106670d039.png](https://i-blog.csdnimg.cn/direct/795ac77c7e7043b9a0c4aa106670d039.png) Annotations: \ # 没有注释 Status: Active #表示处于正常状态 7.修改名称空间的名字 不能直接修改,删除原有的命名空间,创建新的命名空间 kubectl create namespace new-namespace-name 或者 修改yml文件,重新创建 --- apiVersion: v1 kind: Namespace metadata: name: ns-monitor1 # 从ns-monitor 改为 ns-monitor1 labels: name: monitor_hah_lale 删除老的命名空间 \[root@k8s-master prome\]# kubectl delete namespace ns-monitor namespace "ns-monitor" deleted \[root@k8s-master prome\]# kubectl get ns

7.删除名称空间

root@k8s-master prome\]## kubectl delete -f namespace.yml \[root@k8s-master prome\]## kubectl delete namespace ns-monitor

相关推荐
灵壹Eli7 分钟前
Docker部署sprintboot后端项目
运维·docker·容器
有梦想的攻城狮5 小时前
【一起来学kubernetes】29、NFS使用详解
云原生·容器·kubernetes·nfs·网络文件系统
这个懒人6 小时前
Kubernetes深度解析:云原生时代的容器编排引擎
云原生·容器·kubernetes
小安运维日记9 小时前
CKS认证 | Day3 K8s容器运行环境安全加固
运维·网络·安全·云原生·kubernetes·云计算
我是唐青枫9 小时前
Linux ar 命令使用详解
linux·运维·服务器
mljy.9 小时前
Linux《进程概念(上)》
linux
余华余华9 小时前
计算机等级考试数据库三级(笔记3)
服务器·数据库·oracle
IEVEl10 小时前
Centos7 开放端口号
linux·网络·centos
今夜有雨.10 小时前
HTTP---基础知识
服务器·网络·后端·网络协议·学习·tcp/ip·http
techdashen10 小时前
Kubernetes比同规格虚拟机性能相差多少?
云原生·容器·kubernetes