Software Define Networking makalesinin ikinci serisinde Network Controller servisinin dağıtımı ve network virtulazation testleri gerekleştirilecektir. Bunun için birinci makalede belirtildiği gibi ön gereksinimlerden Network Contoller template download edilmesi gerekmektedir. Bu, aşağıda belirtilen adres üzerinden indirebilinir.
https://github.com/Microsoft/SDN adresine girdikten sonra, aşağıdaki ekran görüntüsünde de gösterilmiş olan Download ZIP seçilir.
İndirilecek dosya içerisinde bulunan script vasıtası ile birinci makale serisinde belirtilen ve gerçekleştirilen adımlar powershell scriptleri ile gerçekleştirilir.
Burada ilgili dağıtım işlemini gerçekleştirmeden önce bir adet Windows Server 2016 imaj dosyasına ihtiyaç bulunmaktadır. Bu imaj dosyası (VHD,VHDX) System Center Virtual Machine Manager 2016 altında bulunan Library’e import edilmesi gerekmektedir. Oluşturulacak Windows Server 2016 imajının güncel updatelerinin olmasına özen göstermekte fayda vardır.
Önce, Library tabında bulunan SDNVMM.ebitest.local seçimini ve sonra yukarıda barda bulunan Import Physical Resource seçimi yapılır.
Add Resource yapılarak daha önce oluşturmuş olan imaj seçilir. Ardından Browse seçimi yapılarak VMM Library altında nereye import edileceği belirlenip, Import işlemi başlatılır.
Import işlemi tamamlandıktan sonra, Network Controller dağıtımını gerçekleştirirken ihtiyaç duyulacak olan Self Signed sertifikası oluşturulur. Bunun için aşağıdaki komutu çalıştırılarak sertifika oluşturulur:
New-SelfSignedCertificate -KeyUsageProperty All -Provider “Microsoft Strong Cryptographic Provider” -FriendlyName “SingleNodeNC” -DnsName @(“SingleNodeNC.ebitest.local”)
Oluşan sertifikanın hem PFX hem de CER uzantılı hali export edilir. Bununla birlikte Trusted Root Certification altında bulunan Active Directory sertifikasını da CER uzantılı olarak export edilir. Bu işlem MMC konsol üzerinden gerçekleştirilir:
Export işlemlerinden sonra üç adet sertifikaya sahip olunur. Bunlar; Self signen oluşturulan SingleNode isimli pfx ve cer uzantılı sertifikalar ile Active Directory Root sertifikası olan yine cer uzantılı sertifikadır.
Sertifika işlemleri tamamladıktan sonra, Github üzerinden indirilmiş olan dosyaların, yine VMM Library altına import edilir ve bununla birlikte import edilen dosyaların altına ilgili sertifikaları atılır.
Bunun için, SDN klasörü altında bulunan VMM ve yine VMM altında bulunan ve dağıtımını gerçekleştireceğimiz Network Controller dizinine gidilir. Bu dizin altında bulunan klasörleri VMM Library altına import edilir.
Yukarıdaki ekran görüntüsünde görüldüğü üzere VMM Library paylaşımı altına ve root dizine ilgili dosyalar kopyalanır.
Aşağıda belirtilen listede, hangi sertifika dosyasının hangi alana bırakılacağı ile ilgili bilgiler yer alır. Çünkü bu bilgiler birazdan template import edildikten sonra bizlerden bu bilgiler istenir ve ilgili bilgileri böylelikle tanımlanır.
Kaynak |
Kaynak Açıklaması |
WinServer.vhd |
Oluşturmuş olduğumuz Windows Server 2016 Imaj dosyası |
NCSetup.cr |
GitHub üzerinden indirmiş olduğumuz ve upload ettiğimiz NCSetup.cr dosyasını VMM library altında göstereceğimiz kaynak. |
ServerCertificate.cr |
VMM Library altına yine GitHub altından indirmiş olduğumuz dizini göstereceğiz kaynak. Bu dizin altına Self Sign oluşturduğum ve pfx olarak export ettiğimiz seritifka dosyasını import edeceğimiz alanımız. |
TrustedRootCertificate |
VMM Library altına yine GitHub altından indirmiş olduğumuz dizini göstereceğiz. Bu dizin altına Root sertifkamızı CER olarak export ettiğimiz sertifika dosyasımızı import edeceğimiz alanımız. |
NCCertificate.cr |
VMM Library altına yine GitHub altından indirmiş olduğumuz dizini göstereceğiz. Bu dizin altına yine Self Signed oluşturduğum ve cer olarak export ettiğimiz sertifika dosyasını import ettiğimiz alanımız. |
Belirtilen bu adımlar gerçekleştirildikten sonra artık Template dosyası Import edilir. Ardından dağıtımı gerçekleştirilir.
Library tabındada bulunan Service Template seçimi ile yukarıda görüldüğü üzere Import Template seçimi yapılır.
İndirilmiş olan SDN klasörü altında bulunan VMM\Template\NC isimli dizininde bulunan Network Controller Standalone Generation 2 VM.xml isimli service template seçilir. Burada PoC için kurulumları gerçekleştirildiğinden, Standalone olan service template oluşturulur. İsminden de anlaşılacağı üzere single node olarak network controller servisini oluşturacaktır. Şayet, Network Controller Production Generation 2 VM.xml isimli service template oluşturulmuş olsaydı, üç node lu servis olarak kurulumlar gerçekleştirilirdi. Production bir ortam olsaydı elbetteki bu seçimi yapılabilinirdi. Çünkü, SDNV2 ile ilgili makaleyi incelediyseniz bu rolün en önemli servis olduğunu anlayabilirsiniz. Bundan dolayı production ortamlarda üç node lu kurulum önerilmektedir.
Import işleminden sonra, tanımlanacak referanslar ekranda görülür. Yukarıda verilmiş olan tabloya göre map işlemi burada gerçekleştirilir. Bu map tanımlamaları yaptıktan sonra Next ile ilerlenir.
Yine bir özet ekranı ile karşılaşılır. Import seçimini yaparak ilerlenir.
Service Template Import ediltikten sonra üzerinde sağ klik ile Configure Deployment yapılır.
Name alanından servise bir isim verilir. Böylelikle, hangi host grubuna deploy edileceğini ve hangi interface kullanacağını tanımlanır ve OK ile onaylanır.
Sonraki aşamadaki bu ekran son derece önemlidir. Burada ilgili alanları doğru bir şekilde tanımlamalar yapılmalıdır. Yoksa dağıtımına başlayacak servis hata verir. En öneli alanlardan biri Local admin tanımıdır. Burada tanımlama yapılırken .\Administrator şeklinde tanımlamanın yapılması önem arz etmektedir. Servis için oluşacak VM ismide oluşturulan sertifika ile aynı olmalıdır. Aksi takdirde sertifika ile sunucu isminin aynı olmamasından dolayı hataya yol açar. Bu nedenle sertifika ile servis için kullanılacak sanal sunucu ismi SingleNodeNC.ebitest.local olmalıdır.
Bütün tanımlamalar bitirildikten sonra, yine yukarıda görülen ekran görüntüsünde önce Refresh Preview yapılır. Ardından herhangi bir problem yok ise Deploy Service seçimi yapılır ve artık Network Controller Servisinin kurulumu başlamış olacaktır.