Skip to content

Commit fc103bd

Browse files
committed
dedicated host changes for vmss
1 parent 387ccca commit fc103bd

File tree

5 files changed

+962
-4856
lines changed

5 files changed

+962
-4856
lines changed

src/Compute/Compute.Test/ScenarioTests/DedicatedHostTests.ps1

Lines changed: 5 additions & 84 deletions
Original file line numberDiff line numberDiff line change
@@ -134,10 +134,10 @@ function Test-DedicatedHostVirtualMachine
134134

135135
# Create a VM first
136136
$hostGroupName = $rgname + 'hostgroup'
137-
New-AzHostGroup -ResourceGroupName $rgname -Name $hostGroupName -Location $loc -PlatformFaultDomain 2 -Zone "2" -SupportAutomaticPlacement $false -Tag @{key1 = "val1"};
137+
New-AzHostGroup -ResourceGroupName $rgname -Name $hostGroupName -Location $loc -PlatformFaultDomain 2 -SupportAutomaticPlacement $true -Tag @{key1 = "val1"};
138138
$hostGroup = Get-AzHostGroup -ResourceGroupName $rgname -Name $hostGroupName;
139139

140-
Assert-AreEqual $false $hostGroup.SupportAutomaticPlacement;
140+
#Assert-AreEqual $false $hostGroup.SupportAutomaticPlacement;
141141

142142
$hostName = $rgname + 'host'
143143
New-AzHost -ResourceGroupName $rgname -HostGroupName $hostGroupName -Name $hostName -Location $loc -Sku "ESv3-Type1" -PlatformFaultDomain 1 -Tag @{key1 = "val2"};
@@ -155,89 +155,10 @@ function Test-DedicatedHostVirtualMachine
155155
$cred = new-object -typename System.Management.Automation.PSCredential -argumentlist $username, $password
156156
[string]$domainNameLabel = "$vmname0-$vmname0".tolower();
157157

158-
New-AzVM -ResourceGroupName $rgname -Name $vmname0 -Credential $cred -Zone "2" -Size $vmsize -HostId $dedicatedHostId -DomainNameLabel $domainNameLabel;
159-
$vm0 = Get-AzVM -ResourceGroupName $rgname -Name $vmname0;
160-
Assert-AreEqual $dedicatedHostId $vm0.Host.Id;
158+
New-AzVM -ResourceGroupName $rgname -Name $vmname0 -Credential $cred -Size $vmsize -HostGroupId $hostGroup.Id -DomainNameLabel $domainNameLabel;
159+
$vm0 = Get-AzVM -ResourceGroupName $rgname -Name $vmname0 -Status;
160+
Assert-AreEqual $dedicatedHostId $vm0.assignedHost;
161161

