Bu makalemizde yine IaaS tarafındaki bir özellik olan Virtual Machine rolü ile ilgili bir konu üzerinde duracağız. Daha önceki makalelerimizde de bahsettiğimiz gibi Windows Azure PowerShell’ in bütün nimetlerinden yaralanıyor. Birçok işlemi PowerShell ile otomatik şekilde gerçekleştirebiliyoruz. Windows Azure Portal’ la girmeden birçok işlemi yapabiliyoruz. Bu makalemizde PowerShell ile Virtual Machine nasıl yaratılır ve nasıl konfigurasyonu yapılır bunlar üzerinde duracağız.
PowerShell ile Windows Azure hesabınıza bağlanmak için bazı ayarlar yapmalısınız. Bunları bundan önceki makalelerimizde bahsetmiştik. Daha önce okuyamayanlar aşağıdaki linkten bu konu hakkında detaylı bilgi alabilir.
Windows Azure Hesabına PowerShell ile Bağlantı Ayarları
Makalede ki gibi bağlantı ayarlarını yaptıktan sonra bu makalemizde ki adımları uygulayabilirsiniz.
Şimdi ilk başta bağlantımızı bir test edelim. Bunun için kullanacağımız komut Windows Azure hesabımız ile ilgili bir komut. Get-AzureSubscription komutu ile hesap bilgilerimizi kontrol ediyoruz.
Ekran görüntüsünden de görüldüğü gibi Windows Azure hesabımız ile PowerShell bağlantımızda herhangi bir sorun gözükmüyor. Şimdi VM oluşturmamız için gereken adımlara geçebiliriz.
İlk olarak hesabımızla ilgili bazı ayarlar yapacağız. Yukarıdaki ekran görüntüsünde de görüldüğü gibi henüz hesabımıza bağlı herhangi bir StorageAccount ‘tumuz bulunmuyor.
İlk başta bir StorageAccount yaratıp bunu hesabımıza bağlıyalım
New–AzureStorageAccount –StorageAccountName ‘myuniquelynamedstorage’ –Location ‘East US’
Yukarıdaki komutu kendimize göre ayarlayalım StorageAccountName daha önce yaratılmamış bir isim olmalıdır. Eğer Windows Azure üzerinde var olan bir account name yaratmaya çalışırsak zaten bizi bu hesap daha önceden yaratılmıştır diye bizi uyarır. Location tarafına da istediğiniz bir lokasyonu yazabilirsiniz. Ben aşağıdaki gibi komutu kendime göre ayarlıyorum.
New-AzureStorageAccount -StorageAccountName ‘cpstorage001’ -Location ‘North Europe’
Ekran görüntüsünden de görüldüğü gibi cpstorage001 adında bir storage account oluşturduk.
Bu oluşturduğum storage account tu Current Storage Account olarak ayarlayacağız. Bunun için aşağıdaki komutu kullanıyoruz.
<?xml:namespace prefix = "o" />
Set-AzureSubscription -SubscriptionName 'sbname' -CurrentStorageAccount 'stname'<?xml:namespace prefix = "o" />
Buradaki SubscriptipnName ismi Get-AzureSubscription komutundaki en üst satırda yazmaktadır. Current storage account ise biraz önce yarattığımız storage account ismini kullanıyorum.
Benim kullanıcığım komut aşağıdaki gibi oluyor.
Set-AzureSubscription -SubscriptionName ‘Free Trial’ -CurrentStorageAccount ‘cpstorage001’
Current storage account kontrolünüde yine Get-AzureSubscription komutu ile yazıyoruz.
Şimdi sırada bir cloud service oluşturmakta cloud servisi oluşturmadan önce lokasyon belirlememiz gerekiyor. Bu lokasyon storage ile aynı lokasyon olmak zorunda bunu aşağıdaki komut ile belirtiyoruz.
$dclocation = ‘[YOUR-LOCATION]’
Benim kullandığım komut ;
$dclocation = ‘North Europe’
Şimdi sırada cloud service ismini belirlemede. İsmi belirlemeden önce Test-AzureName -Service ‘[YOUR-CLOUD-SERVICE-NAME]’ komutu ile kullanmak istediğimiz cloud service ismi kullanılıyor mu kullanılmıyor mu bunu öğrenebiliriz.
Cloud service yaratmak için kullanacağımız komut aşağıdaki gibidir;
$cloudSvcName = ‘[YOUR-CLOUD-SERVICE-NAME]’
Benim seçtiğim isimle kullandığım komut aşağıdaki gibi;
$cloudSvcName = ‘cpcloud’
Sırada kuracağımız virtual machine ‘ nin hangi imajdan kuracağımızı seçeceğiz. Windows Azure üzerinde yüklü imajların listesini Get-AzureVMImage | select ImageName komutu ile alabiliriz.
Artık Virtual Machine oluşturabiliriz. Virtual Machine oluştururken Linux ve Windows olarak iki çeşit Virtual Machine oluşturabiliyoruz. Bunların komutları biraz farklı ilk olarak bir Windows server oluşturalım daha sonrada Linux bir server nasıl oluşturuluyor ona bakalım.
Windows bir virtual machine oluşturmak için aşağıdaki komutu kullanıyoruz. ;
New-AzureQuickVM -Windows -ServiceName ‘cpcloud’ -Name ‘cptest002’ -ImageName ‘a699494373c04fc0bc8f2bb1389d6106__Windows-Server-2012-R2-Preview-201306.01-en.us-127GB.vhd’ -AdminUserName ‘admin-test’ -Password ‘Abc12345’
Linux bir virtual machine oluşturmak istiyorsak aşağıdaki gibi bir komut kullanıyoruz ;
New-AzureQuickVM -Linux -Name “cptestlnx001” -ImageName ‘b4590d9e3ed742e4a1d46e5424aa335e__openSUSE-12.3-v120’ -ServiceName ‘cpcloud’ -LinuxUser ‘test-root’ -Password ‘Abc12345’
Dikkat ederseniz sadece kullanıcı ayarlarında ve seçilen işletim sistemi tipinde değişiklik var. Diğer komutlar aynı.
Virtual Machinelerimizi bu şekilde yaratabiliyoruz. Birazdan serverları yarattıktan sonra nasıl controller yapabiliriz onlara bakalım. Get-AzureVM -ServiceName $cloudSvcName komutu ile yaratılmış virtual machineleri listeleyebiliriz.
Görüldüğü gibi yarattığımız virtual machine ler listelenmiş durumda. Ir kaç
Birkaç ufak komut daha paylaşmak istiyorum bu komutlar virtual machinelerinizi PowerShell yardımı ile restart, shutdown ve start etmenizi sağlıyor.
# Restart
Restart-AzureVM -ServiceName $cloudSvcName -Name $vmname
# Shutdown
Stop-AzureVM -ServiceName $cloudSvcName -Name $vmname
# Start
Start-AzureVM -ServiceName $cloudSvcName -Name $vmname
Peki bir virtual machine yaratırken daha ayrıntılı bir kurulum gerçekleştiremiyor muyuz ? Tabiki bunuda yapıyoruz. Son olarak fazla ayrıntıya girmeden nasıl ayrıntılı bir şekilde bir virtual machine yaratabiliriz. Bununda komutlarını paylaşmak istiyorum.
New-AzureVMConfig -Name $vmname -InstanceSize ExtraSmall -ImageName $image |
Add-AzureProvisioningConfig -Windows -Password $adminPassword |
Add-AzureDataDisk -CreateNew -DiskSizeInGB 50 -DiskLabel ‘datadisk1’ -LUN 0 |
Add-AzureEndpoint -Protocol tcp -LocalPort 80 -PublicPort 80 -Name ‘web’ `
-LBSetName ‘lbweb’ -ProbePort 80 -ProbeProtocol http -ProbePath ‘/’
Bu komutla beraber makalemizin sonuna geliyoruz. Burada bütün komutu setini göstermemize imkan yok sadece başlangıç olarak nasıl kullanılması gerektiği hakkında bilgiler vermeye çalıştık. Bütün komutların nasıl kullanıldığına dair güzel bir kaynak var.
http://msdn.microsoft.com/en-us/library/windowsazure/jj835083.aspx
Yukarıdaki adresten bütün komut setinin özelliklerine bakabilirsiniz.
Bir başka makalede görüşmek üzere herkese bol bulutlu günler .