LoginSignup
14
14

More than 5 years have passed since last update.

Vagrant+ChefでUbuntuサーバに「最低限必要なもの」をインストールする

Posted at

システム環境

・作業環境:OSX 10.8.4
・試験環境:Vagrant + Ubuntu12.04 LTS
・Chef 11.4.4
・knife-solo 0.3.0

試験環境上にChef-soloをインストール

$ knife solo prepare precise
Bootstrapping Chef...
--2013-07-23 14:03:00--  https://www.opscode.com/chef/install.sh
Resolving www.opscode.com (www.opscode.com)... 184.106.28.82
Connecting to www.opscode.com (www.opscode.com)|184.106.28.82|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 6510 (6.4K) [application/x-sh]
Saving to: `install.sh'

100%[======================================>] 6,510       --.-K/s   in 0s

2013-07-23 14:03:01 (292 MB/s) - `install.sh' saved [6510/6510]

Downloading Chef 11.4.4 for ubuntu...
Installing Chef 11.4.4
Selecting previously unselected package chef.
(Reading database ... 37489 files and directories currently installed.)
Unpacking chef (from .../chef_11.4.4_amd64.deb) ...
Setting up chef (11.4.4-2.ubuntu.11.04) ...
Thank you for installing Chef!
Generating node config 'nodes/precise.json'...

Chef Solo環境の生成

$ knife solo init chef-repo
Creating kitchen...
Creating knife.rb in kitchen...
Creating cupboards...
Setting up Librarian...

クックブック作成

$ knife cookbook create pkg -o site-cookbooks
** Creating cookbook pkg
** Creating README for cookbook: pkg
** Creating CHANGELOG for cookbook: pkg
** Creating metadata for cookbook: pkg

レシピ編集

$ vi site-cookbooks/pkg/recipes/default.rb
%w{ etckeeper git tig vim-nox openssh-server iotop ifstat dstat linux-headers-generic ntp curl zsh}.each do |pkg|
    package pkg do
        action :install
    end
end

JSONファイル編集

$ vi nodes/precise.json
{
    "run_list":[
        "pkg"
    ]
}

Chef Solo実行

$ knife solo cook precise
Running Chef on precise...
Checking Chef version...
Installing Librarian cookbooks...
Uploading the kitchen...
Generating solo config...
Running Chef...
Starting Chef Client, version 11.4.4
Compiling Cookbooks...
[2013-07-23T14:12:58+00:00] FATAL: No cookbook found in ["/home/vagrant/chef-solo/cookbooks-1", "/home/vagrant/chef-solo/cookbooks-2", "/home/vagrant/chef-solo/cookbooks-3"], make sure cookbook_path is set correctly.
Converging 12 resources
Recipe: pkg::default
  * package[etckeeper] action install
    - install version 0.61ubuntu2 of package etckeeper

  * package[git] action install
    - install version 1:1.7.9.5-1 of package git

  * package[tig] action install
    - install version 0.17-1ubuntu1 of package tig

  * package[vim-nox] action install
    - install version 2:7.3.429-2ubuntu2.1 of package vim-nox

  * package[openssh-server] action install (up to date)
  * package[iotop] action install
    - install version 0.4.4-4 of package iotop

  * package[ifstat] action install
    - install version 1.1-8 of package ifstat

  * package[dstat] action install
    - install version 0.7.2-2 of package dstat

  * package[linux-headers-generic] action install
    - install version 3.2.0.49.59 of package linux-headers-generic

  * package[ntp] action install (up to date)
  * package[curl] action install
    - install version 7.22.0-3ubuntu4.2 of package curl

  * package[zsh] action install
    - install version 4.3.17-1ubuntu1 of package zsh

Chef Client finished, 10 resources updated

openssh-serverとntpは既にインストール済みであった
あと、インストールは出来たけど、途中でFATALが出てたので、後で調べる

以上

14
14
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
14
14