2013

 2013/12/03

vagrant-serverspecを使ってプロビジョニング結果をテストする

全国1000万人のVagrant利用者のみなさんこんにちは。 Vagrantいいですよね!そしてインフラの状態をテストするserverspecもいいですよね!この2つがシームレスに統合されるとかなりうれしいですよね! ということで本日12/2にvagrant-serverspecというプラグインがリリースされたので早速 (続きを読む)

 2013/12/01

Amazon EC2のインスタンス起動時に自動でChef Serverと連携する方法

Amazon EC2に新たなインスタンスを追加した時に、いちいち手作業でインスタンスにSSHで接続してごにょごにょするとか面倒ですよね。こういう時はコマンドでさくっとやってしまうのが簡単です。 いくつかアプローチがありますので、今回はそれを紹介しましょう。 knife bootstrapを使う たとえばAmazon L (続きを読む)

 2013/11/23

vagrant-awsの環境別オプション指定方法

全国1000万人のVagrantユーザーのみなさんこんにちは。今回はVagrantからAmazon EC2を操作する際に利用するvagrant-awsプラグインについて詳細を見ていきましょう。 インストール もうこれは書くまでないのですが、以下のようにインストールしてください。 ``` vagrant plugin i (続きを読む)

 2013/11/09

vagrant-lxc用のCentOS Boxを自作する方法

前回の内容(vagrant-lxcで軽量仮想環境を手に入れる)の続きです。 VagrantではあらかじめBoxと呼ばれる仮想マシンの雛形を用意しておいて、起動時にそれを複製して環境を用意します。したがってLXCとVagrantを組み合わせた場合でも当然のことながらBoxが必要となります。前回の記事ではBoxは公開されて (続きを読む)

 2013/11/04

vagrant-lxcで軽量仮想環境を手に入れる

Vagrantは標準ではVirtualBoxを仮想環境として利用しますが、とにかく遅いのが難点です。 Test-Kitchenを使ってChefのCookbookのテストをしたり、これらを継続的インテグレーションしようとしたときにこの遅さはたまりません。いくつか手段はあってお金持ちの皆様であれば、大富豪アプローチというこ (続きを読む)

 2013/09/29

vagrant-execによるラクラク仮想マシン操作

全国3000万人のVagrantユーザーのみなさんこんにちは。 通常Vagrantを利用している際に仮想マシン内部でコマンドを実行したい場合はvagrant sshコマンドを使ってコマンドを実行します。この際、Vagrantの標準機能を使って、仮想マシンにログインすることなく、コマンドを実行できますが、このvagran (続きを読む)

 2013/09/15

Vagrant Fabricで簡単プロビジョニング

全国1億2000万人のVagrantユーザーのみなさんこんばんは。 最近Vagrantの話を書こうとしても、みんな先にかかれてしまうので困っていたのですが、今日はPython製のデプロイツールであるFabricとVagrantを組み合わせて簡単にプロビジョニングする方法を紹介します。 インストール 前述の通り、Fabr (続きを読む)

 2013/08/31

Packer & Chef-SoloでAmazon EC2のAMIを簡単に作る方法

全国1000万人のPackerユーザーのみなさんこんにちはこんにちは。 Packerは、Mitchell Hashimotoさんによって開発が進められている様々な環境の仮想マシンのテンプレートを簡単に作れるツールです。例えばVagrantを使っている場合はいままではPatrick Deboisさんが作っていたVeewe (続きを読む)

 2013/08/08

アジャイル関連書籍ベスト100(2013年度版)

みなさんこんにちは。@ryuzeeです。 今年1月に行われたScrum Regional Gathering Tokyo 2013で基調講演をしていただいたJurgen Appelo氏による2013年度版のアジャイル関連書籍ベスト100に邦訳書籍の情報を加えました。 書籍選びの参考までに。 Jurgen氏といえば、Ho (続きを読む)

 2013/07/24

DevOpsに関する12のアンチパターン

みなさんこんにちは。@ryuzeeです。 DevOpsGuysというサイトのTwelve DevOps Anti-Patternsという記事が秀逸です。 作者の方に許可を頂き翻訳しましたので公開します。 原文も軽妙なタッチで読みやすいと思いますのでぜひご参照ください。 また本文で様々なスライドや資料へのリンクがあります (続きを読む)

 2013/07/21

OpenVPN ServerをAmazon EC2上に簡単に構築する方法

Amazon Virtual Private Cloud(VPC)を使ってPrivate Subnetを作っている場合、Private SUbnetにあるインスタンスを触るために一端Public Subnetの踏み台にログインしてから作業するとかは面倒すぎて無理なので、OpenVPNを使ったVPN環境を用意するのがよく (続きを読む)

 2013/06/29

続報 PackerでVagrant用のBoxを作成する

Packerってなに?という人は前回のエントリを先にどうぞ 0.10と0.11だと作成されたVagrantのboxの中のディスクイメージの命名の問題があります(詳細はこちら)。ソースを持ってきてビルドしたPackerを使えばとりあえず問題ありません。→0.12で修正されました! 前のエントリで紹介したPackerですが (続きを読む)

 2013/06/29

速報 Packerでさまざまな仮想マシンのテンプレートを作成する

続報で、VagrantのBoxの作り方について書きました。こちら Vagrantの作者であるHashimotoさんが新たにPackerというツールをリリースした(昨晩!)ので速攻ご紹介。 このツールは、Amazon EC2のAMIやVirtualBoxやVMware用のOSのイメージを一貫性のあるインターフェイスで簡単 (続きを読む)

 2013/06/22

ChefのCookbookのベストプラクティス

OpsCode社のシニアコンサルタントであるJulianさんがChefConf2013で話された内容が参考になるので、簡単に紹介します。 スライドはこちらに公開されています。 また動画はこちらです。 ここで出てこない話として僕がやるべきだと思うことは「テストを書くこと」です。 test-kitchenとserversp (続きを読む)

 2013/06/18

Saharaが正式にVagrant 1.1+対応になりました

全国1000万人のVagrant利用者のみなさんこんばんは。 以前僕がforkして作っていたSaharaのVagrant 1.1以降への対応ですが、作者のPatrickさんとコンタクトしながらメインライン側にマージしてもらい、Rubygemsも更新してもらいました。 ということで今後は Vagrant 1.1以降を利用 (続きを読む)

 2013/06/11

Vagrant + シェルスクリプトで簡単プロビジョニング

Vagrantでプロビジョニングというと、Chef SoloとかChefとかPuppetを使うという印象がありますが(Vagrant initしてできるVagrantfileにもそれらだけが入っている)、シェルスクリプトでも簡単にプロビジョニングできます。 マニュアルに書いてあるわりに意外と知らない人が多くてびっくりし (続きを読む)

 2013/05/28

Vagrantのコアの挙動を変更する方法

Vagrantは素晴らしいプロダクトであることは言うまでもないことですが、時にはVagrant自体の挙動を変更したいと思うこともあります。 たとえば、Vagrantでは作成したインスタンスにChefなどのProvisionerを使ってパッケージをインストールするときに、sudoコマンドを利用してユーザー権限からインスト (続きを読む)

 2013/05/26

vagrant-omnibusで簡単Chef Client/Chef Soloインストール

Vagrantを使ってインスタンスを作成し、Chef Provisionerで自動でパッケージをインストールしたり設定をする、というのが定石の流れです。 しかし、インスタンスの雛形であるboxにChef ClientやChef Soloがインストールされていない場合、このインストールを自分でしないといけないのは面倒の極 (続きを読む)

 2013/04/27

veeweeを使ってVagrant用のboxを自分で作る方法

Vagrant用のbox(OSのテンプレート)はhttp://www.vagrantbox.es/などで多数配布されています。 とりあえず試してみる分にはこちらにあるものを使ってみるのも良いですが、実際に開発で使おうとするといくつか問題があります。 そのOSに怪しいプログラムがインストールされているかもしれない 初期 (続きを読む)

 2013/03/31

Vagrant1.1のMulti-VM環境でSaharaを使う方法

昨日の「Vagrantの必須プラグインSaharaをVagrant 1.1に対応させました」の続きです。 Vagrantでは1つのVagrantfileで同時に複数のインスタンスを立ち上げるMulti-VMに対応しています。例えば、Vagrant1.1だと以下のように定義できます。別にインスタンスはメモリが許す限り何個 (続きを読む)

 2013/03/27

Vagrantのインスタンスの破棄の際にChef Serverのnodeも同時に削除する方法

タイトルが長くて何を言っているのか分かりにくいのですが、Vagrant 1.1 + Chef Serverを使ってインスタンスを作り、一端インスタンスを破棄して再度作ろうとすると、Chef Serverが、そのノードは既に登録中だから登録できねーよ、という409エラーを吐いてしまい、プロビジョニングに失敗します。 たと (続きを読む)

 2013/03/22

Vagrant1.1 + vagrant-awsで複数インスタンスを作る方法

※2013/5更新:最新のvagrant-awsの仕様にあわせて修正 Vagrant(1.1)でvagrant-awsを使ってEC2に複数インスタンスをまとめて作ることが可能です。やり方は通常のMultiVMの場合と同じです。 以下は冗長ですが、サンプルのソースです。WebサーバとDBサーバのインスタンスを起動し、それ (続きを読む)

 2013/03/19

Vagrant1.1を使ってAmazon EC2にCentOSのインスタンスを立ち上げる方法

2013/5更新:最新のvagrant-awsの仕様にあわせて修正 2013/6更新:最新のvagrant-awsの仕様にあわせて修正 Vagrant 1.1になって、VirtualBoxだけでなく、Amazon EC2やVMware Fusionのインスタンスを作れるようになったのはご存知のとおりだと思いますが、今 (続きを読む)

 2013/03/18

Amazon EC2でCentOS 6.4のAMIを自前で作る方法

既にCentOSはCentOSが提供する公式のAMIがあるのだが、自前でも作ってみた。(本当はやりたいことはもっと先にあるのですが、あまりに長いのでこれだけで1エントリにしときますw) 2013/3/19追記。rpmのインストールのところで最低限必要そうなコンパイラ系のツールなどをインストールするように変更。ipta (続きを読む)

 2013/03/14

foodcriticでChefのcookbookの書き方をチェックする方法

foodcriticはChefのcookbookのためのlintツールで、http://acrmp.github.com/foodcritic/ で公開されています。 cookbookは長い間環境を維持していくために使われるため、可読性が高く誰でも分かるように書いておくことが望ましいのは言うまでもありません。このツール (続きを読む)

 2013/03/12

opscodeのphpのcookbookを解説してみる

みなさんお料理頑張ってますか?僕は毎日cookbookのrecipeみながらkitchenでknife使ってChef気分です(意味不明)。 今日はopscodeが提供しているphpのcookbookをみて中身を解説したいと思います。 コードはここです。https://github.com/opscode-cookboo (続きを読む)

 2013/03/10

【発売のお知らせ】Software in 30 Days スクラムによるアジャイルな組織変革“成功"ガイド

みなさんこんにちは。@ryuzeeです。 スクラムの父であるジェフ・サザーランド氏とケン・シュエイバー氏が書いたSoftware in 30 daysという本を、角さん(@kdmsnr)、原田さん(@haradakiro)、川口さん(@kawaguti)とともに翻訳しました。3/7に池袋のジュンク堂さんにお伺いした際に (続きを読む)

 2013/03/04

test-kitchenを使ってChefのレシピを複数環境でテストする方法

test-kitchenはopscodeが提供するChefのレシピをテストするための仕掛けで、Vagrantを使って複数のOSやOSのバージョンを立ち上げレシピをテストすることができる。(Vagrant以外も使える) テストはminitestやcucumberなどを使って記述する。 テストの流れは以下のようになる。  (続きを読む)

 2013/02/28

VagrantのboxのVBoxGuestAdditionsを超簡単に最新版に更新する方法

小ネタです。 Vagrantを使って色々やっているときにちょっと困ることとして以下のようなことがあります。 VirtualBox本体が頻繁にバージョンアップするので、boxのGuestAdditionのバージョンとVirtualBoxが要求するバージョンがすぐにずれる vagrantboxesをはじめとする外部で公 (続きを読む)

 2013/02/27

ChefのrecipeをJenkinsで継続的インテグレーションする方法

環境構築の自動化のツールとして一番注目されているのがChefです。 Recipeと呼ばれるインストールや設定のためのスクリプトを書いておき、それを使って新しいサーバを速攻で作ったり、Chef Serverを使えば複数のサーバ群に対して環境を一定に保つことが可能です。 ChefのRecipeは単なるrubyのスクリプトで (続きを読む)

 2013/02/17

Pandora FMSを使った監視

Pandora FMSはオープンソースの監視システムで、ジャンルでいえば、NagiosとかZabbixとかHinemosと同じ類のものになります。 日本だと楽天とかカシオでの導入事例があり、オープンソース版と有償のエンタープライズ版が存在します。オープンソース版でも製品版の80%〜90%以上の機能が使えるとのことで、以 (続きを読む)

 2013/02/15

【資料公開】ワンクリックデプロイ 〜いつまで手でデプロイしてるんですか〜

みなさんこんにちは。@ryuzeeです。 2013年2月15日に目黒雅叙園で行われたデブサミ2013で登壇してきましたので、その際の資料を公開します。 「いつまで手でデプロイしてるんですか?」ってキャッチーなタイトルにしたのは、公募セッションの申し込みの時に目につくようにしたかったためで、会場でアナウンスしてくださ (続きを読む)

 2013/02/12

Route53のDNSフェイルオーバー機能を使ってみた

詳しくはAWSのブログを見ると良いですが、Route53にDNSフェイルオーバー機能が追加されたとのことなので、早速自分のサイトに設定してみました。 ちなみにこの機能で出来ることは、簡単に言えば、Route53で設定したヘルスチェックに従ってサーバを監視し、監視リクエストが失敗した場合は自動的に他のサイトに転送すること (続きを読む)

 2013/02/12

nagiosのhttp監視のメモ

完全に個人用のメモです。(え?Nagiosなんて使ってないでZabbix使え?いやZabbixも使ってます…) check_httpでページ上の文字列もチェックする 単なるhttp監視だと、アプリケーションがエラー画面を出していても200で応答していたら正常とみなされてしまうので(アプリケーションエラーで (続きを読む)

 2013/02/04

【発売のお知らせ】SCRUM BOOT CAMP THE BOOK

西村さんと永瀬さんと僕の3人で書いていた「SCRUM BOOT CAMP THE BOOK」が2月12日に発売になります。 本日見本紙を受け取って来ました。出版元の翔泳社さんによると明日、明後日くらいから先行発売で都内の一部の大きい本屋にも置かれるそうです(秋葉原とかですかね)。 この本の特徴はなんといっても開発チーム (続きを読む)

 2013/01/22

マイグレーションツール:dbdeployの使い方

dbdeployはオープンソースで提供されているマイグレーションツール。 http://code.google.com/p/dbdeploy/ にホストされており、ライセンスはLGPLです。 doctrineやrubyのmigrationとは違ってコードではなく、SQL文で変更情報やロールバック情報を記述する点が特徴で (続きを読む)

 2013/01/17

【資料公開】いつまで開発のやり方ばっかり語ってるの?

みなさんこんにちは。@ryuzeeです。 2013年1月15日、16日にScrum Alliance Regional Gathering Tokyo 2013が開催されました。 まずは実行委員として、ご来場頂いた参加者の皆様、登壇者の皆様、スポンサー各社様、様々なコミュニティの皆様、ほかご協力いただいた全ての方に感謝 (続きを読む)

 2013/01/08

プロダクトオーナーシップに関する分かりやすい動画

みなさんこんにちは。@ryuzeeです。 面白い動画を見つけたのでご紹介します。 作者はHenrik Kniberg氏で、一昨年のScrum Gathering Tokyo 2011で日本に来ていただき、認定スクラムマスターのコースを開催したこともある人だ。塹壕よりScrumとXPの著者といった方が分かりやすいかもしれ (続きを読む)

 2013/01/03

プレゼン用の写真をFlickrでいい感じに探す方法

みなさんこんにちは。@ryuzeeです。 僕のプレゼンでは写真を一杯使います。写真が一杯あると、記憶に残りやすく伝わりやすいというメリットがあります。 また隠れメリットとして、写真を多めにして文字を少なくすると、時間に応じて聞いている人に悟られることなく内容を調節することも可能です(僕がいつも時間通りに終えられる理由で (続きを読む)