【问题标题】:troubles with data bags in chef/knife厨师/刀中数据包的问题
【发布时间】:2013-12-01 08:35:06
【问题描述】:

我尝试通过厨师/刀在远程系统上创建用户,但出现问题... 这是我的步骤:

  1. 安装“用户”说明书

刀菜谱网站安装用户

  1. 为其创建数据包

刀数据包创建用户

  1. 使用选项创建 json 文件

cat data_bags/users/fatal.json
{
“id”:“致命”,
“uid”:“1002”,
“家”:“/家/致命”,
“组”:“须藤”,
"外壳": "/bin/bash",
“密码”:“$6$wkWXnXUk$xjaISNyG3cDGU2XYBAf。”
}

  1. 将其导出到我的数据包中

来自文件用户data_bags/users/fatal.json的刀数据包

  1. 将配方“用户”添加到我的远程节点

刀节点厨师测试客户端展示
节点名称:chef-test-client
环境:_default
FQDN:厨师测试客户端
IP:192.168.16.777
运行列表:配方[组]、配方[用户]
角色:
配方:组、用户
平台:debian 7.1
标签:

  1. 上传到刀服务器

刀菜谱上传用户

  1. 在我的远程节点上同步

主厨客户
启动 Chef 客户端,版本 11.8.0
解析运行列表的食谱:["group::data_bag", "user::data_bag"]
同步食谱:
- 用户
- 组
编写食谱...
汇聚 0 个资源
Chef 客户端已完成,已更新 0 个资源

所以什么都没有发生,用户没有被创建;我做错了什么,请大家帮我处理一下

更新:

http://fnichol.github.io/chef-user/的使用部分中

要使用 recipe[user::data_bag],请将它包含在你的 run_list 中并有一个名为 >"users" 的数据包

所以我将我的运行列表设置更改为:

knife node show chef-test-client  
Node Name:   chef-test-client  
Environment: _default  
FQDN:        chef-test-client   
IP:          192.168.16.777  
Run List:    recipe[user::data_bag], recipe[group::data_bag]  
Roles:         
Recipes:     user::data_bag, group::data_bag  
Platform:    debian 7.1  

还有我的数据包:

knife data bag show users fatal  
groups:   sudo  
home:     /home/fatal  
id:       fatal  
password:  >$6$wkWXnXUk$xjaISNyG3cDGU2X  
shell:    /bin/bash  
uid:      1002  

然后什么都没有再次发生:(

【问题讨论】:

    标签: chef-infra knife


    【解决方案1】:

    您正在使用这本食谱:http://fnichol.github.io/chef-user/

    根据该描述,我认为您必须将fatal 用户显式添加到node[:users]

    【讨论】:

    • 你能告诉我我必须在这本食谱的哪个文件中添加这个字符串,这对我来说很难:(
    【解决方案2】:

    斯蒂芬金是对的。您必须将: default["users"] = ["users", "to", "load"] 添加到您的属性中。我认为这个想法是数据包包含所有域用户,但每个节点决定按名称从数据包中加载哪些用户。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-04-10
      • 1970-01-01
      相关资源
      最近更新 更多