2016-05-23 132 views

回答

0

你有一個完整的過程,做到這一點與Azure CLI(這是Azure的x-plat命令行工具)。例如,使用 azure vm quick-create命令:quick-create命令使用一個基本的基礎架構來部署虛擬機,您可以使用它快速構建原型或測試概念(您可以將其視爲Linux的最快方式bash shell)。 https://azure.microsoft.com/en-gb/documentation/articles/virtual-machines-linux-quick-create-cli/

您還可以使用Azure的CLI地上爬了起來創建Linux VM:https://azure.microsoft.com/en-gb/documentation/articles/virtual-machines-linux-create-cli-complete/

關於操作系統: 您可以瀏覽市場上找到合適的OS(紅帽在你的情況)https://azure.microsoft.com/en-gb/documentation/articles/virtual-machines-linux-cli-ps-findimage/

如果您使用這一個https://azure.microsoft.com/en-us/marketplace/partners/redhat/redhatenterpriselinux67/,您將被收取上述費用:「使用這種即付即用圖像除了支持微軟的Linux VM費率外,還包含單獨的小時費用」。

但是,您也可以上傳&使用您自己的操作系統映像進行配置過程,而不是使用市場映像。

+0

感謝燕姿,我將檢查上面的引用。 – Amit

+0

是否沒有創建Linux VM的powershell ARM cmdlet? – Amit

0

您可以使用ARM模板並使用Powershell部署模板。 你可以從這個簡單的linux模板開始&根據你的需求定製它https://github.com/Azure/azure-quickstart-templates/tree/master/101-vm-simple-linux

然後使用PowerShell中使用部署它

New-AzureRmResourceGroupDeployment -Name ExampleDeployment -DeploymentDebugLogLevel All -ResourceGroupName ExampleResourceGroup -TemplateFile <PathOrLinkToTemplate> 

請遵循此處提到的完整步驟:(修改參數https://azure.microsoft.com/en-us/documentation/articles/resource-group-template-deploy/#deploy-with-powershell

1

略有New-AzureRmVM documentation修改樣本,下面的PowerShell腳本應該做的工作根據需要) - 它將配置一個RHEL 7.2虛擬機。在運行之前檢查與自己資源的名稱衝突。

請記住,您不能在已啓用貨幣上限的訂閱(例如免費,試用版,僅限貨幣信用訂閱等)上訂閱現有紅帽企業Linux虛擬機,因爲它是除基本計算價格之外的第三方費用。 Read here for more details.

爲了快速創建,建議使用Azure CLI。這可以在Windows,Mac,Linux上運行。這是簡單的:

azure config mode arm 
azure group create TestCLIRG EastUS 
azure vm quick-create TestCLIRG vm1 EastUS Linux RedHat:RHEL:7.2:latest azureuser 

或使用模板,如this one

如果您發現需要在ARM PowerShell中快速創建,請在Azure PowerShell GitHub上提交問題。

PowerShell腳本是更多地參與,因爲它控制虛擬機創建的幾乎每一個方面:

## Global 
$ResourceGroupName = "Group1" 
$Location = "EastAsia" 

## Storage 
$StorageName = "storageaccname001" 
$StorageType = "Standard_GRS" 

## Network 
$InterfaceName = "ServerInterface06" 
$Subnet1Name = "Subnet1" 
$VNetName = "VNet09" 
$VNetAddressPrefix = "10.0.0.0/16" 
$VNetSubnetAddressPrefix = "10.0.0.0/24" 

## Compute 
$VMName = "rhel-vm" 
$VMSize = "Standard_D2" 
$OSDiskName = $VMName + "OSDisk" 

# Resource Group 
New-AzureRmResourceGroup -Name $ResourceGroupName -Location $Location 

# Storage 
$StorageAccount = New-AzureRmStorageAccount -ResourceGroupName $ResourceGroupName -Name $StorageName -Type $StorageType -Location $Location 

# Network 
$PIp = New-AzureRmPublicIpAddress -Name $InterfaceName -ResourceGroupName $ResourceGroupName -Location $Location -AllocationMethod Dynamic 
$SubnetConfig = New-AzureRmVirtualNetworkSubnetConfig -Name $Subnet1Name -AddressPrefix $VNetSubnetAddressPrefix 
$VNet = New-AzureRmVirtualNetwork -Name $VNetName -ResourceGroupName $ResourceGroupName -Location $Location -AddressPrefix $VNetAddressPrefix -Subnet $SubnetConfig 
$Interface = New-AzureRmNetworkInterface -Name $InterfaceName -ResourceGroupName $ResourceGroupName -Location $Location -SubnetId $VNet.Subnets[0].Id -PublicIpAddressId $PIp.Id 

# Compute 

## Setup local VM object 
$Credential = Get-Credential 
$VirtualMachine = New-AzureRmVMConfig -VMName $VMName -VMSize $VMSize 
$VirtualMachine = Set-AzureRmVMOperatingSystem -VM $VirtualMachine -ComputerName $VMName -Linux -Credential $Credential 
$VirtualMachine = Set-AzureRmVMSourceImage -VM $VirtualMachine -PublisherName "RedHat" -Offer "RHEL" -Skus "7.2" -Version "latest" 
$VirtualMachine = Add-AzureRmVMNetworkInterface -VM $VirtualMachine -Id $Interface.Id 
$OSDiskUri = $StorageAccount.PrimaryEndpoints.Blob.ToString() + "vhds/" + $OSDiskName + ".vhd" 
$VirtualMachine = Set-AzureRmVMOSDisk -VM $VirtualMachine -Name $OSDiskName -VhdUri $OSDiskUri -CreateOption FromImage 

## Create the VM in Azure 
New-AzureRmVM -ResourceGroupName $ResourceGroupName -Location $Location -VM $VirtualMachine 
+0

非常感謝鮑里斯 – Amit

相關問題