Desired State Configuration (DSC) v3 では、他の場所で定義が異なる場合があるいくつかの用語が使用されます。 このドキュメントでは、用語とその意味の一覧を示し、ドキュメントでの書式を示します。
構成用語
DSC 構成に関するドキュメント
リソース インスタンスの一覧とその目的の状態を定義する JSON または YAML ファイル。
ガイドライン
- 最初のメンション: DSC 構成ドキュメント
- 後続のメンション: 構成ドキュメントまたはドキュメント
例
DSC 構成ドキュメントは、JSON または YAML として書式設定できます。
ドキュメント内の
scope
変数を としてmachine
定義します。
リソース用語
DSC リソース
コンポーネントの設定を管理するための DSC インターフェイス。 DSC v3 では、いくつかの種類のリソースがサポートされています。
ガイドライン
- 最初のメンション: DSC リソース
- 後続のメンション: リソース
- 特定のリソースの名前をコードとして書式設定します。
例
どちらも DSC リソースを
Microsoft/OSInfo
使用します。
コマンドを使用して、リソースの定義を
dsc resource list <resource_name>
調べることができます。
コマンド ベースの DSC リソース
リソース マニフェストで定義されたリソースは、 コマンド ベースの リソースです。 DSC では、マニフェストを使用して、リソースを呼び出す方法と、リソース インスタンスのプロパティを検証する方法を決定します。
ガイドライン
- 常にハイフンで用語を指定します。
例
Microsoft.Windows/Registry
はコマンド ベースのリソースです。
DSC リソース グループ
リソース グループは、リソース インスタンスの配列をresources
受け取って処理する プロパティを持つコマンド ベースのリソースです。 リソース グループは、リソースを実行するユーザーの変更など、入れ子になったリソース インスタンスに特別な処理を適用する場合があります。
ガイドライン
- 必ず、リソース グループとして用語を指定します。 用語から "group" を省略しないでください。
例
リソースが並列で呼び出されるようにするには、リソース グループを使用します
DSC/ParallelGroup
。
入れ子になったリソース インスタンス
リソース グループまたはリソース プロバイダーの プロパティに resources
含まれるリソース インスタンス。
ガイドライン
- 最初のメンション: 入れ子になったリソース インスタンス
- 後続のメンション: 入れ子になったインスタンス
- インスタンスが入れ子になったインスタンスであることがコンテキストから明らかな場合は、"入れ子になった" プレフィックスを省略できます。
例
入れ子になったリソース インスタンスを インスタンスに
DSC/ParallelGroup
追加します。 入れ子になったインスタンスの をtype
としてMicrosoft.Windows/Registry
定義します。
DSC リソース プロバイダー
リソース プロバイダーは、DSC v3 でコマンド ベース以外のリソースを使用できるようにするリソース グループです。 入れ子になったすべてのリソース インスタンスは、プロバイダーがサポートするリソースの種類である必要があります。
ガイドライン
- 最初のメンション: DSC リソース プロバイダー
- 以降のメンション: プロバイダー
例
構成ドキュメントで PowerShell DSC リソースを使用するには、リソース プロバイダーのインスタンスを
DSC/PowerShellGroup
追加し、入れ子になったインスタンスとして PowerShell リソース インスタンスを定義します。
PowerShell DSC リソース
PowerShell で実装されるリソース。 DSC v3 では、2 種類の PowerShell リソースがサポートされています。
Class-Based - モジュールで PowerShell クラスとして定義されているリソースは、 クラス ベースの リソースです。
クラスのメンバーは、クラス ベースのリソースのスキーマを定義します。 クラス ベースのリソースでは、および
Test()
メソッドをSet()
Get()
定義する必要があります。MOF ベース - MOF ファイル ()、スクリプト モジュール ファイル (
.mof
)、およびオプションのモジュール マニフェスト ファイル (.psm1
.psd1
) で定義されたリソースは、MOF ベースのリソースです。 MOF ベースのリソースは、Windows PowerShellによってのみサポートされます。MOF ファイルはリソースのスキーマであり、リソースのプロパティを定義します。 スクリプト モジュール ファイルは、リソースの関数 (、
Set-TargetResource
、および)Get-TargetResource
を定義しますTest-TargetResource
。 これらの関数は 、Get、 Set、および Test メソッドにマップされます。
ガイドライン
- 最初のメンション: PowerShell DSC リソース
- 後続のメンション: PowerShell リソースまたは PSDSC リソース。
- 特定の種類の PowerShell リソースについて説明する場合は、 クラス ベースのリソースなど、常に型プレフィックスを指定します。
- PowerShell と PSDSC プレフィックスは、コンテキストが明確な場合、またはクラス ベースのリソースを作成するためのチュートリアルのように、PowerShell リソースについてのみ省略できます。
例
構成ドキュメントで PowerShell DSC リソースを使用するには、リソース プロバイダーのインスタンスを
DSC/PowerShellGroup
追加し、入れ子になったインスタンスとして PowerShell リソース インスタンスを定義します。
クロスプラットフォーム ソフトウェア用の PowerShell リソースを開発する場合は、クラスベースのリソースを作成します。 MOF ベースのリソースは、Windows PowerShellによってのみサポートされます。
DSC リソース マニフェスト
コマンド ベースのリソースのメタデータと実装を定義する JSON ファイル。
ガイドライン
- 最初のメンション: DSC リソース マニフェスト
- 後続のメンション: manifest
例
すべてのコマンド ベースのリソースでは、DSC リソース マニフェストを定義する必要があります。 マニフェストのファイル名は で
.dsc.resource.json
終わる必要があります。
DSC リソースの種類名
リソースの識別名。 完全修飾リソースの種類名は、次の構文を使用します。
`<owner>[.<group>][.<area>]/<name>`
ガイドライン
- 最初のメンション: DSC リソースの種類名
- 後続のメンション: リソースの 種類または種類の名前。
- リソースの種類名の構文について説明する場合は、必ず 用語を完全修飾リソースの種類名として指定します。
例
DSC リソースは、リソースの種類名によって一意に識別されます。
Operations
リソースが管理するコンポーネントに対して実行できるアクション。
- Get - リソースのインスタンスの現在の状態を取得します。
- Set - リソースのインスタンスの目的の状態を適用します。
- テスト - リソースのインスタンスの目的の状態を現在の状態と比較します。
ガイドライン
- 操作を大文字にします。
- 操作を具体的に参照する場合は、 太字として書式設定します。
- PowerShell クラスで実装されている操作のメソッドを参照する場合は、名前の後に空のかっこ (
()
) のセットを使用して メソッドを のようにcode
書式設定します。
例
クラス ベースのリソース内の メソッドの
Set()
実装では、ステートメントをreturn
使用できません。
DSC は、 Get、 Test、 Set の各プロセスを中心に構築されます。
プロパティ
コンポーネントに対してリソースが管理できる設定。 リソースには常に少なくとも 1 つのプロパティがあります。
ガイドライン
- プロパティ名を太字に書式設定します。
- プロパティ値をコードとして書式設定します。
使用例
この例の Format プロパティの値は です
JSON
。
一般用語
必要な状態の構成
Microsoft のDesired State Configuration (DSC) は宣言型の構成プラットフォームであり、読者が主題の専門家でなくても、明確に理解できる形式を使用してマシンの状態が記述されます。
ガイドライン
- 最初のメンション: Microsoft のDesired State Configuration (DSC) プラットフォーム
- 後続のメンション: DSC、DSCv3、または DSC プラットフォーム
- プラットフォームを参照する場合は、具体的には、用語が PowerShell DSC または コマンドと混同される可能性があるコンテキストで、プラットフォーム サフィックスを
dsc
指定します。 - 以前に用語が PowerShell DSC にも適用されているコンテキストで DSC について説明する場合は、バージョン サフィックスを指定します。
例
Microsoft の Desired State Configuration (DSC) プラットフォームでは、DSC リソースは、システムの設定を管理するための標準化されたインターフェイスを表します。
DSC を使用して、 コマンドを使用して使用可能なリソースを
dsc resource list
一覧表示できます。
テスト操作を実装していないリソースの場合、DSCv3 は合成テストを使用してインスタンスの状態を検証できます。
dsc
リソースを呼び出し、構成ドキュメントを管理する DSC コマンド ライン ツール。
ガイドライン
- コマンド ライン ツールについて一般的に説明する場合は、DSC として用語を指定します。
- コマンド ライン ツールについて説明する場合は、その用語が PowerShell DSC にもこれまで適用されているコンテキストで、DSCv3 という用語を指定します。
- コマンドの実行、特定のサブコマンド、またはコマンド ライン ツールを概念プラットフォームと区別する場合は、コードの書式設定を使用します。
例
コマンドを
dsc resource test
使用して操作を呼び出します。 DSC は、次を含むデータを返します。
- インスタンスの目的の状態。
- インスタンスの実際の状態。
- インスタンスが目的の状態であるかどうか。
- 目的の状態ではないプロパティの一覧。
PowerShell Desired State Configuration
PowerShell のDesired State Configuration機能。 DSCv3 より前のこの用語には、PowerShell DSC プラットフォーム、ローカル Configuration Manager、および PSDesiredStateConfiguration PowerShell モジュールが含まれていました。
DSCv3 の場合、この用語は 、PSDesiredStateConfiguration モジュールを使用して PowerShell で実装される DSC リソースの定義と使用に適用されます。
ガイドライン
- 最初のメンション: PowerShell Desired State Configuration
- 後続のメンション: PowerShell DSC または PSDSC
- PowerShell DSC と DSCv3 を常に区別します。
- PSDesiredStateConfiguration モジュールは必ず名前で指定し、PowerShell モジュール自体について説明する際に強く強調してください。
例
DSCv3 で PowerShell DSC リソースを使用できます。
クラスベースの PowerShell DSC リソースの作成を開始して、構成ファイルを管理します。 このチュートリアルを完了すると、さらに学習とカスタマイズに使用できるモジュール内の機能的なクラスベースのPSDSCリソースが提供されます。