资源注解

用处不大的功能。是一个键值对,可以在创建相关资源的时候在metadata嵌套annotation进行指定,不能用于标签及挑选Kubernetes对象,仅可用于为资源提供“元数据”信息。如下面的示例:

apiVersion: v1
kind: Pod
metadata:
  name: nginx
  annotation:
    mrhan.cn/created-by: mrhan
spec:
...

下面是几个会用到资源注解的场景案例:

  • 由声明式配置层(如apply命令)管理的字段:将这些字段定义为注解有助于识别由服务器或客户端设定的默认值、系统自动生成的字段以及由自动伸缩系统生成的字段。
  • 构建、发行或镜像相关的信息,例如,时间戳、发行ID、Git分支、PR号码、镜像哈希及仓库地址等。
  • 指向日志、监控、分析或审计仓库的指针。
  • 由客户端库或工具程序生成的用于调试目的的信息:如名称、版本、构建信息等。
  • 用户或工具程序的来源地信息,例如,来自其他生态系统组件的相关对象的url。
  • 轻量化滚动升级工具的元数据,如config及checkpoints。
  • 相关人员的电话号码等联系信息,或者指向类似信息的可寻址的目录条目,如网站站点。

然后使用kubectl describe命令进行查看,也可以使用kubectl get -o yaml命令查看,
对于已经存在的资源对象可以使用kubectl annotate命令进行附加,比如kubectl annotate pods pods-example mrhan.cn/created-by="mrhan",此命令的效果和上述示例相同。