New-Cluster
Creates a new failover cluster.
Syntax
Default (Default)
New-Cluster
[-Name] <String>
[-Node <StringCollection>]
[-StaticAddress <StringCollection>]
[-IgnoreNetwork <StringCollection>]
[-NoStorage]
[-S2D]
[-ManagementPointNetworkType <AdminAccessPointResType>]
[-AdministrativeAccessPoint <AdminAccessPoint>]
[-Force]
[<CommonParameters>]
Description
The New-Cluster
cmdlet creates a new failover cluster. Before creating a cluster, the hardware
(servers, networks, and storage) must be connected, and the validation tests must be run.
Use Test-Cluster to run the validation tests. The tests will confirm that the hardware and settings are compatible with failover clustering. There are multiple types of tests, including Inventory, System Configuration, Network, Storage, and other types of tests.
Tip
You should run the New-Cluster
command from a cluster node or client that is the same version as
the cluster nodes. Running New-Cluster
from a lower-level (down-level) client computer may
require Update-ClusterFunctionalLevel
to be run after New-Cluster
has been run.
Examples
Example 1
New-Cluster -Name cluster1 -Node node1,node2,node3,node4
This example creates a four-node cluster named cluster1
, using default settings for IP addressing.
Example 2
New-Cluster -Name cluster1 -Node node1,node2 -NoStorage
This example creates a two-node cluster named cluster1
. The cluster will not have any clustered
storage, or disk resources. Storage can be added using the Get-ClusterAvailableDisk
cmdlet with
the Add-ClusterDisk
cmdlet.
Example 3
New-Cluster -Name cluster1 -Node node1,node2,node3,node4 -StaticAddress 2.0.0.123
This example creates a four-node cluster named cluster1
that uses the static IP address
2.0.0.123
.
Example 4
New-Cluster -Name cluster1 -Node node1,node2,node3,node4 -StaticAddress 2.0.0.123,3.0.0.123
This example creates a four-node cluster named cluster1
that uses the static IP addresses
2.0.0.123
and 3.0.0.123
.
Example 5
New-Cluster -Name cluster1 -Node node1,node2,node3,node4 -IgnoreNetwork 2.0.0.0/8
This example creates a four-node cluster named cluster1
. The cluster uses default settings for IP
addressing, and doesn't use the network 2.0.0.0/8
.
Example 6
$parameters = @{
Name = 'cluster1'
Node = 'node1','node2','node3','node4'
StaticAddress = '2.0.0.123'
IgnoreNetwork = '3.0.0.0/8'
}
New-Cluster @parameters
This example creates a four-node cluster named cluster1. The cluster uses the static IP address 2.0.0.123, and doesn't use the network 3.0.0.0/8.
This example uses splatting to pass parameter values from the $Parameters
variable to the command.
Learn more about Splatting.
Parameters
-AdministrativeAccessPoint
Specifies the type of administrative access point that the cmdlet creates for the cluster. The acceptable values for this parameter are:
ActiveDirectoryAndDns. The cmdlet creates an administrative access point for the cluster. The administrative access point is registered in DNS and enabled in Active Directory Domain Services.
Dns. The cmdlet creates an administrative access point for the cluster. The administrative access point is registered in DNS but isn't enabled in Active Directory Domain Services.
None.
The cmdlet doesn't create an administrative access point for the cluster. Some clustered roles and functionality might not be available for a cluster that doesn't have an administrative access point. Also, you cannot use Failover Cluster Manager to manage a cluster that doesn't have an administrative access point.
Parameter properties
Type: | AdminAccessPoint |
Default value: | None |
Accepted values: | None, ActiveDirectoryAndDns, Dns, ActiveDirectory |
Supports wildcards: | False |
DontShow: | False |
Aliases: | aap |
Parameter sets
(All)
Position: | Named |
Mandatory: | False |
Value from pipeline: | False |
Value from pipeline by property name: | False |
Value from remaining arguments: | False |
-Force
Forces the command to run without asking for user confirmation.
Parameter properties
Type: | SwitchParameter |
Default value: | None |
Supports wildcards: | False |
DontShow: | False |
Parameter sets
(All)
Position: | Named |
Mandatory: | False |
Value from pipeline: | False |
Value from pipeline by property name: | False |
Value from remaining arguments: | False |
-IgnoreNetwork
Specifies one or more networks to ignore when running the cmdlet. Networks with DHCP enabled are always included, but other networks need a static address to be specified using the StaticAddress parameter or should be explicitly ignored with this IgnoreNetwork parameter.
Parameter properties
Type: | StringCollection |
Default value: | None |
Supports wildcards: | False |
DontShow: | False |
Parameter sets
(All)
Position: | Named |
Mandatory: | False |
Value from pipeline: | False |
Value from pipeline by property name: | False |
Value from remaining arguments: | False |
-ManagementPointNetworkType
Specifies the network configuration used to determine IP address settings.
The acceptable values for this parameter are:
- Automatic: Automatically detects the appropriate setting. If SQL Server is running in Azure, uses
Distributed
. If SQL Server is running on-premises, usesSingleton
. (Default setting) - Singleton: The traditional method of DHCP or static IP address.
- Distributed: Uses a Distributed Network Name by using Node IP addresses.
Parameter properties
Type: | AdminAccessPointResType |
Default value: | Automatic |
Supports wildcards: | False |
DontShow: | False |
Parameter sets
(All)
Position: | Named |
Mandatory: | False |
Value from pipeline: | False |
Value from pipeline by property name: | False |
Value from remaining arguments: | False |
-Name
Specifies the name of the cluster to create.
Parameter properties
Type: | String |
Default value: | None |
Supports wildcards: | False |
DontShow: | False |
Parameter sets
(All)
Position: | 0 |
Mandatory: | True |
Value from pipeline: | False |
Value from pipeline by property name: | False |
Value from remaining arguments: | False |
-Node
Specifies a comma-separated list of cluster node names, or server names, on which to create the cluster. If this parameter isn't specified, then a one node cluster is created on the local physical computer.
Parameter properties
Type: | StringCollection |
Default value: | None |
Supports wildcards: | False |
DontShow: | False |
Parameter sets
(All)
Position: | Named |
Mandatory: | False |
Value from pipeline: | False |
Value from pipeline by property name: | False |
Value from remaining arguments: | False |
-NoStorage
Specifies that shared storage is ignored during the cluster creation. The cluster created at the end
of the operation will not have shared storage. Shared storage can later be added by piping the
ClusterDiskInfo object from the Get-ClusterAvailableDisk
cmdlet into the Add-ClusterDisk
cmdlet.
Parameter properties
Type: | SwitchParameter |
Default value: | None |
Supports wildcards: | False |
DontShow: | False |
Parameter sets
(All)
Position: | Named |
Mandatory: | False |
Value from pipeline: | False |
Value from pipeline by property name: | False |
Value from remaining arguments: | False |
-S2D
Specifies whether to enable Storage Spaces Direct when creating the cluster.
Parameter properties
Type: | SwitchParameter |
Default value: | None |
Supports wildcards: | False |
DontShow: | False |
Parameter sets
(All)
Position: | Named |
Mandatory: | False |
Value from pipeline: | False |
Value from pipeline by property name: | False |
Value from remaining arguments: | False |
-StaticAddress
Specifies one or more static addresses to use when running the cmdlet. Networks with DHCP enabled are always included, but other networks need a static address to be specified using the StaticAddress parameter or should be explicitly ignored with this IgnoreNetwork parameter.
Parameter properties
Type: | StringCollection |
Default value: | None |
Supports wildcards: | False |
DontShow: | False |
Parameter sets
(All)
Position: | Named |
Mandatory: | False |
Value from pipeline: | False |
Value from pipeline by property name: | False |
Value from remaining arguments: | False |
CommonParameters
This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction, and -WarningVariable. For more information, see about_CommonParameters.
Inputs
None
Outputs
Microsoft.FailoverClusters.PowerShell.Cluster
Notes
- This cmdlet cannot be run remotely without Credential Security Service Provider (CredSSP) authentication on the server computer.