Desired State Configuration: DSC Syntax

Windows Powershell Desired State konfigürasyonu aslında basitçe 3 part’tan oluşur. Bu omurgayı anladıktan sonar script yazımı oldukça kolay olacaktır. Nedir bunlar;

  1. Configuration Block
    1. Param() desteği olunan kısım,
  2. Node Block
    1. Bu kısımda Node Block’larının olacağı yer, bir veya daha fazla Node Block olabilir.
  3. Resource Block
    1. Bu kısımda da birden çok resource blockların kullanılabileceği yer denilebilir.

Configuration Block

Bu terim Powershell dünyasına yeni katıldı diyebiliriz. Aslında scriptin ana başlangıçı, gövdesi de denilebilir. Powershell’de fonksiyonlara da benzemektedir.

Script’timizde DSC konfigüre etmek için ilk olarak tanımlamak gerekmektedir. Bu tanım aşağıdaki örnekte de görüleceği üzere “Configuration” yazarak başlanır ve bu Configuration’a bir isim yani string değer verilir. Süslü parantezler içerisine de script yazılır.

 


 

 

 

 

Node Block

Configuration Blocklar içerisine Node Block dediğimiz diğer blockları tanımlamak zorundayız. Bu blocklarda “Desired State Configuration” ve MOF dosyasını uygulayacağımz sunucu isimlerini veririz. Configuration Block içerisinde birden çok Node Blocklar olabilir.

Node Block’lar basittir. Node ismiyle başlarlar. Sunucu ismi yanına yazılır ve yine süslü parantezler açılır ve kapanır. ({}).


Eğer birden çok sunucuya DSC deploy edeceksek parantezler içerisinde sunucu isimlerini “,” ile ayırabiliriz. Ek olarak sunucu isimleri için tabii ki bir değişken de kullanılabilir.


Son hali aşağıdaki gibi olur.


Resource Block

Node Blocklar içerisine Resource Block’ları tanımlamak gerekmektekdir. Resouce blocklar, genellikle Resource isimleri ile başlarlar. File, Archive gibi. Bunları string değerler tanımlanarak devam eder ve her zamanki gibi süslü parantezler açılıp/kaptılarak son bulurlar.

Bir Node Block içerisine birden çok Resource Block tanımlanabilir. Yine resorce blocklar içerisine resource değeri ve özellikleri bildirilir.

 


Parameterizing Configuration Script

Fonksiyonlarda olduğu gibi DSC içerisinde de parameter tanımı yapabiliriz. Tanım için Param() kullanılıp içerisine parametreler girilir. Aşağıdaki resimde örnek bir DSC scripti görebiliriz.


 

Enis Göktay

Enis Göktay

Enis Göktay

Enis has more than 15 years of experience in Information Technologies. He holds a Bachelor of Science in Economy and Master of Science degree in Computer Engineering as well as several IT certifications, namely MCITP, MCSE and CISCO Certifications. He has experience from technical support to administering enterprise IT infrastructures including but not limited Active Directory, Messaging Infrastructures, and Networking. Currently, he lives in Istanbul and works as a Sr. Specialist on Microsoft Products, dealing with administration of full life cycle of large, complex, and high available Enterprise IT infrastructures. His certifications include:

:: MCSE Data Platform,
:: MCSE Private Cloud,
:: MCSE Messaging,
:: MCSE Communication,
:: MCSE Server Infrastructure,
:: MCITP Enterprise Messaging on Exchange 2010
:: Microsoft Specialist - Server Virtualization with Windows Server Hyper-V and System Center Specialist
:: MCITP Enterprise Administrator 2008
:: MCITP Windows Server 2008,
:: MCSA: SQL Server,
:: MCSA: Office 365 Certification
:: MCSA Windows Server 2008,
:: MCTS Microsoft Exchange Server 2010, Configuring
:: MCTS Windows Server® 2008 Network Infrastructure, Configuration
:: MCTS Windows Server® 2008 Active Directory, Configuration
:: MCTS Monitoring and Operating a Private Cloud with System Center 2012
:: MCP (Microsoft Certified Professional)
:: CCNA
Enis Göktay

Leave a Reply

Your email address will not be published. Required fields are marked *

Post Navigation