Veritas InfoScale™ 7.4.2 Solutions in Cloud Environments
- Overview and preparation
- Configurations for Amazon Web Services - Linux
- Configurations for Amazon Web Services - Windows
- Replication configurations in AWS - Windows
- HA and DR configurations in AWS - Windows
- Configurations for Microsoft Azure - Linux
- Configurations for Microsoft Azure - Windows
- Configurations for Google Cloud Platform- Linux
- Configurations for Google Cloud Platform - Windows
- Replication to and across cloud environments
- Migrating files to the cloud using Cloud Connectors
- Troubleshooting issues in cloud deployments
DR from on-premises to Azure and across Azure regions or VNets - Windows
VCS lets you use the global cluster option (GCO) for DR configurations. You can use a DR configuration to fail over applications across different regions or VNets in Azure or between an on-premises site and Azure.
The following is required for on-premise to cloud DR using VPN tunneling:
Prepare the setup at on-premise data center
Prepare the setup at on-cloud data center
Establish a VPN tunnel from on-premise data center to cloud data center
Virtual private IP for cluster nodes that exist in the same subnet. The IP address is used for cross-cluster communication
The following is required for region to region DR using VNet peering:
Prepare the setup at both the data centers in the regions
Establish a VNet peering from one region to the other region
Virtual private IP for cluster nodes that exist in the same subnet. The IP address is used for cross-cluster communication
Note:
If you use an VPN tunnel between an on-premises site and Azure or you use VNet peering between Azure regions, the cluster nodes in the cloud must be in the same subnet.
The sample configuration includes the following elements:
VPN tunnel between on-premise data center and Region A
The primary site has the following elements:
Cluster nodes in the same subnet
Virtual private IP for cross-cluster communication
The secondary site has the following elements:
A VNet is configured in Region A of the Azure cloud
The same application is configured for HA on Node 3 and Node 4, which exist in Subnet
Virtual private IP for cross-cluster communication
The following snippet is a service group configuration from a sample configuration file (main.cf):
cluster vcs_cluster1 ( ClusterAddress = "10.3.3.100" SecureClus = 1 ) remotecluster vcs_cluster2 ( ClusterAddress = "10.5.0.5" ) heartbeat Icmp ( ClusterList = { vcs_cluster2 } Arguments @vcs_cluster2 = { "10.5.0.5" } ) system AzureVM1( ) system AzureVM2( ) group AzureAuthGrp ( SystemList = { AzureVM1= 0, AzureVM2= 1 } Parallel = 1 ) AzureAuth azurauth ( SubscriptionId = 6940a326-abc6-40dd-b717-c1e9bcdf1d63 ClientId = 8c891a8c-ghi2-473b-bbec-035ac50fb896 SecretKey = gsiOssRooSpShuNoiQioNsjQlqHovUosQsrMt TenantId = 96dcased-0448-4308-b505-6789d61dd0e3 ) Phantom phres ( ) group ClusterService ( SystemList = { AzureVM1= 0, AzureVM2= 1 } AutoStartList = { AzureVM1, AzureVM2} OnlineRetryLimit = 3 OnlineRetryInterval = 120 ) Process wac ( StartProgram @ AzureVM1 = "\"C:\\Program Files\\Veritas\\ Cluster Server\\bin\\wac.exe\"" StartProgram @ AzureVM2 = "\"C:\\Program Files\\Veritas\\ Cluster Server\\bin\\wac.exe\"" StopProgram @ AzureVM1 = "\"C:\\Program Files\\Veritas\\ Cluster Server\\bin\\wacstop.exe\"" StopProgram @ AzureVM2 = "\"C:\\Program Files\\Veritas\\ Cluster Server\\bin\\wacstop.exe\"" MonitorProgram @ AzureVM1 = "\"C:\\Program Files\\Veritas\\ Cluster Server\\bin\\wacmonitor.exe\"" MonitorProgram @ AzureVM2 = "\"C:\\Program Files\\Veritas\\ Cluster Server\\bin\\wacmonitor.exe\"" AzureIP azureipres ( PrivateIP = "10.3.3.100" MACAddress @AzureVM1 = 00-0D-3A-91-73-A0 MACAddress @AzureVM2 = 00-0D-3A-92-03-DC AzureAuthResName = azurauth ) IP gcoip ( Address = "10.3.3.100" SubNetMask = "255.255.255.0" MACAddress @AzureVM1 = 00-0D-3A-91-73-A0 MACAddress @AzureVM2 = 00-0D-3A-92-03-DC ) NIC gconic ( MACAddress @AzureVM1 = 00-0D-3A-91-73-A0 MACAddress @AzureVM2 = 00-0D-3A-92-03-DC ) gcoip requires azureipres gcoip requires gconic wac requires gcoip group VVR ( SystemList = { AzureVM1= 0, AzureVM2= 1 } AutoStartList = { AzureVM1, AzureVM2} ) AzureDisk disk_res ( DiskIds = { "/subscriptions/6940a326-abc6-40dd-b717-c1e9bcdf1d63/ resourceGroups/TestRG/providers/Microsoft.Compute/ disks/AzureDisk1" } VMResourceGroup = TestRG AzureAuthResName = azurauth ) AzureDisk disk_res1 ( DiskIds = { "/subscriptions/6940a326-abc6-40dd-b717-c1e9bcdf1d63/ resourceGroups/TestRG/providers/Microsoft.Compute/ disks/AzureDisk2" } VMResourceGroup = TestRG AzureAuthResName = azurauth ) AzureDisk disk_res3 ( DiskIds = { "/subscriptions/6940a326-abc6-40dd-b717-c1e9bcdf1d63/ resourceGroups/TestRG/providers/Microsoft.Compute/ disks/AzureDisk3" } VMResourceGroup = TestRG AzureAuthResName = azurauth ) AzureIP azureipres_vvr ( PrivateIP = "10.3.3.200" MACAddress @AzureVM1 = 00-0D-3A-91-73-A0 MACAddress @AzureVM2 = 00-0D-3A-92-03-DC AzureAuthResName = azurauth ) AzureIP azureipres_vvr1 ( PrivateIP = "10.3.3.201" MACAddress @AzureVM1 = 00-0D-3A-91-73-A0 MACAddress @AzureVM2 = 00-0D-3A-92-03-DC AzureAuthResName = azurauth ) IP ip_vvr ( Address = "10.3.3.200" SubNetMask = "255.255.255.0" MACAddress @AzureVM1 = 00-0D-3A-91-73-A0 MACAddress @AzureVM2 = 00-0D-3A-92-03-DC ) NIC nic_vvr ( MACAddress @AzureVM1 = 00-0D-3A-91-73-A0 MACAddress @AzureVM2 = 00-0D-3A-92-03-DC ) VMNSDg dgres ( DiskGroupName = vvrdg DGGuid = 6bee34d7-056d-4b01-ae63-397099792471 ) VvrRvg rvgres ( RVG = rvg VMDgResName = dgres IPResName = ip_vvr ) ip_vvr requires azureipres_vvr dgres requires disk_res dgres requires disk_res1 ip_vvr requires nic_vvr rvgres requires ip_vvr rvgres requires dgres group SG_FS ( SystemList = { AzureVM1= 0, AzureVM2= 1 } ClusterList = { vcs_cluster1 = 0, vcs_cluster2 = 1 } Authority = 1 ) FileShare SG_FS-FileShare ( PathName = "\\PerfLogs" ShareName = PerfLogs LanmanResName = SG_FS-Lanman MountResName = SG_FS-MountV UserPermissions = { "VCSDOMAIN\\Administrator" = FULL_CONTROL } ShareSubdirectories = 1 ) AzureIP SG_FS-AzureIP ( PrivateIP = "10.3.3.300" MACAddress @AzureVM1 = 00-0D-3A-91-73-A0 MACAddress @AzureVM2 = 00-0D-3A-92-03-DC AzureAuthResName = azurauth ) IP SG_FS-IP ( Address = "10.3.3.300" SubNetMask = "255.255.255.0" MACAddress @AzureVM1 = 00-0D-3A-91-73-A0 MACAddress @AzureVM2 = 00-0D-3A-92-03-DC ) Lanman SG_FS-Lanman ( VirtualName = AzureVirtualFS IPResName = SG_FS-IP DNSUpdateRequired = 1 ADUpdateRequired = 1 DNSCriticalForOnline = 1 ADCriticalForOnline = 1 ) MountV SG_FS-MountV ( MountPath = "G:" VolumeName = volume1 VMDGResName = dgres ) NIC SG_FS-NIC ( MACAddress @AzureVM1 = 00-0D-3A-91-73-A0 MACAddress @AzureVM2 = 00-0D-3A-92-03-DC ) RVGPrimary SG_FS-RVGPrimary ( RvgResourceName = rvgres ) requires group VVR online local hard SG_FS-FileShare requires SG_FS-MountV SG_FS-FileShare requires SG_FS-Lanman SG_FS-IP requires SG_FS-NIC SG_FS-IP requires SG_FS-AzureIP SG_FS-Lanman requires SG_FS-IP SG_FS-MountV requires SG_FS-RVGPrimary