概要#
Chef-solo、Knife-soloをインストールして、スタンドアロン構成でクックブックの作成練習。
OS:CentOS6.5 (64bit)
作業のながれ#
Ruby/gemインストール
↓
Chef-soloインストール
↓
Gitインストール
↓
レポジトリ設定
↓
クックブックなどを準備
↓
リモートサーバへデプロイ実施
Ruby/gemインストール#
- 前提パッケージをインストール
# yum -y install gcc zlib zlib-devel openssl openssl-devel
- rubyの最新ソースをダウンロードする
# curl -O http://cache.ruby-lang.org/pub/ruby/2.1/ruby-2.1.5.tar.gz
- ソースを展開し、コンパイル
# tar zxvf ruby-2.1.5.tar.gz
# cd ruby-2.1.5
# ./configure
# make
# make install
- バージョン確認(実際に実行するユーザで確認)
$ ruby -v
ruby 2.1.5p273 (2014-11-13 revision 48405) [x86_64-linux]
- gemをダウンロードする
# curl -O http://production.cf.rubygems.org/rubygems/rubygems-2.4.4.tgz
- 解凍してセットアップ
# tar zxvf rubygems-2.4.4.tgz
# cd rubygems-2.4.4
# ruby setup.rb
Chef-soloインストール#
- Chef-Soloインストール
\# curl -L https://www.opscode.com/chef/install.sh | bash
:
warning: /tmp/install.sh.1116/chef-11.16.4-1.el6.x86_64.rpm: Header V4 DSA/SHA1 Signature, key ID 83ef826a: NOKEY
Preparing... ########################################### [100%]
1:chef ########################################### [100%]
Thank you for installing Chef!
- cher-soloのバージョン確認
$ chef-solo -v
Chef: 11.16.4
- chef Development Kitインストール
\# curl -O https://opscode-omnibus-packages.s3.amazonaws.com/el/6/x86_64/chefdk-0.3.5-1.x86_64.rpm
\# rpm -ivh chefdk-0.3.5-1.x86_64.rpm
Preparing... ########################################### [100%]
1:chefdk ########################################### [100%]
Thank you for installing Chef Development Kit!
- chef Development Kitバージョン確認(berksがインストールされていることを確認)
$ berks version
3.2.1
- knife-soloインストール
\# gem install knife-solo
:
Done installing documentation for plist, method_source, slop, coderay, pry, rack, libyajl2, ffi, ffi-yajl, hashie, mixlib-log, chef-zero, diff-lcs, erubis, highline, net-ssh, net-ssh-gateway, net-ssh-multi, mime-types, rest-client, wmi-lite, ipaddress, mixlib-shellout, mixlib-config, mixlib-cli, systemu, ohai, mixlib-authentication, chef, knife-solo after 76 seconds
30 gems installed
- knife-soloの初期設定
$ knife configure
~/.chef/knife.rbというknifeの設定ファイルが保存される。
configure中色々聞かれるが全て無視。
Gitをインストール#
- Epel設定
\# rpm -ivh http://ftp.riken.jp/Linux/fedora/epel/6/x86_64/epel-release-6-8.noarch.rpm
\# sed -i 's/enabled=1/enabled=0/g' /etc/yum.repos.d/epel.repo
- gitインストール
\# yum installl --enablerepo=epel git
-
GitHUBへ公開鍵を登録
-
.ssh/configを修正
$ cat ~/.ssh/config
Host github.com <-接続先を指定
IdentityFile ~/.ssh/hogeho.pem <-秘密鍵を指定
レポジトリ設定#
- Git初期設定実施
$ git config --global user.name "username"
$ git config --global user.email "mailadres@hogehoge.com"
$ git config --global color.ui auto
- Chef用のディレクトリを作成
$ knife solo init chef-repo
- ディレクトリへ移動し、コマンド実行
$ cd chef-repo
$ git init
Initialized empty Git repository in /workspace/git_repo/myself/.git/
- READMEファイルを作成し、コミット
$ touch README.md
$ git add README.md
$ git commit -m "First Commit"
- Gitのプロジェクトを指定し、pushする
$ git remote add origin git@github.com:hogehoge/fugafuga.git
$ git push -u origin master