Immutable Infrastructure、直訳すると『不変のインフラ』とでもなるでしょうか。一度作成したインフラ構成は設定変更を行わず、文字通り『不変の』構成として扱う。デプロイのタイミングで新しい環境を用意し、不要になったものは廃棄する……というサイクルを回す考えは、ここ最近非常に注目を浴びています。
また、Immutable Infrastructureを構築する上でクラウド環境は不可欠です。当エントリで紹介するセッションレポートは、株式会社paperboy&co.でテクニカル・マネージャーを務める宮下剛輔氏による『インフラ技術のこれまでとこれから』を、氏の注目キーワード解説を交えつつ、お送りしたいと思います。
「"インフラ"が指す範囲は思っている以上に広くなっています。最近では上位レイヤーやミドルウェアを指す言葉にもなってきています。今回は"OSから上、アプリを載せる部分のレイヤー"としてお話したい」とまずは定義を行い、セッションが始まりました。
サーバープロビジョニングと3つのレイヤー
『サーバープロビジョニング(Provision=提供する、サーバー環境を構築、準備して提供する)』という言葉は2010年、Lee Tompsonという方がとあるイベントで発表されたものが起源とされています。概念を理解するにはこの図が一番シンプルで分かりやすい、と宮下氏は図を交えながら解説。「サーバープロビジョニングは3つのレイヤーで管理されます」とポイントを挙げました。
- bootstraping(ブートストラップ:OSを起動して利用可能な状態になるまでに自動実行される処理)
- configuration(設定部分:最近ではChefやPuppet、ansibleなどの"構成管理ツール"を使って行うことが多い)
- orchestration(オーケストレーション:詳細は後述)
Puppetの登場(2005年)後、2008年頃から出始め最近よく聞くようになった『Infrastructure as Code』というフレーズ。これは『インフラをコードで記述し、アプリ開発のようにインフラを構築する』という意味になります。構成管理ツールは『宣言的』『抽象化』『冪等性(べきとうせい)』『収束化』という要件に従い構成されています。
これらのツールを用いてソースコードリポジトリ、アプリケーションデータのバックアップ、サーバリソースからコードを用いてインフラを構築することで、ビジネスをゼロから再構築できるようになり、サーバ構築や運用におけるワークフローに変革をもたらすことができたのです、と過去の構成管理ツールに関する歴史をさかのぼりつつ現在の潮流について解説しました。
会員登録無料すると、続きをお読みいただけます
この記事は参考になりましたか?
- この記事の著者
-
しんや(シンヤ)
2010年末~2013年前半位までの期間で興味のある勉強会に頻繁に参加。参加してきた勉強会のレポートブログとTogetterをひたすらまとめ続け、まとめ職人(自称/他称含む)として暫く過ごしておりました。色々な縁あってDevelopers Summit 2013では『公募レポーター』も務めました。2013年05月『出張ブロガー』を経て2013年08月にクラスメソッド株式会社へ転職。現在は業務(AWS及びその周辺技術を扱う)の...
※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です
この記事は参考になりましたか?
この記事をシェア
