Desired State Configuration (DSC) を探索する
Desired State Configuration (DSC) は、システムの構成、デプロイ、管理に使用できる構成管理アプローチです。これにより、指定した状態 (定義された状態) で環境が維持され、その状態から逸脱しないようにします。
DSC は、構成のずれを排除し、コンプライアンス、セキュリティ、パフォーマンスのために状態を維持するのに役立ちます。
Windows PowerShell DSC は、必要な状態を提供する PowerShell の管理プラットフォームです。
PowerShell DSC を使用すると、Windows や Linux などの物理マシンまたは仮想マシンの構成を管理、デプロイ、適用できます。
詳細については、「Windows PowerShell Desired State Configuration の概要」を参照してください。
DSC のコンポーネント
DSC は、次の 3 つの主要な部分で構成されます。
- 構成。 リソースのインスタンスを定義および構成する宣言型の PowerShell スクリプトです。 構成を実行すると、DSC (および構成によって呼び出されるリソース) は、構成によってレイアウトされた状態でシステムが存在するように、構成を適用します。 DSC 構成は、べき等でもあります。ローカル構成マネージャー (LCM) によって、構成によって宣言された状態でマシンが構成されることが保証されます。
- リソース 構成のターゲットを指定した状態で保持するコードが含まれます。 リソースは PowerShell モジュール内にあるので、ファイルや Windows プロセスなどの汎用なものから、Microsoft Internet Information Services (IIS) サーバーや Azure で実行されている VM などの具体的なものまでモデルに書き出すことができます。
- ローカル構成マネージャー (LCM)。 LCM は、構成するノードまたはマシンで実行されます。 これは、DSC がリソースと構成間の相互作用を容易にするエンジンです。 LCM は、リソースによって実装される制御フローを使用してシステムを定期的にポーリングし、構成によって定義された状態が維持されるようにします。 システムが状態外の場合、LCM はリソース内のコードを呼び出して、指定に従って構成を適用します。
DSC を実装するには、2 つの方法があります。
- プッシュ モード - ユーザーがターゲット ノードに構成をアクティブに適用し、構成をプッシュします。
- プル モードでは、プル クライアントはリモート プル サービスから Desired State Configuration を取得するように自動的に構成されます。 このリモート プル サービスは、構成の中央制御およびマネージャーとして機能し、ノードが目的の状態に準拠し、コンプライアンス状態を報告するプル サーバーによって提供されます。 プル サーバーは、SMB ベースのプル サーバーまたは HTTPS ベースのサーバーとして設定できます。 HTTPS ベースのプル サーバーは、Open Data Protocol (OData) と OData Web サービスを使用し、REST API を使用して通信します。 これは、集中管理と制御が可能であるため、最も関心のあるモデルです。 次の図は、DSC プル モードのワークフローの概要を示しています。