MicrosoftDocs / azure-docs

Open source documentation of Microsoft Azure
https://docs.microsoft.com/azure
Creative Commons Attribution 4.0 International
10.22k stars 21.37k forks source link

No static IP available during cluster creation #34648

Closed ShawnPOWER closed 5 years ago

ShawnPOWER commented 5 years ago

At this step in the process: https://docs.microsoft.com/en-us/azure/virtual-machines/windows/sql/virtual-machines-windows-portal-sql-availability-group-tutorial#set-the-windows-server-failover-cluster-ip-address

Because my Azure VM only has DHCP on the NIC connected to my VM. The cluster resource was made as a "Distributed Server Name" and has no option for Static IP. From my research it seems you must have your NIC setup in a static IP configuration fashion to be able to create a cluster with a static IP. I unfortunately cannot seem to find a way to do that in the UI and am not having luck finding a way to swap the cluster over to a Static IP. Could you please clarify in the documentation what would be required on the NIC settings (not using DHCP, or providing a way to swap it over to Static IP as needed) on the Azure SQL VM to complete this process successfully?


Document Details

Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ShawnPOWER commented 5 years ago

To add onto this, if the Static IP isn't setup for the failover cluster it is difficult to complete step entitled "Add the cluster core IP address for the Windows Server Failover Cluster (WSFC)" and also complete this step "If necessary, repeat the steps above to set the cluster parameters for the WSFC cluster IP address.". It would be great to have those sections of the document updated also to reflect what can be done here to finish the configuration fully per this documentation.

mike-urnun-msft commented 5 years ago

Hi @ShawnPOWER - Thank you for your feedback! We have assigned this issue to the author to review further and take the right course of action.

gbagate commented 5 years ago

This documentation does use Azure VM with DHCP on the NIC. I cannot tell you why your cluster resource was made as a "Distributed Server Name". Can you please try creating it with PS and see: New-Cluster -Name -Node ("","") –StaticAddress <n.n.n.n> -NoStorage https://docs.microsoft.com/en-us/azure/virtual-machines/windows/sql/virtual-machines-windows-portal-sql-create-failover-cluster#create-the-failover-cluster

ShawnPOWER commented 5 years ago

This is fully reproducible today on an Azure VM. I just created the issue again this morning. Creating a new Windows Server 2019 VM as an AD DS machine (VM plus AD DS configuration). Then creating a new Windows Server 2019 VM as a Failover Cluster Node. Then installing failover cluster manager, making the new cluster with your command you mentioned for new-cluster on a VM with a DHCP NIC. Produces a Distributed Server Name cluster. The documentation needs to include in my opinion the proper steps to make this work in Azure.

gbagate commented 5 years ago

Hi Shawn, Thank you for the additional information your scenario as you are using Windows server 2019. Indeed, the documentation here was tested and confirmed on Windows server 2016. All the steps are still valid under that version and below.

My investigation found out this is the default design in this recent Windows Server 2019 Build 17733 and up. So what you are experiencing is not related to DHCP setting on the network card but a new feature called "Distributed Network Name" Distributed Network Name (clusres.dll): A Distributed Network Name is a name in the Cluster that does not use a clustered IP Address.
It is a name that is published in DNS using the IP Addresses of all the nodes in the Cluster. Client connectivity to this type name is reliant on DNS round robin.
In Azure, this type name can be used in lieu of having the need for an Internal Load Balancer (ILB) address. https://techcommunity.microsoft.com/t5/Failover-Clustering/Windows-Server-2016-2019-Cluster-Resource-Resource-Types/ba-p/372163

This is a relief as it removes lot of complexity regarding "Cluster Network Object" in Azure VM and everything is seamless to end-user. Additionally, the feature bring a new switch in the cluster cmdlet called : ManagementPointNetworkType which can take following value: 1.Singleton: Use the traditional method of DHCP or static IP address. 2.Distributed: Use a Distributed Network Name using node IP addresses. 3.Automatic: Use detection. If running in Azure, use Distributed; if running on-premises, use Singleton (the default). https://blogs.windows.com/windowsexperience/2018/08/14/announcing-windows-server-2019-insider-preview-build-17733/#W0YAxO8BfwBRbkzG.97

Suggestion: You can use below script to create the cluster as usual and follow the tutorial’steps or use the "Distributed Network Name" in Windows server 2019 and skip anything regarding cluster core name: New-Cluster -Name -Node ("","") –StaticAddress <n.n.n.n> -NoStorage -ManagementPointNetworkType Singleton

More information about Windows Server 2019 Failover Clustering New Features: https://techcommunity.microsoft.com/t5/Failover-Clustering/Windows-Server-2019-Failover-Clustering-New-Features/ba-p/544029

ShawnPOWER commented 5 years ago

Hello, thank you for the quick response. This makes a lot of sense, and sounds like an improvement. I appreciate you sharing your research. I presume you will update the document to reflect your findings?

gbagate commented 5 years ago

Correct, I will make sure both documentations get updated but cannot provide any ETA for the same: 1.https://docs.microsoft.com/en-us/azure/virtual-machines/windows/sql/virtual-machines-windows-portal-sql-availability-group-tutorial#set-the-windows-server-failover-cluster-ip-address

2.https://docs.microsoft.com/en-us/windows-server/failover-clustering/create-failover-cluster

MashaMSFT commented 5 years ago

Hi @ShawnPOWER, Thanks again for contacting Microsoft! We've submitted a documentation change based on your suggestion, and it should be live at this point. Please let us know if there is anything more we can do for you? If not, we'll proceed with closing out this Git Issue.

Thanks again and hope you have a wonderful rest of your day! Masha from SQL Docs team

please-close