在Kubernetes中,Labels(标签)和Annotations(注解)都是用于为资源对象添加元数据的机制,但它们在用途、选择能力以及数据形式上存在一些关键的区别。

首先,Labels主要用于标识和选择Kubernetes对象,比如Pods。它们是键值对的形式,被附加到对象上,并可以用于Label Selector(标签选择器)以识别、组织或选择对象的子集。这意味着,通过Labels,用户可以轻松地筛选和定位到特定的资源对象。

相比之下,Annotations则更多地用于存储非标识性的元数据,即那些对于Kubernetes系统本身来说并不直接有用的信息。这些信息可能是关于工具、库、系统或其他应用程序的额外数据,或者是用于实现更高级编排和复杂调度逻辑的信息。与Labels不同,Annotations不能用于选择对象,它们更多地是为了提供附加的、描述性的或补充性的信息。

在YAML文件中,Labels和Annotations通常以以下方式表示:

对于Labels:

apiVersion: v1
kind: Pod
metadata:
labels:
app: nginx
name: nginx-pod

在这个例子中,app: nginx就是一个Label,它被附加到了Pod对象上。

对于Annotations:

apiVersion: v1
kind: Pod
metadata:
annotations:
description: "This is an Nginx Pod"
name: nginx-pod

在这个例子中,description: "This is an Nginx Pod"就是一个Annotation,它也被附加到了Pod对象上。

简单总结,虽然Labels和Annotations在YAML文件中的表示方式很相似,label是给k8s用的,annotation是给人读的,细品!!!

K8s中Labels(标签)和Annotations(注解)对比的更多相关文章

  1. 在k8s中的基本概念

    在k8s中的基本概念 一.Pod1. podk8s下最重要也最基本的概念,由一个根容器Pause和许多用户业务容器组成,是容器的载体. 2. pod的yaml定义格式及字段 apiVersion: v ...

  2. [转帖]k8s 中的服务如何沟通

    k8s 中的服务如何沟通 https://www.jianshu.com/p/9fae09876eb7 本文将介绍 k8s 中的服务如何相互访问,例如后端服务访问数据库,不同类型的服务间的相互访问.并 ...

  3. k8s中yaml文常见语法

    在k8s中,所有的配置都是 json格式的.但为了读写方便,通常将这些配置写成yaml 格式,其运行的时候,还是会靠yaml引擎将其转化为json,apiserver 也仅接受json的数据类型. y ...

  4. Prometheus K8S中部署Alertmanager

    Prometheus K8S中部署Alertmanager 设置告警和通知的主要步骤如下:一.部署Alertmanager二.配置Prometheus与Alertmanager通信三.配置告警 1. ...

  5. [转帖]在 k8s 中自动为域名配置 https

    在 k8s 中自动为域名配置 https https://juejin.im/post/5db8d94be51d4529f73e2833 随着 web 的发展,https 对于现代网站来说是必不可少的 ...

  6. k8s中部署springcloud

    安装和配置数据存储仓库MySQL 1.MySQL简介 2.MySQL特点 3.安装和配置MySQL 4.在MySQL数据库导入数据 5.对MySQL数据库进行授权 1.MySQL简介 MySQL 是一 ...

  7. k8s中几个基本概念的理解,pod,service,deployment,ingress的使用场景

    k8s 总体概览 前言 Pod 副本控制器(Replication Controller,RC) 副本集(Replica Set,RS) 部署(Deployment) 服务(Service) ingr ...

  8. k8s 中的 Pod 细节了解

    k8s中Pod的理解 基本概念 k8s 为什么使用 Pod 作为最小的管理单元 如何使用 Pod 1.自主式 Pod 2.控制器管理的 Pod 静态 Pod Pod的生命周期 Pod 如何直接暴露服务 ...

  9. k8s 中 Pod 的控制器

    k8s 中 Pod 的控制器 前言 Replication Controller ReplicaSet Deployment 更新 Deployment 回滚 deployment StatefulS ...

  10. k8s中yaml文件pod的语法(转)

    kubernetes yaml格式的Pod配置文件 # yaml格式的pod定义文件完整内容: apiVersion: v1 #必选,版本号,例如v1 kind: Pod #必选,Pod metada ...

随机推荐

  1. Intel自曝未来三代酷睿!AI性能涨2倍、再涨2倍

    根据最新财报数据,Intel 2023年第四季度154.1亿美元,同比增长10%,全年收入542亿美元,同比下跌14%,预计2024年第一季度收入122-132亿美元. 其中,酷睿处理器业务为主的CC ...

  2. GoodSync(最好的文件同步软件)

    GoodSync是一款使用创新的最好的文件同步软件,可以在你的台式机.笔记本.USB外置驱动器等设备直接进行数据文件同步软件. GoodSync将高度稳定的可靠性和极其简单的易用性完美结合起来,可以实 ...

  3. ProTab(高级表格)的使用

    一. params 和 request 属性的使用 例子如下: import React, { useState } from 'react'; import { ProTable } from '@ ...

  4. CF351D Jeff and Removing Periods 题解

    题目链接:CF 或者 洛谷 挺有意思的题,一开始看到了 \(start+k\times step\),以为是根号分治方向的题,结果发现这题还给了一个"重排"操作玩玩.所以这题其实算 ...

  5. FOG Project的 FOS 编译

    FOG Project系统是一个免费的开源计算机网络克隆和管理解决方案系统,与传统的Ghost有很大的不同,如果您是计算机维护管理人员,当有大量机器需要同时部署上线的时候FOG Project是一个可 ...

  6. 设计模式(三十二)----综合应用-自定义Spring框架-自定义Spring IOC-自定义Spring IOC总结

    1 自定义Spring IOC总结 1.1 使用到的设计模式 工厂模式.这个使用工厂模式 + 配置文件的方式. 单例模式.Spring IOC管理的bean对象都是单例的,此处的单例不是通过构造器进行 ...

  7. 《ASP.NET Core 微服务实战》-- 读书笔记(第3章)

    第 3 章 使用 ASP.NET Core 开发微服务 微服务定义 微服务是一个支持特定业务场景的独立部署单元.它借助语义化版本管理.定义良好的 API 与其他后端服务交互.它的天然特点就是严格遵守单 ...

  8. .Net Core + 微信赋能企业级智能客服系统--学习笔记

    摘要 围绕目前需求猛增的微信及移动端企业智能客服业务,利用 .NET Core 的一系列优秀特性及 SignalR 模块打造全双工.跨微信/QQ/钉钉等应用平台.跨系统平台.跨终端.支持企业级并发的移 ...

  9. 跨界协作:借助gRPC实现Python数据分析能力的共享

    gRPC是一个高性能.开源.通用的远程过程调用(RPC)框架,由Google推出.它基于HTTP/2协议标准设计开发,默认采用Protocol Buffers数据序列化协议,支持多种开发语言. 在gR ...

  10. 【Unity3D】AudioSource组件

    1 简介 ​ 1)AudioSource 与 AudioListener 简介 ​ AudioSource(音频源)组件用于控制播放 AudioClip(音频片段),能够控制 2D 和 3D(距离越远 ...