Azure Azure Cost

Azure Spot Sanal Makinalar Artık Genel Kullanımda !

Avatar
Written by Emre Martin

Bir önceki yazımızda Preview Spot Sanal Makinalardan bahsetmiştik. Bugun itirabı ile Spot Sanal Makinalar genel kullanılabilir duruma geldi. Spot Sanal Makianalar; Microsoft’un veri merkezinde kullanılmayan kapasitesini, gerek duyduğu anda geri almak şartı ile (Spot Sanal Makinaların SLA’i yoktur) bu kapasitiyi kullanıma sunmasıdır. Spot Sanal makinalar %70 ‘in üzerinde bir indirim sağlamaktadır ancak arz talep durumuna ve bulunduğunuz Azure bölgesimne göre fiyatlar değişiklik gösterebilir.

 

Azure Spot Instances

Spot Instances Best practices

  • Spot makinaların anlık görüntüsünü alın, tahliye durumunda iş yükünüzün önceden bilinen bir görüntüsüne dönerek kaldığınız yerden devam ederek zaman kazanmış olursunuz.
  • Genişleme senaryolarında (In Scale-Out) Scale set içerisine koyacağınız sanal makinalardan birisi Spot Instance olabilir. Her iki makinada aynı load balancer arkasına konabilir.
  • Sanal Makina Tahliye (Eviction Notifications) bildirimlerini dikkate alın !
  • Pay-As-You-Go modeli ödeme yapacaksaınız tahliye türü olarak Capacity Eviction only kullanın. Bu durumda en üst fiyat olarak -1 belirlenecek ve asla spot sanal makina birin fiyatından daha fazla ödememiş olursunuz.

Azure Spot Instances Spot Sanal Makinalar için her Azure bölgesinde ayrı bir kota havuzu bulunmaktadır. Gerekli olması durumda Microsoft’a case acarak bu kotanın yükseltilmesini talep edebilirsiniz.

PowerShell ile Spot Sanal Makina Oluşturma

$resourceGroup = “Resource Group İsmi”
$location = “Azure Bölgesi”
$vmName = “Spot Sanal Makina İsmi”
$cred = Get-Credential -Message “Sanal Makina için kullanıcı adı ve şifre belirleyin”New-AzResourceGroup -Name $resourceGroup -Location $location
$subnetConfig = New-AzVirtualNetworkSubnetConfig
-Name mySubnet -AddressPrefix 172.16.1.0/24
$vnet = New-AzVirtualNetwork -ResourceGroupName $resourceGroup

-Location $location -Name MYvNET -AddressPrefix 172.16.0.0/16
-Subnet $subnetConfig$pip = New-AzPublicIpAddress -ResourceGroupName $resourceGroup -Location $location

-Name “mypublicdns$(Get-Random)” -AllocationMethod Static -IdleTimeoutInMinutes 4
$nsgRuleRDP = New-AzNetworkSecurityRuleConfig -Name myNetworkSecurityGroupRuleRDP -Protocol Tcp
-Direction Inbound -Priority 1000 -SourceAddressPrefix * -SourcePortRange * -DestinationAddressPrefix *

-DestinationPortRange 3389 -Access Allow
$nsg = New-AzNetworkSecurityGroup -ResourceGroupName $resourceGroup -Location $location
-Name myNetworkSecurityGroup -SecurityRules $nsgRuleRDP
$nic = New-AzNetworkInterface -Name myNic -ResourceGroupName $resourceGroup -Location $location

-SubnetId $vnet.Subnets[0].Id -PublicIpAddressId $pip.Id -NetworkSecurityGroupId $nsg.Id

# Sanal makine yapılandırması oluşturun ve bunu Spot VM olarak ayarlayın

$vmConfig = New-AzVMConfig -VMName $vmName -VMSize Standard_D1 -Priority “Spot” -MaxPrice -1|
Set-AzVMOperatingSystem -Windows -ComputerName $vmName -Credential $cred |

Set-AzVMSourceImage -PublisherName MicrosoftWindowsServer -Offer WindowsServer -Skus 2016-Datacenter -Version latest | `
Add-AzVMNetworkInterface -Id $nic.Id

New-AzVM -ResourceGroupName $resourceGroup -Location $location -VM $vmConfig

Görüşmek üzere 🙂 

Yazar Hakkında

Avatar

Emre Martin

Cloud Solutions Architect