Hızlı Başlangıç - Desired State Configuration (DSC) ile web sitesi oluşturma
Şunlar için geçerlidir: Windows PowerShell 4.0, Windows PowerShell 5.0
Bu alıştırma, baştan sona bir Desired State Configuration (DSC) yapılandırması oluşturma ve uygulama adımlarını gösterir. Kullanacağımız örnek, bir sunucunun (IIS) özelliğinin Web-Server
etkinleştirilmiş olmasını ve basit bir "Merhaba Dünya" web sitesinin içeriğinin bu sunucunun dizininde inetpub\wwwroot
bulunmasını sağlar.
DSC'nin ne olduğu ve nasıl çalıştığına genel bakış için bkz. Karar Alıcılar için genel bakış Desired State Configuration.
Gereksinimler
Bu örneği çalıştırmak için Windows Server 2012 veya üzerini çalıştıran bir bilgisayara ve PowerShell 4.0 veya sonraki bir sürümüne sahip olmanız gerekir.
index.htm dosyasını yazma ve yerleştirme
İlk olarak, web sitesi içeriği olarak kullanacağımız HTML dosyasını oluşturacağız.
Kök klasörünüzde adlı test
bir klasör oluşturun.
Metin düzenleyicisinde aşağıdaki metni yazın:
<head></head>
<body>
<p>Hello World!</p>
</body>
Bunu daha önce oluşturduğunuz klasöre kaydedin index.htm
test
.
Yapılandırmayı yazma
DSC yapılandırması, bir veya daha fazla hedef bilgisayarı (düğüm) nasıl yapılandırmak istediğinizi tanımlayan özel bir PowerShell işlevidir.
PowerShell ISE'de aşağıdakileri yazın:
Configuration WebsiteTest {
# Import the module that contains the resources we're using.
Import-DscResource -ModuleName PsDesiredStateConfiguration
# The Node statement specifies which targets this configuration will be applied to.
Node 'localhost' {
# The first resource block ensures that the Web-Server (IIS) feature is enabled.
WindowsFeature WebServer {
Ensure = "Present"
Name = "Web-Server"
}
# The second resource block ensures that the website content copied to the website root folder.
File WebsiteContent {
Ensure = 'Present'
SourcePath = 'c:\test\index.htm'
DestinationPath = 'c:\inetpub\wwwroot'
}
}
}
Dosyayı WebsiteTest.ps1
olarak kaydedin.
İşlev adından önce kullanılan Configuration anahtar sözcüğünü oluşturduğunuzda, bunun bir PowerShell işlevi gibi göründüğünü görebilirsiniz.
Node bloğu, yapılandırılacak hedef düğümü belirtir. Bu durumda, localhost
.
Yapılandırma, WindowsFeature ve File olarak iki kaynağı çağırır. Kaynaklar, hedef düğümün yapılandırma tarafından tanımlanan durumda olduğundan emin olunmasını sağlar.
Yapılandırmayı derleme
Bir DSC yapılandırmasının bir düğüme uygulanması için önce bir MOF dosyasında derlenmiş olması gerekir. Bunu yapmak için yapılandırmayı bir işlev gibi çalıştırırsınız. PowerShell konsolunda, yapılandırmanızı kaydettiğiniz klasöre gidin ve yapılandırmayı bir MOF dosyasına derlemek için aşağıdaki komutları çalıştırın:
. .\WebsiteTest.ps1
WebsiteTest
Bu, aşağıdaki çıkışı oluşturur:
Directory: C:\ConfigurationTest\WebsiteTest
Mode LastWriteTime Length Name
---- ------------- ------ ----
-a---- 3/13/2017 5:20 PM 2746 localhost.mof
İlk satır yapılandırma işlevini konsolunda kullanılabilir hale getirir. İkinci satır yapılandırmayı çalıştırır. Sonuç, adlı WebsiteTest
yeni bir klasörün geçerli klasörün alt klasörü olarak oluşturulmasıdır. WebsiteTest
klasörü adlı localhost.mof
bir dosya içerir. Bu, hedef düğüme uygulanabilecek dosyadır.
Yapılandırmayı uygulama
Artık derlenmiş MOF'niz olduğuna göre, Start-DscConfiguration cmdlet'ini çağırarak yapılandırmayı hedef düğüme (bu örnekte yerel bilgisayar) uygulayabilirsiniz.
Start-DscConfiguration
Cmdlet, DSC altyapısı olan Yerel Configuration Manager (LCM) yapılandırmayı uygulamasını söyler. LCM, yapılandırmayı uygulamak için DSC kaynaklarını çağırma işini yapar.
Not
DSC'nin çalışmasına izin vermek için, bir yapılandırma çalıştırırken bile Windows'un PowerShell uzak komutlarını alacak şekilde yapılandırılması localhost
gerekir. Ortamınızı kolayca doğru yapılandırmak için yükseltilmiş bir PowerShell Terminalinde çalıştırmanız Set-WsManQuickConfig -Force
gerekir.
PowerShell konsolunda, yapılandırmanızı kaydettiğiniz klasöre gidin ve aşağıdaki komutu çalıştırın:
Start-DscConfiguration .\WebsiteTest
Yapılandırmayı test edin
Yapılandırmanın başarılı olup olmadığını görmek için Get-DscConfigurationStatus cmdlet'ini çağırabilirsiniz.
Ayrıca sonuçları doğrudan test etmek için http://localhost/
bir web tarayıcısına göz atabilirsiniz. Bu örnekte ilk adım olarak oluşturduğunuz "Merhaba Dünya" HTML sayfasını görmeniz gerekir.
Sonraki adımlar
- DSC yapılandırmaları hakkında daha fazla bilgi için bkz. DSC yapılandırmaları.
- Hangi DSC kaynaklarının kullanılabilir olduğunu ve DSC kaynaklarında özel DSC kaynaklarının nasıl oluşturulacağını görün.
- PowerShell Galerisi DSC yapılandırmalarını ve kaynaklarını bulun.