イミュータブルインフラとは?
いみゅーたぶるいんふら
イミュータブルインフラとは、一度デプロイしたサーバーやインフラを変更せず、更新が必要な際には新しいものに丸ごと置き換える設計思想です。
イミュータブルインフラ(Immutable Infrastructure)とは、サーバーやインフラストラクチャを「不変(immutable)」として扱い、構成変更が必要な際は既存環境を変更するのではなく新しい環境を作成して切り替えるという設計・運用の考え方です。
従来の「ミュータブル(可変)インフラ」では、稼働中のサーバーにSSHしてパッケージを更新したり設定ファイルを変更したりすることが一般的でした。しかしこの方法では時間の経過とともに各サーバーの状態が微妙に異なる「設定ドリフト」が発生し、再現性の低下や障害時の原因特定が難しくなるという問題がありました。
イミュータブルインフラではこの問題を根本から解消します。具体的なプロセスは次のとおりです。
- 変更があればコードやテンプレートを更新し、新しいサーバーイメージを作成
- 新イメージから新しいインスタンスを起動してテスト
- トラフィックを新インスタンスに切り替え、旧インスタンスを廃棄
この手法はDockerやKubernetes、TerraformなどのIaCツールの普及とともに広まりました。メリットとして、デプロイの再現性向上・ロールバックの容易さ・テスト済み環境をそのまま本番投入できる安全性が挙げられます。クラウドネイティブ開発やCI/CDパイプラインとの親和性が高く、現代のDevOps実践の中核的概念となっています。
使い方・例文
「イミュータブルインフラの考え方に基づき、アプリのバージョンアップ時は既存サーバーを修正せず新しいDockerイメージをビルドして入れ替える運用にしました」のように使われます。
この用語をシェア
最終更新: