Doorkeeper

Groovenauts Public Hands-on 02 - Chef+serverspec

2013-06-07(金)18:00 - 20:00 JST

株式会社グルーヴノーツ 本社

福岡県福岡市中央区今泉1丁目20番2号 天神MENTビル4F

詳細

概要

私たちGroovenautsでは提供するサービスを支えるインフラやテストの自動化に力を入れており、最近ではChefとserverspecに注目しています。

これらの製品を使ってインフラ関連業務を効率的にするための知識、社内外で共有したいと思っております。

また今回は、特別ゲストに 10x Labの春山さんをお呼びして、実際にChefを使用したご経験から "chef-soloを使ったミニマムなスタートの仕方(仮)"と題して、お話いただきます。

前回のRubyの入門編とは大きく異なる内容ですが、Chefやserverspecに興味のあるインフラエンジニアの皆様、インフラに関わっていこうとする開発者の皆様、DevOpsやろうぜという皆様、是非お越しください。

タイムテーブル

  • 17:00 開場
  • 17:00 - 18:00 (仮想サーバのセットアップ)
  • 18:00 勉強会開始
  • 18:00 - 18:20 Groovenauts渕上 Chefとserverspecの概要
  • 18:20 - 19:40 Groovenauts渕上 ハンズオン
  • 19:40 - 20:00 10x Lab 春山さん "chef-soloを使ったミニマムなスタートの仕方(仮)"

事前準備に不安のあるかたは17:00から開場致しますので、早めにお越しいただいてセットアップをお願いします。

事前準備

Ruby

まずserverspecを動かすためにはRubyが必要ですので、Rubyのインストールをお願いします。

Rubyのインストール

Chef と knife-solo と serverspec


gem install chef
gem install knife-solo
gem install serverspec

Vagrant

当日のハンズオンでは、VagrantからVirtualBox上の仮想サーバを起動してサーバのセットアップと
そのテストを行いますので、参加される皆様はその事前準備をお願いします。

Vagrant の Getting Started を参考に
http://www.vagrantbox.es/ からお手持ちの環境に合う CentOS 6.4 をインストールしてきてください。
以下はインストールの例になります。

vagrantのインストールの例


gem install vagrant

CentOS 6.4 (64bit) のイメージをインストール


vagrant box add cent64 http://puppet-vagrant-boxes.puppetlabs.com/centos-64-x64-vbox4210-nocm.box

Opscode Community のアカウント

Opscode Communityのホームページ でアカウントを作成してください
サインアップ後にprivate keyを取得して以下のファイルを作成してください


$ vi ~/.chef/ユーザ名.pem # ローカルマシンのログインユーザ名に合わせておくと良いと思います
$ chmod 600 ~/.chef/ユーザ名.pem

今回取り上げる製品

Chef

Chefは Opscode社が公開しているOSS製品です。
http://www.opscode.com/chef/

https://github.com/opscode/chef のREADME.md によるとこんな説明がされています。


Chef is a configuration management tool designed to bring automation to your entire infrastructure.

直訳だと「インフラに関わるものをまるごと自動化するように設計された設定管理ツール」ということですね。
実際に使ってみるとかなり簡単に環境構築ができちゃったりして驚きます。

また、Chefで使用する構築のためのレシピ群(== cookbook)も公開されています。
https://github.com/opscode-cookbooks

現時点で138もの製品についてのレシピがあり、よく使われているOSSのミドルウェアのレシピはありそうです。

serverspec

serverspecは Gosuke Miyashitaさんが公開しているOSS製品です。

http://serverspec.org/ にこんな説明があります。


With serverspec, you can write RSpec tests for checking your servers are provisioned correctly.

「serverspecを使うとサーバがちゃんと準備できたのかをチェックするテストをRSpecで書けます」

日々RSpecでテストを書いている身からすると非常にありがたい仕組みです。

当日の資料

春山さん 「chef-soloを使って簡単プロビジョニングクッキング」

https://speakerdeck.com/spring_mt/chef-solofalsejian-dan-nashi-ifang

コミュニティについて

Groovenauts

Groovenauts

http://www.groovenauts.jp/

メンバーになる