サーバ管理AWS界隈で今一番熱いテーマは何でしょうか?色々ありますが、自動化がその1つでしょう。その実現手段としてChefを取り上げる人はかなり多くいると思います。今この動きが出てくるのでしょうか?AWS登場前と登場後のサーバ構築Chefのことを考える前に、AWS登場前と登場後のサーバ構築のプロセスを考えてみます。デプロイという工程があると思います。これに対して、AWSのアカウントが既にあれば、起動⇒設定⇒デプロイという3ステップでシステムが利用出来る状態になります。前述のことを考えるとAWSには、2つの意義があると言えます。クラウドという文脈で、コンピュータリソースを所有から利用へと変化させたことです。次に、コンピュータリソースを物理の制約から解き放ち、必要な時に必要なだけ、かつプログラマブルに扱えるようにしたということです。今までのクラウドの普及期では、前者のビジネス的なメリットが強調されてきました。キャズムを超えつつある現在では、後者の点に注目が移りつつあります。インフラ構築の考え方自体が、変化してきているのです。サーバ納品のリードタイムの話オンプレミス時代であれば、発注からサーバの納品までリードタイムは最低でも数週間の時間が必要でした。それがAWSを使うと数分で完了するようになりました。なると、サーバが使えるようになってからの時間が焦点になります。AWSを使おうとも、従来と同じように手作業で設定してテストしていれば、基本的にはサーバ設定には同じ時間が掛かります。仮にその時間を1週間とします。オンプレミスのサーバ構築であれば、サーバの納品までの時間が数週間で設定が1週間となります。比率で考えれば、それ程時間が掛かっているようには見えません。AWSと較べてみるとサーバが準備出来るまで10分程度。それに対してサーバ設定が1週間。非常に時間が掛かっているように見えます。手作業とサーバ設定の自動化の違いでは、手動で設定してきたサーバの設定を、Chef等を使って自動化すると早くなるのでしょうか?これは、YesであれNoであります。実際の所、初回で1度だけ構築するサーバであれば、手作業で構築した方が圧倒的に早いです。サーバ設定の自動化は、手作業で設定するものをプログラム化するだけです。ステップは2倍に増えています。(ユニットテストを含めれば、3倍になります。)という点で、1回限りで考えればサーバ設定の自動化はそれほどメリットはありません。複数のサーバを構築する場合や、長期間に渡ってサーバを保守運用する場合はどうでしょう?この場合はサーバ設定の自動化はかなりメリットあります。同じ構成の場合、2台目以降はほぼ瞬時に構築できます。設計書と手作業というゆらぎが発生しやすいものではないので、想定したものが出来ているかという観点のテストも不要です。この点を持って、サーバ設定の自動化はメリットがあります。AWS上でのサーバ構築の実際では実際の所、AWS上でのサーバ構築はどうすれば良いのでしょうか?AWSの管理コンソールで提供されている全ての機能は、APIでも提供されています。プログラムとして環境構築することが可能です。CloudFormation等の機能を使って、ネットワーク環境やインスタンスを含めてテンプレート化するケースも増えています。一方で、立ち上げたインスタンス(サーバ)上のミドル・アプリの構築はどうするのでしょうか?Amazonは基本的には、それに対する解は提供していません。(※)今まで通り手作業で構築しても良いし、chefやpuppetを使ってプログラマブルに行うのも良いです。Chefを使って全部プログラマブルにやってしまおうというのが、今のムーブメントです。※AWSのOpsWorksが、Amazonの解なのかもしれませんが。まとめサーバ構築が自動化の流行の中で、インフラエンジニアの価値はどうなるのでしょうか?私は、2極化すると思います。経験豊富なインフラエンジニアが、Chefを使いこなせばレバレッジが効いて数倍の仕事が出来るようになるでしょう。価値も出てくると思います。一方で、昔ながらの手作業だけを踏襲するのであれば、必要とされるところは今後数十年残るでしょうが、徐々に活躍する範囲は狭くなっていくでしょう。いうことで、流行に乗ってChefを始めとするサーバ設定の自動化に手を出すべきだと思います。Soloなど良書が揃ってきているので、学習コストは今ならそれ程高くありません。試す環境も、VagrantやAWSを使えば簡単に構築できます。流行ではあるものの、確実に定着する流れだと私は考えています。Also:サーバ構築・デプロイの自動化の話。Soloのどちらが良いか考えてみた手動でサーバの設定をすることを禁ずる。業務システム設計・移...2014-10-29今どきのサーバ/インフラの構築の仕方。!に参加&登壇してきまし...2013-04-25サーバ構築・デプロイの自動化の話。はてなブログをはじめよう!dkfjさんは、はてなブログを使っています。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。