2014/02/13 デブサミ2014【13-B-1】サーバプロビジョニングのこれまでとこれから #devsumiB
宮下「さらに、GitHub Flowによるインフラワークフローという開発のワークフローをインフラにも適用できると考え、弊社内で実践している。」 #devsumi #devsumiB
2014-02-13 10:28:11Github Flow を使ったインフラ変更: インフラ変更が PR になり、 CI サーバによって serverspec でテストされ、テストが通ったら安心してマージ可能になるフローの紹介。インフラ変更自体も PR & CI 可能になっている世界。やばい。 #devsumiB
2014-02-13 10:31:21宮下「Immutable Infrastructure(Disposable Components)。去年一番ホットだったキーワードについて。自分はImmutableよりDisposableのほうが重要ではないかと考えている。」 #devsumi #devsumiB
2014-02-13 10:31:59Immutable Infrastrucrure (Disposable Components) ImmutableよりDisposableのほうがむしろ重要 #devsumiB
2014-02-13 10:32:02宮下「Immutable=不変、変わらない。動いているサーバには変更を加えないという概念。」 #devsumi #devsumiB
2014-02-13 10:32:45Immutable Infrastructure と Disposable Components. mizzy さんによれば "Immutable よりも Disposable の方が重要" http://t.co/hOd5ssIZev #devsumiB
2014-02-13 10:33:17Immutable Infrastructure:動いているサーバーは変更せず、設定を変更したい場合は新たにサーバーを立て、ロードバランサーなどで切り替える。#devsumiB
2014-02-13 10:33:30宮下「ミドルウェアのバージョンアップなどは新しくサーバを構築して、ロードバランサーで切り替える。上手く行ったらそのまま、上手く行かなかったら新しいものは捨てるだけ。」 #devsumi #devsumiB
2014-02-13 10:34:02いみゅーたぼーの参考情報です http://t.co/YMV4otq9cc http://t.co/H0haDMCnLu http://t.co/X0IFOpX6Ag #devsumiB
2014-02-13 10:34:08継続的デリバリーに書かれていたようなデプロイをする事を考えると、サーバーは並列して起動してアクセスだけずらして古いのを潰すのがやっぱ一番楽っぽい。潰して立て直すコストが極限まで下げたのがDockerかな。 #devsumiB
2014-02-13 10:34:12宮下「こういうこと(新しくサーバを構築して、切り替えること)は、EC2のようなIaaSによって容易になった。」 #devsumi #devsumiB
2014-02-13 10:35:16Immutable and disposable.まさにコード化されたインフラのフットワークの良さと安定性両立的キーワードやね。 #devsumiB
2014-02-13 10:37:11エンプラ系でSolaris使ってる事結構多くて、Solarisなんかは昔からコンテナ型仮想化が非常に一般的だったのだが、今程盛り上がってなかったのは何でなのだろうか。扱いやすいツールがオープンソースな世界に登場する、というのはやはりインパクトがでかいのかも。 #devsumiB
2014-02-13 10:37:13宮下「メリットは、変更に伴うトラブルが起こりにくい、継続的改善がしやすい、アプリケーション設計へのよい影響がある(c.f. The Twelve-Factor AppのIX. Disposability)」 #devsumi #devsumiB
2014-02-13 10:37:59Immutable Infrastructure という言葉が誕生する前には、 Immutable & Disposable な考え方は Blue-Green Deployment という言葉で知られていた #devsumiB http://t.co/3FcoJDGp8R
2014-02-13 10:38:09LBで分けてデプロイするのは極めて普通の事だと思うけど、サーバリソースそのものを廃棄してしまうのは確かにあまりやらない。そんなにサーバリソースは潤沢に無い。 #devsumiB
2014-02-13 10:38:46宮下「最初っからクリーンインストール前提であれば、ChefやPuppetのようなツール(やレシピ)がよりシンプルになる。」 #devsumi #devsumiB
2014-02-13 10:38:56宮下「永続的で可変的なデータはどうするか。ケース・バイ・ケース。一つの解としては、S3とかRDSなどに任せてしまうとか。これから知見が溜まってくる部分ではないか。」 #devsumi #devsumiB
2014-02-13 10:39:57#devsumiB アプリログとかImmutableに出来ない要素の典型なのでS3にfluentで放り込んだりしてる
2014-02-13 10:40:34宮下「Container Base Deploymentについて。コンテナ=単機能・軽量なVMという定義とします。Dockerのもつポータビリティにより実現可能性が高まった。」 #devsumi #devsumiB
2014-02-13 10:41:34"Immutable になることの良い側面: クリーンインストールで良いので、構成管理がシンプルになる。Chef や Ansible で書くのも簡単になり、シェルスクリプトで十分という世界への回帰も起こるだろう" #devsumiB
2014-02-13 10:41:40