162-
$vmname1 = 'vm' + $rgname;
163-
164-
# NRP
165-
$subnet = New-AzVirtualNetworkSubnetConfig -Name ('subnet' + $rgname) -AddressPrefix "10.0.0.0/24";
166-
$vnet = New-AzVirtualNetwork -Force -Name ('vnet' + $rgname) -ResourceGroupName $rgname -Location $loc -AddressPrefix "10.0.0.0/16" -Subnet $subnet;
167-
$subnetId = $vnet.Subnets[0].Id;
168-
$pubip = New-AzPublicIpAddress -Force -Name ('pubip' + $rgname) -ResourceGroupName $rgname -Location $loc -Zone "2" -Sku "Standard" -AllocationMethod "Static" -DomainNameLabel ('pubip' + $rgname);
169-
$pubipId = $pubip.Id;
170-
$nic = New-AzNetworkInterface -Force -Name ('nic' + $rgname) -ResourceGroupName $rgname -Location $loc -SubnetId $subnetId -PublicIpAddressId $pubip.Id;
171-
$nicId = $nic.Id;
172-
173-
# OS & Image
174-
$user = "Foo12";
175-
$password = $PLACEHOLDER;
176-
$securePassword = ConvertTo-SecureString $password -AsPlainText -Force;
177-
$cred = New-Object System.Management.Automation.PSCredential ($user, $securePassword);
178-
$computerName = 'test';
179-
180-
$p = New-AzVMConfig -VMName $vmname1 -VMSize $vmsize -Zone "2" -HostId $dedicatedHostId `
181-
| Add-AzVMNetworkInterface -Id $nicId -Primary `
182-
| Set-AzVMOperatingSystem -Windows -ComputerName $computerName -Credential $cred;
183-
184-
$imgRef = Get-DefaultCRPImage -loc $loc;
185-
$imgRef | Set-AzVMSourceImage -VM $p | New-AzVM -ResourceGroupName $rgname -Location $loc;
186-
187-
# Get VM
188-
$vm1 = Get-AzVM -ResourceGroupName $rgname -Name $vmname1;
189-
Assert-AreEqual $dedicatedHostId $vm1.Host.Id;
190-
191-
$dedicatedHost = Get-AzHost -ResourceGroupName $rgname -HostGroupName $hostGroupName -Name $hostName;
192-
Assert-AreEqual 2 $dedicatedHost.VirtualMachines.Count;
193-
Assert-AreEqual $vm0.Id $dedicatedHost.VirtualMachines[0].Id;
194-
Assert-AreEqual $vm1.Id $dedicatedHost.VirtualMachines[1].Id;
195-
196-
$dedicatedHostGroup = Get-AzHostGroup -ResourceGroupName $rgname -HostGroupName $hostGroupNam;
197-
Assert-AreEqual 1 $dedicatedHostGroup.Hosts.Count;
198-
Assert-AreEqual $dedicatedHostId $dedicatedHostGroup.Hosts[0].Id;
199-
200-
# Remove Host from VM
201-
Stop-AzVM -ResourceGroupName $rgname -Name $vmName1 -Force;
202-
$vm1 = Get-AzVM -ResourceGroupName $rgname -Name $vmName1;
203-
Update-AzVM -ResourceGroupName $rgname -VM $vm1 -HostId $null;
204-
205-
$vm1 = Get-AzVM -ResourceGroupName $rgname -Name $vmname1;
206-
Assert-Null $vm1.Host;
207-
$dedicatedHost = Get-AzHost -ResourceGroupName $rgname -HostGroupName $hostGroupName -Name $hostName;
208-
Assert-AreEqual 1 $dedicatedHost.VirtualMachines.Count;
209-
Assert-AreEqual $vm0.Id $dedicatedHost.VirtualMachines[0].Id;
210-
$dedicatedHostGroup = Get-AzHostGroup -ResourceGroupName $rgname -HostGroupName $hostGroupNam;
211-
Assert-AreEqual 1 $dedicatedHostGroup.Hosts.Count;
212-
Assert-AreEqual $dedicatedHostId $dedicatedHostGroup.Hosts[0].Id;
213-
214-
# Add Host back to the VM
215-
Update-AzVM -ResourceGroupName $rgname -VM $vm1 -HostId $dedicatedHostId;
216-
217-
$vm1 = Get-AzVM -ResourceGroupName $rgname -Name $vmname1;
218-
Assert-AreEqual $dedicatedHostId $vm1.Host.Id;
219-
$dedicatedHost = Get-AzHost -ResourceGroupName $rgname -HostGroupName $hostGroupName -Name $hostName;
220-
Assert-AreEqual 2 $dedicatedHost.VirtualMachines.Count;
221-
Assert-AreEqual $vm0.Id $dedicatedHost.VirtualMachines[0].Id;
222-
Assert-AreEqual $vm1.Id $dedicatedHost.VirtualMachines[1].Id;
223-
$dedicatedHostGroup = Get-AzHostGroup -ResourceGroupName $rgname -HostGroupName $hostGroupNam;
224-
Assert-AreEqual 1 $dedicatedHostGroup.Hosts.Count;
225-
Assert-AreEqual $dedicatedHostId $dedicatedHostGroup.Hosts[0].Id;
226-
227-
# Remove the VMs
228-
Remove-AzVM -ResourceGroupName $rgname -Name $vmname1 -Force;
229-
230-
$dedicatedHost = Get-AzHost -ResourceGroupName $rgname -HostGroupName $hostGroupName -Name $hostName;
231-
Assert-AreEqual 1 $dedicatedHost.VirtualMachines.Count;
232-
Assert-AreEqual $vm0.Id $dedicatedHost.VirtualMachines[0].Id;
233-
234-
$dedicatedHostGroup = Get-AzHostGroup -ResourceGroupName $rgname -HostGroupName $hostGroupNam;
235-
Assert-AreEqual 1 $dedicatedHostGroup.Hosts.Count;
236-
Assert-AreEqual $dedicatedHostId $dedicatedHostGroup.Hosts[0].Id;
237-
238-
Remove-AzVM -ResourceGroupName $rgname -Name $vmname0 -Force;
239-
Remove-AzHost -ResourceGroupName $rgname -HostGroupName $hostGroupName -Name $hostName;
240-
Remove-AzHostGroup -ResourceGroupName $rgname -HostGroupName $hostGroupName;
241162
}
242163
finally
243164
{

src/Compute/Compute.Test/ScenarioTests/VirtualMachineScaleSetTests.cs

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -178,5 +178,12 @@ public void TestVirtualMachineScaleSetNewEncryptionAtHost()
178178
{
179179
TestRunner.RunTestScript("Test-VirtualMachineScaleSetEncryptionAtHost");
180180
}
181+
182+
[Fact]
183+
[Trait(Category.AcceptanceType, Category.CheckIn)]
184+
public void TestVirtualMachineScaleSetAssignedHost()
185+
{
186+
TestRunner.RunTestScript("Test-VirtualMachineScaleSetAssignedHost");
187+
}
181188
}
182189
}

