如何使用salt.modules.grains.set将列表设置为Salt grain的取值
使用salt.modules.grains.set配置列表类型grain的正确方法
你之前的写法失效是因为命令行传入的逗号分隔内容会被默认识别为单个字符串,最终存储为字符串格式而非列表,可使用以下两种方法实现列表类型grain的配置:
- 方法1:用
--标记列表元素
命令如下:
这里的sudo salt $node grains.set roles -- k8s_node my_role--作用是告诉Salt的参数解析器,后续所有参数都是roles对应的值,会自动拼接为列表类型存储。 - 方法2:直接传入JSON格式的列表
注意需要用单引号包裹JSON结构避免shell转义:sudo salt $node grains.set roles '["k8s_node", "my_role"]'
设置完成后可以执行以下命令验证结果是否符合预期:
sudo salt $node grains.get roles
正常返回结果如下:
node: - k8s_node - my_role
内容的提问来源于stack exchange,提问作者papanito
相关产品推荐
相关产品推荐

