ChefServerでjenkins構築

chef serverを使ってjenkinsを構築します。

vagrantでjenkinsをインストールするサーバを作成

$ vagrant up centos

Vagrantfile

1
2
3
4
5
6
7
8
VAGRANTFILE_API_VERSION "2"
Vagrant.configure(VAGRANTFILE_API_VERSIONdo |config|
  config.vm.define :centos do |dev|
    dev.vm.box               = "chef/centos-6.5"
    dev.vm.hostname          = "192.168.1.150"
    dev.vm.network :public_network, ip: "192.168.1.150"
  end
end

Opscode Communityからjenkinsのcookbookを取得

# 確認 
$ knife cookbook site  show jenkins
# インストール
$ knife cookbook site install jenkins

chef serverにcookbookを登録

$ knife cookbook upload jenkins --include-dependencies

clientをserverに登録

$ knife bootstrap 192.168.1.150 -x vagrant -P vagrant --sudo

clientにレシピを登録

$ knife node run_list add 192.168.1.150 \
'recipe[jenkins::java],recipe[jenkins::master]'

clientにレシピをインストール

$ knife ssh name:192.168.1.150 'sudo chef-client' -x vagrant -P vagrant

ブラウザから確認

http://192.168.1.150:8080/

f:id:katashiyo515:20140501002611j:plain

おわり