Helm模板中&与*符号的含义是什么?
Helm模板中&和*符号的含义解释
在Helm模板里用到的&和*其实是YAML本身的语法特性,用来实现配置内容的复用,具体含义如下:
&:定义锚点(Anchor)
这个符号用来给一段YAML节点内容设置一个“别名”,把这段内容标记为可复用的锚点。比如示例里的labels: &chrome_node_labels,就是把当前labels下的所有配置内容,命名为chrome_node_labels的锚点,后续可以直接引用这段内容。*:引用锚点(Alias)
这个符号用来调用之前用&定义好的锚点内容,直接复用那段配置。示例里的labels: *chrome_node_labels,就是把前面定义的chrome_node_labels锚点里的所有labels内容,原封不动地放到这里,不用重复编写相同的标签配置。
示例作用说明
在你提供的Deployment模板中,通过锚点+引用的方式,保证了Deployment的元数据标签和Pod模板里的标签完全一致,既减少了重复代码,也避免了手动修改时可能出现的标签不一致问题。
内容的提问来源于stack exchange,提问作者deepakguna
相关产品推荐
相关产品推荐

