CI/CD işlem hattında DSC'nin rolünü anlama
Bu makalede, yapılandırmaları ve kaynakları birleştirmek için kullanılabilecek yaklaşım türleri açıklanmaktadır. Sunucu dağıtımı bitiş durumuna ulaşmak için birden çok yapılandırma tercih edildiğinde karmaşıklığı azaltmak için her senaryonun hedefi aynıdır. Buna örnek olarak, uygulama durumunu koruyan bir uygulama sahibi ve güvenlik temellerinde değişiklikler yayınlayan merkezi bir ekip gibi bir sunucu dağıtımının sonucuna katkıda bulunan birden çok ekip olabilir. Avantajlar ve riskler de dahil olmak üzere her yaklaşımın nüansları burada ayrıntılı olarak ele alınır.
İşbirliğine Dayalı Yazma Teknikleri Türleri
Bu kavramı etkinleştirmek için Yerel Configuration Manager'da yerleşik olarak bulunan iki çözüm vardır:
Konsept | Ayrıntılı Bilgi |
---|---|
Kısmi Yapılandırmalar | Belgeler |
Bileşik Kaynaklar | Belgeler |
Her Yaklaşımın Etkisini Anlama
Bu çözümlerden biri, sunucu dağıtımının sonucunu yönetmek için kullanılabilir. Ancak, her yaklaşımı kullanmanın etkisinde önemli bir fark vardır.
Kısmi Yapılandırmalar
Kısmi Yapılandırmalar kullanıldığında, Yerel Configuration Manager birden çok yapılandırmayı bağımsız olarak yönetecek şekilde yapılandırılır. Yapılandırmalar bağımsız olarak derlenir ve düğüme atanır. Bu, LCM'nin her yapılandırmanın adıyla önceden yapılandırılmasını gerektirir.
Kısmi Yapılandırmalar, genellikle iletişim veya işbirliği avantajı olmadan iki veya daha fazla ekip tarafından sunucunun yapılandırması üzerinde tam denetim sağlar.
Müşteriler bunun kaynak çakışmalarına, kasıtsız geçersiz kılmalara ve varlığın gerçek yapılandırma denetiminin kaybedilmesine yol açabileceğine ilişkin geri bildirimde bulundu.
Ayrıca müşteriler, bu modeli kullanırken her denetim ekibi yapılandırma değişikliğinin bir yayın işlem hattı aracılığıyla tam olarak test edilme olasılığının düşük olduğu ve üretimde beklenmeyen sonuçlara yol açacağı konusunda geri bildirimde bulundu.
Sunucularda yayımlanan tüm değişiklikleri değerlendirmek için tek bir işlem hattının kullanılması kritik önem taşır.
Aşağıdaki çizimde, B Takımı kısmi yapılandırmasını A Takımı'na yayınlar. Ardından A Takımı, testlerini her iki yapılandırmanın da uygulandığı bir sunucuda çalıştırır. Bu modelde yalnızca bir yetkili üretimde değişiklik yapma iznine sahiptir.
B Ekibinde değişiklik yapılması gerektiğinde, A Takımının kaynak denetim ortamına yönelik bir Çekme İsteği göndermeleri gerekir. Ardından A ekibi, test otomasyonunu kullanarak değişiklikleri gözden geçirir ve değişikliklerin sunucu tarafından barındırılan uygulamalarda veya hizmetlerde hatalara neden olmayacağının güveni olduğunda üretime yayımlar.
Bileşik Kaynaklar
Bileşik kaynak, kaynak olarak paketlenmiş bir DSC Yapılandırmasıdır. LCM'yi bileşik kaynakları kabul etmek üzere yapılandırmak için özel bir gereksinim yoktur. Kaynaklar yeni bir yapılandırmada kullanılır ve tek bir derleme tek bir MOF dosyasında sonuç verir.
Bileşik kaynaklar için iki yaygın senaryo vardır. Birincisi karmaşıklığı azaltmak ve benzersiz kavramları soyutlamaktır. İkincisi, tüm testler geçtikten sonra bir uygulama ekibinin yayın işlem hattı üzerinden üretime güvenli bir şekilde dağıtılması için temellerin paketlenmiş olmasını sağlamaktır.
Configuration Name
{
File 1
{
Ensure = "Present"
Path = "c:\inetpub\file1.zip"
Source = "http://uri/file1.zip"
}
Service A
{
Ensure = "Present"
Name = "ServiceA"
Status = "Running"
}
SecurityBaseline Settings
{
Ensure = "Present"
Datacenter = "NorthAmerica"
}
}
Bileşik kaynaklar, operasyonel olgunluk oluştururken işlem hattı kullanarak hem birleştirmeyi hem de işbirliğini teşvik eder.
Bileşik kaynakları farkında olmadan zaten kullanıyor olabilirsiniz. ServiceSet örnek olarak verilmiştir. Bu kaynak, tek tek listelemeden birden çok Windows Hizmeti'nin durumunu yönetir. Name özelliği, her hizmetin adını sağlamak için bir dize dizisi kabul eder. Yapılandırma derlendiğinde MOF, ServiceSet'e geçirilen adların her biri için benzersiz bir Hizmet bölümü içerir.
Kuruluşların her sunucuya yüklenmesi gereken "aracılar" veya "ara yazılım" olabilir. Bileşik kaynak, bu tür araçların ve yardımcı programların bağımlılıklarını, kurulumunu ve yapılandırmasını yönetmeye yönelik en iyi yanıttır.
Birden çok sunucu yazarının gereksinimlerini içeren bir yapılandırmayı kapsayan çözümden sorumlu kişi veya ekip. Ardından, yapılandırma bileşik kaynak belgelerinde sağlanan yönergeler kullanılarak bileşik kaynak olarak paketlenecektir. Son olarak, yeni bileşik kaynağın, uygulama ekiplerinin yapılandırmalarında kullanabilecekleri dosya paylaşımı veya NuGet akışı gibi bir konuma yayımlanması gerekir.
Ekip her yeni sürüm yayımlayışında, bileşik kaynaklarının modül bildirimindeki sürüm numarasını artırır. Uygulama ekipleri, uygulama bağımlılıklarını yönetmek için yazdıkları yapılandırmaya bileşik kaynağı ekler. İşlemler/Güvenlik ekipleri kaynaklarının yeni bir sürümünü yayınladığında, uygulama ekiplerine yeni bir değişiklik olduğunu bildirir.
Uygulama ekipleri, tek değişikliğin taban çizgilerinde olduğu bir üretim sürümünü tetikleyebilir. Ancak bu, hizmet kesintisi riski olmadan önce uygulamalar üzerindeki etkiyi değerlendirme fırsatı sağlar.
Not
Bileşik kaynakların kullanımıyla ilgili geri bildirim, değişiklik yapmanın yeni bir MOF derlemeyi ve yayımlamayı gerektirdiğine ilişkin eleştiriler içeriyor. Bu tasarım gereğidir. Her yeni yapılandırma sürümü, her kaynağın belirli bir sürümüne statik başvuru içermelidir ve üretim sunucusu düğümlerine ulaşmadan önce testler tarafından doğrulanmalıdır. Kaynak denetimindeki değişiklikleri test etme ve yayınlama işlemi, küçük ama sık yapılan toplu işlerde değişiklik yayınlamak için güvenli bir ortam oluşturur.