src/Compute/Compute.Test/ScenarioTests/VirtualMachineScaleSetTests.ps1

Lines changed: 65 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2536,3 +2536,68 @@ function Test-VirtualMachineScaleSetEncryptionAtHost
25362536
Clean-ResourceGroup $rgname
25372537
}
25382538
}
2539+
2540+
<#
2541+
.SYNOPSIS
2542+
testing encryptionAtHost cmdlet for
2543+
new-azvmss - create vmss using simple parameter set and hostencryption tag.
2544+
update-azvmss test boolean parameter
2545+
new-azvmssconfig
2546+
#>
2547+
function Test-VirtualMachineScaleSetAssignedHost
2548+
{
2549+
# Setup
2550+
$rgname = Get-ComputeTestResourceName
2551+
2552+
try
2553+
{
2554+
# Common
2555+
[string]$loc = Get-Location "Microsoft.Resources" "resourceGroups" "East US 2 EUAP";
2556+
New-AzResourceGroup -Name $rgname -Location $loc -Force;
2557+
2558+
#host group
2559+
$hostGroupName = $rgname + 'hostgroup'
2560+
New-AzHostGroup -ResourceGroupName $rgname -Name $hostGroupName -Location $loc -PlatformFaultDomain 1 -Tag @{key1 = "val1"};
2561+
$hostGroup = Get-AzHostGroup -ResourceGroupName $rgname -Name $hostGroupName;
2562+
2563+
#host
2564+
$hostName = $rgname + 'host'
2565+
New-AzHost -ResourceGroupName $rgname -HostGroupName $hostGroupName -Name $hostName -Location $loc -Sku "ESv3-Type3" -PlatformFaultDomain 0 -Tag @{key1 = "val2"};
2566+
$dedicatedHost = Get-AzHost -ResourceGroupName $rgname -HostGroupName $hostGroupName -Name $hostName;
2567+
2568+
# SRP
2569+
$stoname = 'sto' + $rgname;
2570+
$stotype = 'Standard_GRS';
2571+
New-AzStorageAccount -ResourceGroupName $rgname -Name $stoname -Location $loc -Type $stotype;
2572+
$stoaccount = Get-AzStorageAccount -ResourceGroupName $rgname -Name $stoname;
2573+
2574+
# NRP
2575+
$subnet = New-AzVirtualNetworkSubnetConfig -Name ('subnet' + $rgname) -AddressPrefix "10.0.0.0/24";
2576+
$vnet = New-AzVirtualNetwork -Force -Name ('vnet' + $rgname) -ResourceGroupName $rgname -Location $loc -AddressPrefix "10.0.0.0/16" -Subnet $subnet;
2577+
$vnet = Get-AzVirtualNetwork -Name ('vnet' + $rgname) -ResourceGroupName $rgname;
2578+
$subnetId = $vnet.Subnets[0].Id;
2579+
2580+
# New VMSS Parameters
2581+
$vmssName = 'vmsswithconfig';
2582+
$adminUsername = 'Foo12';
2583+
$adminPassword = $PLACEHOLDER;
2584+
2585+
$securePassword = ConvertTo-SecureString $adminPassword -AsPlainText -Force;
2586+
$cred = New-Object System.Management.Automation.PSCredential ($adminUsername, $securePassword);
2587+
2588+
2589+
$imgRef = Get-DefaultCRPImage -loc $loc;
2590+
$ipCfg = New-AzVmssIPConfig -Name 'test' -SubnetId $subnetId;
2591+
2592+
#creating vmss using New-azvmss simple parameter set
2593+
$vmssResult2 = New-AzVmss -ResourceGroupName $rgname -VMScaleSetName "newvmss" -Credential $cred -VmSize "Standard_E2s_v3" -HostGroupId $hostGroup.Id -DomainNameLabel "domainlabel"
2594+
$vmssResult = Get-AzVmss -InstanceView -ResourceGroupName $rgname -VMScaleSetName "newvmss";
2595+
$vmssResult2 = Get-AzVmss -ResourceGroupName $rgname -VMScaleSetName "newvmss";
2596+
Assert-AreEqual $dedicatedHost.Id $vmssResult2.assignedHost;
2597+
}
2598+
finally
2599+
{
2600+
# Cleanup
2601+
Clean-ResourceGroup $rgname
2602+
}
2603+
}

0 commit comments

Comments
 (0)