Chefを使ってプロビジョニング
Chefレポジトリを作成する
-
レポジトリ作成
sudo knife solo init chef-repo
-
gitに登録
cd chef-repo git init git add . git commit -m 'first commit'
cookbookの作成
-
cookbookを作成する
$ knife cookbook create your_cookbook_name -o site-cookbooks
knife solo prepare
-
サーバ用のノードjsonファイルが./node/配下に作成される
$ sudo knife solo prepare 192.168.1.1
サーバ用設定
-
jsonファイルへ適用するレシピを指示したりパラメータを書き込む
# vi nodes/192.168.1.1
Chef Solo 実行
-
レシピをノードに適用
$ sudo knife solo bootstrap 192.168.1.1
サードパーティーのcookbookを使う場合
berkshelf
berkshelf導入
-
Gemfile作成
(chef-repo)/Gemfile
$ cat << EOS > Gemfile && cat Gemfile
source :rubygems
gem 'berkshelf'
EOS
-
bundle実行
bundle --path vendor/bundle
cookbookの取得
-
Berksfile作成
-
https://supermarket.chef.io/cookbooks-directoryから先人が作成したcookbookを拝借する。
(chef-repo)/Berksfile
# Berksfile
site :opscode
cookbook 'yum'
cookbook 'nginx'
...
(必要なものをリストアップ)
-
クックブック取得
$ bundle exec berks --path cookbooks
Gemfile作成
(chef-repo)/Gemfile
$ cat << EOS > Gemfile && cat Gemfile
source :rubygems
gem 'berkshelf'
EOS
bundle実行
bundle --path vendor/bundle
Berksfile作成
-
https://supermarket.chef.io/cookbooks-directoryから先人が作成したcookbookを拝借する。
(chef-repo)/Berksfile# Berksfile site :opscode cookbook 'yum' cookbook 'nginx' ... (必要なものをリストアップ)
クックブック取得
$ bundle exec berks --path cookbooks
Author And Source
この問題について(Chefを使ってプロビジョニング), 我々は、より多くの情報をここで見つけました https://qiita.com/LowSE01/items/d2c4a44e0285d7bba6ee著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .