Closed MauricioZa closed 6 years ago
@jorgefava Thanks for the question! We are investigating and will update you shortly.
@MikeRayMSFT can you advise on this one? I believe it is setup this way as the second cluster would be the failover cluster. Hence, the same IPs would make sense. But I know duplicate IPs in Azure can cause problems.
Sorry for bother, but, we are trying to implement this. Is there any response to my issue ? Thank you !
@jorgefava sorry for the delay! I am checking with @MikeRayMSFT offline now.
@jorgefava - I also am sorry for the delay. From my side I'm contacting the appropriate Azure teams to find out how to correct the information in the technical content and will update as soon as possible.
Here are some resources for technical support immediately:
@jorgefava -
To avoid this situation, the cluster address can use APIPA (usually used when no DHCP server is available). Choose an address from the address range 169.254.0.1 to 169.254.255.254. The cluster address is already not connectable in the Azure VM WSFC so, an APIPA address can be used. This is what the Microsoft Azure resource manager ARM templates do for the WSFC hosting the availability group.
We will update the documents.
Thank you for your comments.
No matter what I tried, (GUI and Powershell) I can't enter the APIPA 169.254.x.x address as the cluster address because it isn't in the same subnet as the NIC's assigned IP - what seems to be missing?
Thanks @kjsteven. I am working with @MikeRayMSFT offline to see what the issue is.
Related MSDN thread for reference: https://social.msdn.microsoft.com/Forums/azure/en-US/60d2a3db-3ef7-423b-8291-5aad3aedcc8a/cannot-assign-apipa-failover-cluster-ip-when-creating-sql-2016-alwayson-on-azure-vms?forum=WAVirtualMachinesforWindows
@kjsteven this sounds very frustrating for you and @jorgefava - in separate situations. @MicahMcKittrick-MSFT and I have the solution.
====== Now RDP into one of the the SQL Server AG cluster nodes.
Open the firewall. Create a new inbound rule for the health probe. Allow TCP 58888 the firewall. Do this for both cluster nodes.
===
Configure the IP address on the cluster
In failover cluster manager, click the cluster. Locate Cluster Core Resources
Under Cluster Core Resources -> Server Name, right-click IP Address and click Properties
Copy the value from the Name of the IP address. Probably something like Cluster IP address. You will need this to set the cluster properties.
Under IP Address Set the IP address to the IP address you configured for the New FRont End IP address on the load balancer.
Click OK.
Failover cluster manager will prompt you to restart the cluster resource.
=====
Open Powershell
Run Get-ClusterNetwork
. Copy the name of the cluster network. Probably something like Cluster Network 1
.
Update the following script for your environment.
$ClusterNetworkName = "<ClusterNetworkName" # the cluster network name (Use Get-ClusterNetwork on Windows Server 2012 of higher to find the name)
$IPResourceName = "<Cluster IP Address Name>" # the IP Address resource name
$ILBIP = "x.x.x.x" # the IP Address of the Internal Load Balancer (ILB). This is the static IP address for the load balancer you configured in the Azure portal.
[int]$ProbePort = <58888> #Replace with your port
Import-Module FailoverClusters
Get-ClusterResource $IPResourceName | Set-ClusterParameter -Multiple @{"Address"="$ILBIP";"ProbePort"=$ProbePort;"SubnetMask"="255.255.255.255";"Network"="$ClusterNetworkName";"EnableDhcp"=0}
Run the script to set the cluster parameter for your environment.
That should solve the problem and prevent any IP address issues with the WSFC name.
Technical Reason: For an IP address to float easily from one host to another in on premises networks it uses a gratuitous ARP (GARP). GARP is not available on cloud provider networks, so the load balancer holds the front end IP address (so it won’t get reassigned) and probes the cluster nodes to see which node owns the resource. Then calls to the IP address are routed to the LB which forwards them to whichever node is responding to the health probe.
I'm working to update the content.
Thank you for submitting this request.
Thanks @MikeRayMSFT!
@jorgefava we have updated the doc. Please try to work through it again and let us know if you have issues. We setup an environment and verified the steps work.
Hello guys
In the section: "Set the cluster IP address" > Step 3 it says: "Select Static IP Address and specify an available address from subnet where the SQL Server is in the Address text box. Then, click OK."
I did exactly that. But I have a problem. I took the next address that was available in my subnet and assigned it to the cluster. Then, I finished the rest of the configuration, and everything is up and running. All good !
Now, 2 weeks later, I created 10 Web Server VMs in the same subnet. I noticed one of these Web Servers grabbed the same IP that I assigned to my cluster previously. The cluster is still alive and running (and the web server with the duplicated IP is running OK too).
It makes me nervous that I have the same IP allocated twice. I am scared my Always On cluster may have a problem due to this.
I investigated and there's no way to reserve a local IP within Azure so it is not taken by anything else. How can I reserve the cluster IP in the Azure subnet so it is not taken by anything else? Or, is it just that there's no problem if it is duplicated ?
Thanks !
Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.