MacのChef環境作成からcookbookの作成実行まで

投稿者: | 2018年8月17日

Mac環境にChefの実行環境を導入する手順です。
下記の公式サイトからchefdk(Chef Development Kit)をダウンロードします。
https://downloads.chef.io/chefdk#mac_os_x
ダウンロードしたファイルを実行しインストールを進めます。
続いてknife-zeroをインストールします。

$ chef gem install knife-zero --no-document

ここまで実行環境の導入が完了しました。
続いてリポジトリを作成します。

$ chef generate repo chef-repo
$ cd chef-repo
$ mkdir .chef
$ echo 'local_mode true' > .chef/knife.rb

続いてリモートサーバと接続し、chefのエージェントをインストールします。

$ knife zero bootstrap リモートサーバのホスト名 -x root --sudo -N ノード名(自由に設定可)
$ knife node list

knife node listで上記で設定したノード名が表示されれば設定完了です。
なお、リモートサーバに対しての接続の1つ1つをノードと呼んでます。
続いてcookbookの作成です。

$ cd cookbook
$ chef generate cookbook クックブック名

作成したクックブックを実行します。
ちなみに、作成したばかりのデフォルトの状態でも空振りで実行だけはできます。

$ knife node run_list add gjs web-server
$ knife zero converge -a knife_zero.host "name:ノード名" -x root --sudo -i ~/.ssh/鍵名

動作が正常に終了すればmacでの実行環境の構築が完了です。
以前まではvagrant環境にCentOSを導入して実行していたが作業マシンがMacに切り替わったため直接環境を導入しました。
なお、Vagrantでの実行環境構築はQiita等で公開しています。
古い記事なのでクックブックの作成コマンドが新しいchefDKだと実行できません。
この記事に記述している通りに実行すれば実行可能です。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です