はじめまして。Amebaでインフラを担当しています山口と申します。 某所ではリア充イメージ(?)の強い弊社ですが、所属するインフラ部門は男性100%で構成されている上、私は女性っぽい名前ながらも中年のおっさん(趣味は料理)でございます。すんません。 それはさておき、ご存じの方もいらっしゃるかもしれませんが、弊社ではオーケストレーションツールとしてChefを使っております。私は参加しませんでしたが、最近、ChefConf 2013も開催されたことですし、最近の弊社でのDevOps、特にその中でも一風変わったChefの使い方についてお伝えしようと思います。 EC2インスタンスをつくる 最近ではOpsWorksなんかもありますが、本稿執筆時点(2013年6月)ではまだまだ発展途上で、弊社がサービスを作る上で必要な機能が網羅されていませんでしたので、自前のChef Serverを利用しています。
Chefはリポジトリをバージョン管理する仕組みを持っていますが、チームでの協調作業を考えるとバージョン管理システムを使う方が運用しやすいと考えます。本稿では、GitとJenkinsを使ってChefを運用するための1つのパターンを考えます。 以下があることを前提とします。 Chef Server Chef Client Gitリポジトリ Jenkins 基本的な考え方 CookbookをGitリポジトリで管理します。開発者がgit pushすると同時にChef ServerのCookbookが更新されるようにします。これにより、GitリポジトリとChef Serverが同期されるようになります。 また、後続ジョブとして各サーバでChef Clientが実行されるようにします。ビルドパイプラインを組むことで、Staging EnvironmentにおけるChef Client、Producti
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く