New-SCCloud

Creates a private cloud.

Syntax

New-SCCloud [-Name] <String> [-Description <String>] [-DisasterRecoverySupported <Boolean>] [-JobGroup <Guid>]
 [-JobVariable <String>] [-PROTipID <Guid>] [-RunAsynchronously]
 [-ShieldedVMSupportPolicy <ShieldedVMSupportPolicyEnum>] -VMHostGroup <HostGroup[]>
 [-VMMServer <ServerConnection>] [<CommonParameters>]
New-SCCloud [-Name] <String> [-Description <String>] [-DisasterRecoverySupported <Boolean>] [-JobGroup <Guid>]
 [-JobVariable <String>] [-PROTipID <Guid>] [-RunAsynchronously]
 [-ShieldedVMSupportPolicy <ShieldedVMSupportPolicyEnum>] [-VMMServer <ServerConnection>]
 -VMwareResourcePool <VmwResourcePool> [<CommonParameters>]

Description

The New-SCCloud cmdlet creates a private cloud in Virtual Machine Manager (VMM). A private cloud is a cloud that is provisioned and managed on-premise by an organization. The private cloud is deployed using an organization's own hardware to leverage the advantages of the private cloud model. Through VMM, an organization can manage the private cloud definition, access to the private cloud, and the underlying physical resources.

You can create a private cloud from the following resources:

- Host groups that contain resources from Hyper-V hosts, Citrix XenServer hosts, and VMware ESX hosts

Examples

Example 1: Create a private cloud from a host group

PS C:\> $HostGroup = Get-SCVMHostGroup -Name "HostGroup01"
PS C:\> New-SCCloud -Name "Cloud01" -VMHostGroup $HostGroup

The first command gets the host group named HostGroup01 and stores it in the $HostGroup variable.

The second command creates a private cloud named Cloud01 from the host group stored in the $HostGroup variable.

Example 2: Create a private cloud using a job group

PS C:\> $Guid = [System.Guid]::NewGuid()
PS C:\> Set-SCCloud -JobGroup $Guid
PS C:\> $HostGroup = Get-SCVMHostGroup -Name "HostGroup02"
PS C:\> New-SCCloud -JobGroup $Guid -Name "Cloud02" -VMHostGroup $HostGroup -Description "This is a cloud for HostGorup02"

The first command creates a new GUID and stores it in the $Guid variable.

The second command creates a job group using the GUID stored in $Guid.

The third command gets the host group object named HostGroup02 and stores the object in the $HostGroup variable.

The last command creates a private cloud named Cloud02, using the job group created in the second command and HostGroup02 for its resources.

Example 3: Create a private cloud from multiple host groups

PS C:\> $HostGroups = @()
PS C:\> $HostGroups += Get-SCVMHostGroup -Name "Seattle"
PS C:\> $HostGroups += Get-SCVMHostGroup -Name "New York"
PS C:\> New-SCCloud -VMHostGroup $HostGroups -Name "Cloud03" -Description "Cloud for the Seattle and New York host groups"

The first command creates an object array named $HostGroups.

The second and third commands populate the object array with the host groups named Seattle and New York.

The last command creates a private cloud named Cloud03 using the host groups stored in the $HostGroups array as its resources.

Parameters

-Description

Specifies a description for the private cloud.

Type:String
Required:False
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False
-DisasterRecoverySupported

Indicates whether the Windows Azure Hyper-V Recovery Manager service is enabled.

If you enable this parameter, the cmdlet sends the following data over the internet to the service: cloud name, virtual machine names, logical network names, virtual machine host names, and the relevant properties for each object. If sending this information conflicts with existing privacy requirements for workloads that are deployed to this cloud, then do not select this option.

After you pair this cloud to a recovery cloud in Windows Azure Hyper-V Recovery Manager, you cannot disable this option.

Type:Boolean
Required:False
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False
-JobGroup

Specifies an identifier for a series of commands that will run as a set just before the final command that includes the same job group identifier runs.

Type:Guid
Required:False
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False
-JobVariable

Specifies that job progress is tracked and stored in the variable named by this parameter.

Type:String
Required:False
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False
-Name

Specifies the name of a VMM object.

Type:String
Required:True
Position:0
Default value:None
Accept pipeline input:False
Accept wildcard characters:False
-PROTipID

Specifies the ID of the Performance and Resource Optimization tip (PRO tip) that triggered this action. This parameter lets you audit PRO tips.

Type:Guid
Required:False
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False
-RunAsynchronously

Indicates that the job runs asynchronously so that control returns to the command shell immediately.

Type:SwitchParameter
Required:False
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False
-ShieldedVMSupportPolicy

Indicates whether this cloud supports placing shielded virtual machines on it, so placement will provide ratings for the cloud.

Type:ShieldedVMSupportPolicyEnum
Parameter Sets:ShieldedVMNotSupported, ShieldedVMSupported
Required:False
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False
-VMHostGroup

Specifies a virtual machine host group object or an array of host group objects.

Type:HostGroup[]
Required:True
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False
-VMMServer

Specifies a VMM server object.

Type:ServerConnection
Required:False
Position:Named
Default value:None
Accept pipeline input:True (ByValue)
Accept wildcard characters:False
-VMwareResourcePool

Specifies a virtual machine to be assigned and deployed on a VMware ESX host or a private cloud to a specific VMware resource pool.

Type:VmwResourcePool
Required:True
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False

Outputs

Cloud

This cmdlet returns a **Cloud** object.