「Infrastructure as Code」の版間の差分

削除された内容 追加された内容
編集の要約なし
モジュール化を追加
36行目:
==方法==
IaCには、「プッシュ」と「プル」の2つの方法がある。主な違いは、サーバーの設定方法である。プルの方法では、構成するサーバーは制御サーバーから構成を引き出す。プッシュの方法では、制御サーバーは宛先システム・サーバーに構成を重ね書きする。
 
=== モジュール化 ===
インフラストラクチャーをコード化する思想に基づき、プログラミング言語におけるモジュールと同様の'''モジュール'''がインフラストラクチャーにも導入できる。1つのインフラストラクチャーをいくつかのまとまりに分割し、各まとまりに対する設定ファイルを用意する。設定ファイル間の読み込みシステムすなわちモジュールimportの仕組みが存在すれば、モジュールの粒度でインフラストラクチャーを管理し、それを組み合わせてインフラストラクチャー全体を構成できる。例えばAWS CloudFormationでは''stack''をモジュール単位としてモジュールを読み込む仕組み(''Nested Stacks'')が整備されている<ref>[https://docs.aws.amazon.com/en_pv/AWSCloudFormation/latest/UserGuide/using-cfn-nested-stacks.html AWS User Guide]</ref>。
 
==ツール==
インフラストラクチャの自動化機能を提供し、IaCを利用するツールが多い。大まかに言えば、プログラム的アプローチに基づいてインフラストラクチャを宣言型・命令型で変更・設定するフレームワーク・ツールはすべてIaCと考えることができる。従来は、サーバー(ライフサイクル)の自動化と構成管理ツールを使用してIaCを実現したが、現在、企業はマイクロソフトの{{ en|PowerShell DSC}} などの{{en|Continuous Configuration Automation – CCA}} のツール・スタンドアローンIaCフレームワークを利用している<ref name = powershell>{{cite magazine |last= Chaganti|first=Ravikanth |date= 5 January 2016 |title=DevOps, Infrastructure as Code, and PowerShell DSC: The Introduction |url=http://www.powershellmagazine.com/2016/01/05/devops-infrastructure-as-code-and-powershell-dsc-the-introduction/ |magazine= PowerShell Magazine |publisher=PowerShell Magazine |access-date=11 January 2016 }}</ref>。