Piti demota Windows Server 2012:n RemoteApp:ien käyttöä virtuaaliympäristössä ja alustaksi siihen päätyi Windows Azure:n 3kk:n Free Trial. Mukava olisi myös saada käyttöön pilvessä leijuva täysverinen Domain Controller tarjoamaan palveluitaan, joten sellainen sinne siis pystytettäköön kera Remote Desktop Services Session Hostin ja member serverin.
Microsoft tarjoaa Azureen 3:n kuukauden ilmaista koetiliä 750/kk tunnin laskentatehoilla osoitteessa http://www.windowsazure.com/en-us/pricing/free-trial/. Tilausta tehdessä tarvitaan voimassa oleva luottokortti, johon ei kuitenkaan kohdistu veloituksia, ellei varta vasten erikseen niin halua ja tilaa lisää palveluita. Tilausta tehdessä tarvitaan puhelin tai kännykkä, johon lähetetään vahvistuskoodi, joka tarvitaan tilauslomakkeeseen. Tilauksen tehtyään käytössä on välittömästi tarjottavat palvelut, joita voi alkaa käyttämään Azure Management Portal:ista käsin: https://manage.windowsazure.com/.
Management Portal:issa lähdetään ensiksi luomaan uutta Virtual Network:ia suuntaamalla alareunan plus (+) merkkiin ja siitä eteenpäin Networks, Virtual Network ja Custom Create:n kautta määrittelemään asetuksia. Alkuun annetaan verkolle uniikki nimi ja kerrotaan uusi Affinity Group luotavaksi, jolla resurssit voidaan säilyttää optimaalisesti lähellä toisiaan dynaamisesta data center:istä huolimatta.
Luodaan uusi private Address Space, joka valitaan tiputusvalikosta ja muokataan, ja jolle voidaan sen jälkeen luoda aliverkkoja. Esim. 10.4.0.0/16 Address Space ja aliverkoiksi FrontEnd 10.4.2.0/24 sekä BackEnd 10.4.3.0/24. DNS Servers and Local Network ikkunassa klikataan oikean alakulman check-ikonia ja verkkoa lähdetään automaattisesti luomaan. Verkot näkyvät sen jälkeen Management Portal:in Networks kohdassa:
Virtuaali verkon luonnin jälkeen voidaan lähteä luomaan ensimmäistä virtuaalikonetta, eli sitä Domain Controller:ia. Sitä varten tarvitaan Storage Group, joka luodaan samasta plus (+) merkistä, kuin verkkokin, valitaan vaan Data Services, Storage ja Quick Create. Annetaan Storage:lle nimi ja määritellään sama Affinity Group käytettäväksi, kuin aikaisemminkin.
Itse Domain Controller:in virtuaalikoneen luonnissa meidän on käytettävä PowerShell:iä ja nimenomaan Windows Azure PowerShell:iä, jonka voi ladata osoitteesta http://www.windowsazure.com/en-us/downloads/ kohdasta Command Line tools ja Windows downloads. Asennus menee next, next, finish-tyyppisesti.
Windows Azure PowerShell löytyy Start Menusta, avataan se Run As Admin:ina ja määritellään aluksi Execution Policy ajamalla:
Set-ExecutionPolicy RemoteSigned
Jonka jälkeen portataan Azure-module:
Import-Module ’C:\Program Files (x86)\Microsoft SDKs\Windows Azure\PowerShell\Azure\Azure.psd1’
Sen jälkeen tarvitaan Azure:n PublishSettings-tiedosto, joka saadaan ajamalla seuraava komento ja kirjautumalla avautuvaan selainikkunaan sisään ja tallentamalla tiedosto johonkin paikallisella koneella, esim. D:\Azure\AzureTili.publishsettings.:
Get-AzurePublishSettingsFile
Tämän jälkeen avataan PowerShell ISE korotetuilla oikeuksilla kertomalla PowerShell:ille:
powershell ise
Integrated Script Editor:iin kopioidaan ja peistataan seuraava skriptin pätkä, jota tulee muokata ’*…*’ merkityistä kohdista ja korvata ne omilla asetuksillaan. Tässä skriptissä käytetään image:na Windows Server 2008 R2 SP1:stä, mutta kaikki, myös uudet Windows Server 2012, image:t saadaan selville listaamalla ne Windows Azure PowerShell:istä käsin käskyllä ’Get-AzureVMImage’. Outputista kaivetaan halutun image:n .vhd-tiedoston nimi ja korvataan skriptissä muuttuja $image:n arvo uudella. Skripti kysyy ajon aikana käytettävää paikallista Administrator:in nimeä, johon voi vastata vaikka oman nimensä. Tällä tunnuksella kirjaudutaan sisään, skriptissä määritellyn -Password kohdana salasanan kanssa:
cls
Import-Module ”C:\Program Files (x86)\Microsoft SDKs\Windows Azure\PowerShell\Azure\Azure.psd1”
Import-AzurePublishSettingsFile ”*OMATILI.publishsettings*”
Set-AzureSubscription -SubscriptionName ”*OMATILAUS,esim=3-Month Free Trial*” -CurrentStorageAccount ”*OMASTORAGEACCOUNT*”
Select-AzureSubscription -SubscriptionName ”*OMATILAUS,esim=3-Month Free Trial”
#Deploy the Domain Controller in a virtual network
#————————————————-
#Specify my DC’s DNS IP (127.0.0.1)
$myDNS = New-AzureDNS -Name ’*OMADNSNIMI*’ -IPAddress ’127.0.0.1’
$vmname = ’*DC:NNIMI*’
# OS Image to Use
$image = ’a699494373c04fc0bc8f2bb1389d6106__Win2k8R2SP1-Datacenter-201302.01-en.us-30GB.vhd’
$service = ’*OMAPALVELUNIMI*’
$AG = ’*OMALUOTUAG*’
$vnet = ’*OMALUOTUVN*’
#VM Configuration
$MyDC = New-AzureVMConfig -name $vmname -InstanceSize ’Small’ -ImageName $image |
Add-AzureProvisioningConfig -Windows -Password ’P@ssw0rd’ |
Set-AzureSubnet -SubnetNames ’B*OMA_ALIVERKKOESIM_BackEndSubnet*’
New-AzureVM -ServiceName $service -AffinityGroup $AG -VMs $MyDC -DnsSettings $myDNS -VNetName $vnet
Kun skriptin ajo onnistuneesti päättyy, Management Portal:ista löytyykin ensimmäinen luotu virtuaalikone, jolle voidaan asentaa ADDS-rooli ja promota se Domain Controller:iksi Dcpromo.exe:llä. Jos skriptin suoritus pysähtyy virheeseen, tuolee huomata, että skriptistä löytyvän muuttujan $service:n arvo tulee muuttaa, jotta skriptin seuraava ajo onnistuu.
Koneelle voidaan lisätä levyjä, esim. NTDS:ää ja Backup:peja varten 2 uutta levyä. Ne voidaan lisätä näppärästi Management Portal:in Virtual Machines kohdasta: valitaan juuri luotu virtuaalikone ja klikataan alalaidan valikosta Attach Empty Disk, jolle kerrotaan haluttu koko, esim. 30GB. Sen jälkeen koneelle kirjauduttaessa (Connect) käydään vielä levyjen hallinnassa esittelemässä uudet levyt palvelimelle ja alustetaan ne normaalisti.
Dcpromo suoritetaan normaalisti, eikä välitetä herjoista, joissa kerrotaan koneella olevan dynaaminen IP-osoite käytössä. Käytössä on DHCP-osoite, joka kylläkin pysyy samana lease:na virtuaalikoneen eliniän ajan. joten siitä ei tarvitse kantaa huolta. Dcpromo:n valmistuttua kone käynnistetään uudelleen, jolloin meillä on käytössä uuden Forestin uusi Domain.
Kun DC:n luonnin jälkeen halutaan luoda uusia member server:eitä, jotka ovat jo valmiiksi toimialueen jäseniä, joudutaan jälleen turvautumaan Windows Azure PowerShell:in skriptiin ISE:ssä. Luotava virtuaalikone nimetään halutulla tavalla ja jälleen voidaan määritellä käytettävä image. Skripti ajetaan jokaista luotavaa virtuaalikonetta varten erikseen tietysti, tässä luotava kone on kapasiteetiltaan ’Medium’:
cls
Import-Module ”C:\Program Files (x86)\Microsoft SDKs\Windows Azure\PowerShell\Azure\Azure.psd1”
Import-AzurePublishSettingsFile ”*OMATILI.publishsettings*”
Set-AzureSubscription -SubscriptionName ”*OMATILAUS,esim=3-Month Free Trial*” -CurrentStorageAccount ”*OMASTORAGEACCOUNT*”
Select-AzureSubscription -SubscriptionName ”*OMATILAUS,esim=3-Month Free Trial”
#Deploy a new VM and join it to the domain
#——————————————-
#Specify my DC’s DNS IP (10.4.3.1)
$myDNS = New-AzureDNS -Name ’*OMANDCNNIMI*’ -IPAddress ’10.4.3.4’
# OS Image to Use
$image = ’a699494373c04fc0bc8f2bb1389d6106__Windows-Server-2012-Datacenter-201303.01-en.us-127GB.vhd’
$service = ’*OMANPALVELUNNIMI*’
$AG = ’*OMALUOTUAG*’
$vnet = ’*OMALUOTUVN*’
$pwd = ’*OMASALASANA*’
$size = ’Medium’
#VM Configuration
$vmname = ’*OMALUOTAVANKONEENHOSTNAME*’
$MyVM1 = New-AzureVMConfig -name $vmname -InstanceSize $size -ImageName $image |
Add-AzureProvisioningConfig -WindowsDomain -Password $pwd -Domain ’mikkoniskanen’ -DomainPassword ’*OMANDOMAININSALASANA’* -DomainUserName ’*OMADOMAINUSER*’ -JoinDomain ’*OMADOMAIN*’|
Set-AzureSubnet -SubnetNames ’*OMA_ALIVERKKOESIM_BackEndSubnet*’
New-AzureVM -ServiceName $service -AffinityGroup $AG -VMs $MyVM1 -DnsSettings $myDNS -VNetName $vnet
Koneisiin lisätään tarvittavat lisälevyt edellä mainitulla tavalla, sekä muodostetaan RDP-yhteys valitsemalla Connect Virtual Machines näkymässä. Koneet ovat valmiiksi toimialueen jäseniä, joten seuraavaksi Domain-tunnuksella sisään ja konfiguroimaan RDS scenaariota, vaikkapa Quick Start:in kautta.