Kubernetes-标签和注解(二十二)
1 标签
1.1 为什么要有标签?
在微服务架构中,部署的微服务数量很容器达到几十个,这些组件可能是副本(部署同一组件的多个副本)和多个不同的发布版本(stable、beta、canary等)同时运行。导致K8S系统中会出现多个pod,如果没有机制去组织这些组件,极容易产生混乱。需要一种能够基于任意标准将上述pod组织成更小群体的方式,这个时候就产生了标签,标签可以组织pod和其他K8S对象。
1.2 标签介绍
标签是一种简单却功能强大的K8S特性,可以附加到K8S资源的任意键值对,可以通过标签选择器筛选出需要寻找的确切标签的资源。在资源内标签的key需唯一,一个资源可拥有多个标签。
K8S中的任意API对象都是通过Label进行标识、实质是一系列key/value键值对,其中key与value由用户自己指定。
金丝雀发布:在部署新版本时,先只让一小部分用户体验新版本以观察新版本的表现,然后再向所有用户进行推广,这样可防止暴露有问题的版本给过多的用户。
1.3 标签命令
列出pods的标签
$ kubectl get po --show-labels
查看具体标签
$ kubectl get po -L label_key1, label_key2
添加标签
$ kubectl label po po_name label_key=label_value
其中,po_name表示pod名,label_key表示标签的名称,label_value表示标签的值。
修改标签
$ kubectl label po po_name label_key=label_new_value --overwrite
其中,po_name表示pod名,label_key表示标签的名称,label_new_value表示标签的新值。
2 标签选择器
2.1 标签选择器介绍
标签选择器允许选择标记有特定标签的pod子集,并且对这些pod进行操作,它是一种能够根据是否包含某个特定值的特定标签过滤资源。
2.2 标签选择器过滤条件
1)包含或不包含使用特定键的标签;
2)包含具有特定键和值的标签;
3)包含具有特定键的标签,但其值与指定的不同;
2.3 标签选择器的使用
使用标签选择器查看某键值的标签的pod
$ kubectl get po -l label_key=label_value
列出所有包含某标签的pod
$ kubectl get po -l label_key
列出所有没有某标签的pod
$ kubectl get po -l '!label_key'
2.4 标签选择器约束pod调度
大部分创建的pod都是随机调度到工作节点上,在某些特殊情况下,如果需要将pod调度到指定类型的节点上,如硬件基础设施不是同质,某些工作节点需要使用机械硬盘,某些节点使用固态硬盘,此时需要通过节点标签和节点标签选择器完成。
如需要将pod调度到GPU计算的节点上。
给节点添加标签
$ kubectl label node node_name gpu=true
将pod调度到特定节点
spec.nodeSelector.gpu=true,届时创建pod后,K8S会通过标签和标签选择器从只包含gpu=true的节点上选择并调度。
3 注解
3.1 注解简介
注解是键值对,类似于标签,主要作用是保存标识信息,不可以用于对对象分组。与标签相比而言,注解包含数据更多一些,总共不超过256KB。
3.2 注解命令
添加注解
$ kubectl annotate pod pod_name annotate_key="annotate_value"
其中,pod_name为pod名称,annotate_key为注解键,annotate_value为注解值;
查看注解
$ kubectl describe pod pod_name
查看Annotations字段值
参考书籍
《k8s in action》
《Kubernetes权威指南》
Kubernetes-标签和注解(二十二)相关推荐
- GUI的演化和python编程——Python学习笔记之二十二
GUI的演化和python编程--Python学习笔记之二十二 写完了有关长寿的两篇博文,本该去完成哥德尔那个命题六的.对计算机图形界面的好奇,让我把注意力暂时离开那个高度抽象难读的哥德尔,给转到计算 ...
- Senparc.Weixin.MP SDK 微信公众平台开发教程(二十二):如何安装 Nuget(dll) 后使用项目源代码调试...
最近碰到开发者问:我使用 nuget 安装了 Senparc.Weixin SDK,但是有一些已经封装好的过程想要调试,我又不想直接附加源代码项目,这样就没有办法同步更新了,我应该怎么办? 这其实是一 ...
- 【转载】 javaweb学习总结(二十二)——基于Servlet+JSP+JavaBean开发模式的用户登录注册 - 孤傲苍狼 - 博 http://www.cnblogs.com/xdp-gacl/
javaweb学习总结(二十二)--基于Servlet+JSP+JavaBean开发模式的用户登录注册 一.Servlet+JSP+JavaBean开发模式(MVC)介绍 Servlet+JSP+Ja ...
- 程序员编程艺术第一 二十二章集锦与总结(教你如何编程)
分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow 也欢迎大家转载本篇文章.分享知识,造福人民,实现我们中华民族伟大复兴! 程序员编 ...
- 程序员编程艺术第一~二十二章集锦与总结(教你如何编程)
程序员编程艺术第一~二十二章集锦与总结(教你如何编程) 作者:July.编程艺术室. 出处:http://blog.csdn.net/v_JULY_v . 题记 好久没更新博客了,虽只有一个月,但对我 ...
- 2021年大数据Hadoop(二十二):MapReduce的自定义分组
全网最详细的Hadoop文章系列,强烈建议收藏加关注! 后面更新文章都会列出历史文章目录,帮助大家回顾知识重点. 目录 本系列历史文章 前言 MapReduce的自定义分组 需求 分析 实现 第一步: ...
- 一位中科院自动化所博士毕业论文的致谢:二十二载风雨求学路,他把自己活成了光.........
4月18日,中国科学院官方微博发布消息,披露了这篇论文为<人机交互式机器翻译方法研究与实现>,作者是2017年毕业于中国科学院大学的工学博士黄国平. 这篇论文中情感真挚的<致谢> ...
- iOS 11开发教程(二十二)iOS11应用视图实现按钮的响应(2)
iOS 11开发教程(二十二)iOS11应用视图实现按钮的响应(2) 此时,当用户轻拍按钮后,一个叫tapButton()的方法就会被触发. 注意:以上这一种方式是动作声明和关联一起进行的,还有一种先 ...
- 实验二十二 SCVMM中的SQL Server配置文件
实验二十二 SCVMM中的SQL Server配置文件 在VMM 2012中管理员可以使用 SQL Server 配置文件,在部署完成虚拟机之后,实现 SQL Server 数据库服务自动化部署并交付 ...
- 插入DLL和挂接API——Windows核心编程学习手札之二十二
插入DLL和挂接API --Windows核心编程学习手札之二十二 如下情况,可能要打破进程的界限,访问另一个进程的地址空间: 1)为另一个进程创建的窗口建立子类时: 2)需要调试帮助时,如需要确定另 ...
最新文章
- 学会对mysql的增删改查_Go实现对MySQL的增删改查
- 第一阶段:Java基础之变量
- OpenCV图像操作
- 在Windows Media Center中收听超过100,000个广播电台
- java mic波形识别_会议季Mic Drop:您不应该错过的13场Java演讲
- java学习(70):GUL图形用户界面初识
- 如何将SAP数据传输到其他系统(Transferring Data from SAP to Other Systems)
- 用Python一键生成炫酷九宫格图片,火了朋友圈
- C# 可空类型和空接合运算符(??)
- 【leetcode】963. Minimum Area Rectangle II
- 国内物联网平台初探(五) ——机智云IoT物联网云服务平台及智能硬件自助开发平台...
- 全渠道数字化营销平台
- qq浏览器android flash,支持flash游戏 安卓QQ浏览器2.0预览版体验
- matlab tic和toc单位,matlab toc tic 的用法
- Maven pom 继承聚合
- 乐高机器人EV3的PID巡线控制——附源程序
- 入门系列之改进小波阈值降噪
- 全球与中国DIN导轨式信号调理器市场现状及未来发展趋势
- 非常不错的地区三级联动,js简单易懂。封装起来了(转)
- ZZULIOJ 1114-1130 数组专题 参考代码
热门文章
- 使用PyCharm连接云主机教程
- 压缩版styleGAN(Mobile StyleGAN)参数更少、计算复杂度更低
- AMD、CMD、CommonJs、ES6的对比
- StringUtils详细介绍
- phpcms内容页 调用 上一级栏目id,catname等信息 - 代码篇
- win10快速运行vue项目跑起来 - 方法篇
- python操作excel命令_python操作Excel读写(使用xlrd和xlrt)[转帖]
- 两台电脑usb直连传数据_如何通过一根USB数据线把手机/平板充当电脑的第二个显示器...
- 戴尔服务器t110做系统,戴尔服务器T110
- php zip 归档使用工具,PHP 压缩与归档扩展 Zip_编程学问网