Set-VMReplicationServer
Configures a host as a Replica server.
Syntax
Set-VMReplicationServer
[[-ReplicationEnabled] <Boolean>]
[[-AllowedAuthenticationType] <RecoveryAuthenticationType>]
[[-ReplicationAllowedFromAnyServer] <Boolean>]
[-CertificateThumbprint <String>]
[-DefaultStorageLocation <String>]
[-KerberosAuthenticationPort <Int32>]
[-CertificateAuthenticationPort <Int32>]
[-MonitoringInterval <TimeSpan>]
[-MonitoringStartTime <TimeSpan>]
[-Force]
[-PassThru]
[-ComputerName <String[]>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Set-VMReplicationServer
[[-ReplicationEnabled] <Boolean>]
[[-AllowedAuthenticationType] <RecoveryAuthenticationType>]
[[-ReplicationAllowedFromAnyServer] <Boolean>]
[-CertificateThumbprint <String>]
[-DefaultStorageLocation <String>]
[-KerberosAuthenticationPortMapping <Hashtable>]
[-CertificateAuthenticationPortMapping <Hashtable>]
[-MonitoringInterval <TimeSpan>]
[-MonitoringStartTime <TimeSpan>]
[-Force]
[-PassThru]
[-ComputerName <String[]>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Description
The Set-VMReplicationServer cmdlet configures a host as a Replica server and enables you to specify the types of authentication and ports to use for incoming replication traffic.
To restrict the replication traffic that the Replica server will accept by allowing it only from specific servers, use the New-VMReplicationAuthorizationEntry cmdlet.
Examples
Example 1
PS C:\> Set-VMReplicationServer $true -AllowedAuthenticationType Kerberos
This example configures the local host as a Replica server and specifies Kerberos for authentication.
Example 2
PS C:\> Set-VMReplicationServer -ReplicationEnabled $true -AllowedAuthenticationType Kerberos -ReplicationAllowedFromAnyServer $true -DefaultStorageLocation d:\DefaultReplicaStorage
This example configures a Replica server that accepts replication from all authenticated servers and uses a default storage location of d:\DefaultReplicaStorage.
Example 3
PS C:\> Set-VMReplicationServer -MonitoringInterval "12:00:00" -MonitoringStartTime "17:00:00"
This example configures the Replica server with a monitoring interval of 12 hours starting at 17:00 hours.
Example 4
PS C:\> $portmapping = @{"Server1.contoso.com" = 82; "Server2.contoso.com" = 81; "Broker.contoso.com" = 80}
PS C:\> Set-VMReplicationServer -KerberosAuthenticationPortMapping $portmapping
This example configures the nodes of the cluster to receive replication on different ports. The first command declares a variable named portmapping and uses it to store the server names of the nodes and the port to use on each node. The second command configures each node of the cluster to use port mapping for Kerberos authentication using the values stored in the portmapping variable.
Parameters
-AllowedAuthenticationType
Specifies which authentication types the Replica server will use. Allowed values are Kerberos, Certificate, or CertificateAndKerberos.
Type: | RecoveryAuthenticationType |
Aliases: | AuthType |
Accepted values: | Kerberos, Certificate, CertificateAndKerberos |
Position: | 1 |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-CertificateAuthenticationPort
Specifies the port on which the Replica server will receive replication data using certificate-based authentication. This parameter can be set only when the value of the AllowedAuthType parameter is Certificate or CertificateAndKerberos.
Type: | Int32 |
Aliases: | CertAuthPort |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-CertificateAuthenticationPortMapping
When using Hyper-V Replica with failover clustering and certificate-based authorization, you can use this parameter to specify a different port for each node of the cluster to receive replication. We recommend that you specify a unique port for each node of the cluster, and one unique port for the Hyper-V Replica Broker. This parameter can be set only when the Replica server is configured with an authentication type of Certificate or CertificateAndKerberos.
Type: | Hashtable |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-CertificateThumbprint
Specifies the certificate to use for mutual authentication of the replication data. This parameter is required only when Certificate is specified as the type of authentication. Specify the thumbprint of a valid computer certificate from the Personal store.
The certificate must have all of the following properties to be valid:
- It must not be expired.
- It must include both client and server authentication extensions for extended key usage (EKU), and an associated private key.
- It must terminate at a valid root certificate.
- It must meet the requirements for the subject common name (CN): -- For servers that are not clustered, the subject common name (CN) must be equal to, or subject alternative name (DNS Name) should contain, the FQDN of the host. -- For servers that are clustered, each node must have two certificates - one in which the subject common name (CN) or subject alternative name (DNS Name) is the name of the node, and the other in which subject common name (CN) or subject alternative name (DNS Name) is FQDN of the Hyper-V Replica Broker.
To display a list of certificates in the computer's My store and the thumbprint of each certificate, run the following commands:
PS C:\\\> cd cert:\LocalMachine\My
PS C:\\\> dir | format-list
For more information about certificate stores, see Certificate stores.
Type: | String |
Aliases: | Thumbprint |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-ComputerName
Configures Replica server settings for one or more Hyper-V hosts. NetBIOS names, IP addresses, and fully qualified domain names are allowable. The default is the local computer. Use localhost or a dot (.) to specify the local computer explicitly.
Type: | String[] |
Position: | Named |
Default value: | . |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Confirm
Prompts you for confirmation before running the cmdlet.
Type: | SwitchParameter |
Aliases: | cf |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-DefaultStorageLocation
Specifies the default location to store the virtual hard disk files when a Replica virtual machine is created. You must specify this parameter when ReplicationAllowedFromAnyServer is True.
Type: | String |
Aliases: | StorageLoc |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Force
Specifies whether the command runs without requiring confirmation.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-KerberosAuthenticationPort
Specifies the port that the HTTP listener uses on the Replica server host.
Type: | Int32 |
Aliases: | KerbAuthPort |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-KerberosAuthenticationPortMapping
When using Hyper-V Replica with failover clustering and Kerberos authorization, you can use this parameter to specify a different port for each node of the cluster to receive replication. We recommend that you specify a unique port for each node of the cluster, and one unique port for the Hyper-V Replica Broker. This parameter can be set only when the Replica server is configured with an authentication type of either Kerberos or CertificateAndKerberos.
Type: | Hashtable |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-MonitoringInterval
Specifies how often (the monitoring interval) replication statistics are computed. Valid values are: 1 hour, 2 hours, 3 hours, 4 hours, 6 hours, 8 hours, 12 hours, 24 hours, 2 days, 3 days, 4 days, 5 days, 6 days, 7 days. Specify in the format days:hours:minutes:seconds, such as 01:00:00 for 1 hour, or 1.00:00:00 for 1 day.
Type: | TimeSpan |
Position: | Named |
Default value: | 24 |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-MonitoringStartTime
Specifies when the monitoring interval starts.
Type: | TimeSpan |
Position: | Named |
Default value: | 9 AM |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-PassThru
Specifies that a VMReplicationServer object is to be passed through to the pipeline representing the replication settings of the Replica server.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ReplicationAllowedFromAnyServer
Specifies whether to accept replication requests from any server. When specified as true, DefaultStorageLocation must also be specified. The default storage location and DEFAULT trust group tag are used for virtual machine replicas.
Type: | Boolean |
Aliases: | AllowAnyServer |
Position: | 2 |
Default value: | True |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ReplicationEnabled
Specifies whether the host is enabled as a Replica server.
Type: | Boolean |
Aliases: | RepEnabled |
Position: | 0 |
Default value: | True |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-WhatIf
Shows what would happen if the cmdlet runs. The cmdlet is not run.
Type: | SwitchParameter |
Aliases: | wi |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Outputs
None
Default
VMRecoveryServer
If -PassThru is specified.