Kubernetes详解(十二)——节点选择器与资源注解

本文涉及的产品
容器服务 Serverless 版 ACK Serverless,952元额度 多规格
容器服务 Serverless 版 ACK Serverless,317元额度 多规格
简介: Kubernetes详解(十二)——节点选择器与资源注解

今天继续给大家介绍Linux运维相关知识,本文主要内容是节点选择器与资源注解。

一、节点选择器简介
Pod结点选择器是标签选择器的一种应用,它能够在Pod对象创建的时候,运行在我们指定的节点上。在Pod对象的spec字段中,有nodeName和nodeSelector两个属性。执行命令:

kubectl explain pods.spec
1
可以看到这两个属性,结果如下所示:

二、节点标签以及节点标签添加
在Kubernetes集群中,每个结点都会有自己的标签,该标签与该节点的操作系统、基本属性有关。执行命令:

kubectl get nodes --show-labels
1
可以查看Kubernetes集群中的Node节点以及节点标签,该命令执行结果如下:

同样的,我们也可以给指定节点添加标签,该操作也会使用kubectl kube命令,命令格式如下:

kubectl label nodes/【节点名】 【标签键】=【标签值】
1
例如,执行命令:

kubectl label nodes/node2 mem=big
1
可以给Kubernetes集群中的node2节点添加mem=big的标签,该命令执行结果如下所示:

三、节点选择器应用
下面,我们就使用节点选择器,来控制Pod对象运行的节点。我们创建一个Pod对象的资源清单(对资源清单不了解的请参考文章:Kubernetes详解(九)——资源配置清单创建Pod实战,前面的内容在该文章中有详细介绍,这里就不过多赘述了,这里主要介绍的是节点选择器相关的配置),并写入内容如下:

apiVersion: v1
kind: Pod
metadata:
name: pod-demo-test
namespace: default
labels:
label1: mypod1
label2: mypod2
spec:
containers:

  • name: busybox
    image: busybox
    command:
    • "/bin/sh"
    • "-c"
    • "sleep 7200"
      nodeSelector:
      mem: big

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
在该资源清单的spec模块下,我们使用了nodeSelector节点选择器,并选择了mem=big节点。
资源清单创建完毕后,我们执行命令:

kubectl create -f pod-demo-test.yaml
1
按照资源清单的配置完成Pod对象的创建,该命令执行结果如下:

可以看到,我们在配置了节点选择器后,该Pod对象会运行在node2节点上,这就说明了节点选择器的选择Node节点作用。

四、资源注解
最后,我们来讲一下资源注解annotation。除了标签之外,Kubernetes集群中的各个资源对象还可以使用资源注解。资源注解与标签类似,并且也是键值对类型的数据,但是资源注解不能用于挑选对象,仅可以提供元数据信息。但是资源注解的好处在于不受字符数量的限制,并且支持标签中被禁用的字符。
原创不易,转载请说明出处:https://blog.csdn.net/weixin_40228200
————————————————

                        版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

原文链接:https://blog.csdn.net/weixin_40228200/article/details/124286589

相关实践学习
容器服务Serverless版ACK Serverless 快速入门:在线魔方应用部署和监控
通过本实验,您将了解到容器服务Serverless版ACK Serverless 的基本产品能力,即可以实现快速部署一个在线魔方应用,并借助阿里云容器服务成熟的产品生态,实现在线应用的企业级监控,提升应用稳定性。
云原生实践公开课
课程大纲 开篇:如何学习并实践云原生技术 基础篇: 5 步上手 Kubernetes 进阶篇:生产环境下的 K8s 实践 相关的阿里云产品:容器服务 ACK 容器服务 Kubernetes 版(简称 ACK)提供高性能可伸缩的容器应用管理能力,支持企业级容器化应用的全生命周期管理。整合阿里云虚拟化、存储、网络和安全能力,打造云端最佳容器化应用运行环境。 了解产品详情: https://www.aliyun.com/product/kubernetes
目录
相关文章
|
9天前
|
Kubernetes API 调度
Pod无法调度到可用的节点上(K8s)
完成k8s单节点部署后,创建了一个pod进行测试,后续该pod出现以下报错: Warning FailedScheduling 3h7m (x3 over 3h18m) default-scheduler 0/1 nodes are available: 1 node(s) had untolerated taint {node-role.kubernetes.io/control-plane: }. preemption: 0/1 nodes are available: 1 Preemption is not helpful for scheduling..
42 0
|
11天前
|
SQL Kubernetes 数据处理
实时计算 Flink版产品使用问题之在 flink-conf.yaml 中定义的配置在某些情况下未被正确应用到 K8s 上运行的任务管理器(JobManager)和任务管理节点(TaskManager),是什么导致的
实时计算Flink版作为一种强大的流处理和批处理统一的计算框架,广泛应用于各种需要实时数据处理和分析的场景。实时计算Flink版通常结合SQL接口、DataStream API、以及与上下游数据源和存储系统的丰富连接器,提供了一套全面的解决方案,以应对各种实时计算需求。其低延迟、高吞吐、容错性强的特点,使其成为众多企业和组织实时数据处理首选的技术平台。以下是实时计算Flink版的一些典型使用合集。
|
1月前
|
运维 Kubernetes Linux
Kubernetes详解(十一)——标签与标签选择器
Kubernetes详解(十一)——标签与标签选择器
30 1
|
1月前
|
存储 Kubernetes Docker
容器服务Kubernetes版产品使用合集之集群节点和 pod 实现自动扩缩容如何解决
容器服务Kubernetes版,作为阿里云提供的核心服务之一,旨在帮助企业及开发者高效管理和运行Kubernetes集群,实现应用的容器化与微服务化。以下是关于使用这些服务的一些建议和合集,涵盖基本操作、最佳实践、以及一些高级功能的使用方法。
|
1月前
|
运维 Kubernetes Linux
Kubernetes详解(九)——资源配置清单创建Pod实战
Kubernetes详解(九)——资源配置清单创建Pod实战
81 2
|
1月前
|
JSON Kubernetes API
Kubernetes详解(八)——Kubernetes资源配置清单
Kubernetes详解(八)——Kubernetes资源配置清单
41 2
|
弹性计算 Kubernetes 监控
Kubernetes 资源观测利器:KubeWatch
KubeWatch 用于观测 Kubernetes 资源情况,并实时通知到各种协作软件/聊天软件
2646 0
|
弹性计算 Kubernetes 监控
Kubernetes 资源观测利器:KubeWatch
KubeWatch 用于观测 Kubernetes 资源情况,并实时通知到各种协作软件/聊天软件,本文将为大家详细讲解 KubeWatch 的用法。
1388 0
Kubernetes 资源观测利器:KubeWatch
|
26天前
|
Kubernetes 微服务 容器
Aspire项目发布到远程k8s集群
Aspire项目发布到远程k8s集群
376 2
Aspire项目发布到远程k8s集群
|
14天前
|
Kubernetes Cloud Native 微服务
微服务实践之使用 kube-vip 搭建高可用 Kubernetes 集群
微服务实践之使用 kube-vip 搭建高可用 Kubernetes 集群
197 3