このRecipeはUbuntu 14.04でうまく動きます
curl
が使えるならこのコマンドを入れるだけで動く、プロキシの設定、sudoerの編集、必要なアプリのインストールは自動で行う
curl -Ls https://raw.github.com/kagerouttepaso/chef_work/curl/install.sh | sh
#when use proxy
curl -Ls -x http://proxy.server:port https://raw.github.com/kagerouttepaso/chef_work/curl/install.sh | sh
- proxyの設定があるなら済ます
ubuntu14.04
ubuntu14.04
だと、Sudoで環境変数を引き継げないみたいsudo vim /etc/enviroments
sudo visudo
でプロキシ設定を入れのが最短??
openssh-server
をインストールlocalhost
にsshログインできるようにする- 下記のコマンド実行
/etc/enviroments
http_proxy="http://proxy.com:port"
https_proxy="http://proxy.com:port"
ftp_proxy="http://proxy.com:port"
no_proxy="localhost 192.168.*.*"
/etc/suなんとか
Defaults env_keep="http_proxy https_proxy ftp_proxy no_proxy"
コマンド
./install.sh localhost init
# レポジトリを作る。(このリポジトリみたいなものを作る)
rbenv exec bundle exec knife solo init chef-repo
cd chef-repo
# Recipeを作る
rbenv exec bundle exec knife cookbook create <recipe_name> -o site-cookbooks/
# nodeごとにどんなRecipeを適用させるか設定する
vim ./nodes/<hostname>.json
基本的にinstall.sh
を叩いておけば、ローカルに対してchefが実行されるので、
下記のコマンドを頑張って入力する必要はない
rbenv exec bundle exec knife solo cook localhost
#or
./install.sh
- 対象PCへsshログインができること
- knife-solo中にめちゃめちゃパスワードを聞かれるので、SSHログインは公開鍵認証ができるようになっているとなお良い
1, 対象へ chefをインストールする
rbenv exec bundle exec knife solo prepare <hostname>
#or
./install.sh <hostname> init
2, Jsonファイルを編集する
vim ./nodes/<hostname>.json
3, chefを起動する
rbenv exec bundle exec knife solo cook <hostname>
#or
./install.sh <hostname>