1

シェフ/ナイフでリモートシステムにユーザーを作成しようとしましたが、何か問題が発生しました...これが私の手順です:

  1. 「ユーザー」クックブックのインストール

ナイフ クックブック サイト インストール ユーザー

  1. そのためのデータバッグを作成する

ナイフ データ バッグ ユーザーの作成

  1. オプション付きのjsonファイルを作成する

cat data_bags/users/fatal.json
{
"id": "fatal",
"uid": "1002",
"home": "/home/fatal",
"groups": "sudo",
"shell": "/ bin/bash",
"パスワード": "$6$wkWXnXUk$xjaISNyG3cDGU2XYBAf."
}

  1. データバッグにエクスポートする

ファイル users data_bags/users/fatal.json からのナイフ データ バッグ

  1. リモートノードにレシピ「ユーザー」を追加する

knife nodechef-test-client show
ノード名:chef-test-client
環境:_default
FQDN:chef-test-client
IP:192.168.16.777
実行リスト:レシピ[グループ]、レシピ[ユーザー]
ロール:
レシピ:グループ、ユーザー
プラットフォーム: debian 7.1
タグ:

  1. ナイフサーバーにアップロード

ナイフ クックブック アップロード ユーザー

  1. リモート ノードでの同期

Chef -client起動中の Chef Client
、バージョン 11.8.0 が
実行リストのクックブックを解決しています: ["group::data_bag", "user::data_bag"]
クックブックの同期中:
- ユーザー
- グループ
クックブックのコンパイル中... , 0 件のリソースが更新されました

したがって、何も起こらず、ユーザーは作成されません。私は何を間違っていますか?、みんな私がそれに対処するのを手伝ってください

アップデート:

http://fnichol.github.io/chef-user/の USAGE セクション

レシピ [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  

そして何も起こりません:(

4

2 に答える 2

1

StephenKingは正しいです。default["users"] = ["users", "to", "load"] を属性に追加する必要があります。データバッグにはすべてのドメインユーザーが含まれていますが、各ノードはデータバッグからロードするユーザーを名前で決定するという考えだと思います。

于 2013-11-18T17:08:57.283 に答える