@@ -558,9 +558,13 @@ func (s *ClusterScope) VNetSpec() azure.ASOResourceSpecGetter[*asonetworkv1api20
558558// PrivateDNSSpec returns the private dns zone spec.
559559func (s * ClusterScope ) PrivateDNSSpec () (zoneSpec azure.ResourceSpecGetter , linkSpec , recordSpec []azure.ResourceSpecGetter ) {
560560 if s .IsAPIServerPrivate () {
561+ resourceGroup := s .ResourceGroup ()
562+ if s .AzureCluster .Spec .NetworkSpec .PrivateDNSZoneResourceGroup != "" {
563+ resourceGroup = s .AzureCluster .Spec .NetworkSpec .PrivateDNSZoneResourceGroup
564+ }
561565 zone := privatedns.ZoneSpec {
562566 Name : s .GetPrivateDNSZoneName (),
563- ResourceGroup : s . ResourceGroup () ,
567+ ResourceGroup : resourceGroup ,
564568 ClusterName : s .ClusterName (),
565569 AdditionalTags : s .AdditionalTags (),
566570 }
@@ -572,7 +576,7 @@ func (s *ClusterScope) PrivateDNSSpec() (zoneSpec azure.ResourceSpecGetter, link
572576 SubscriptionID : s .SubscriptionID (),
573577 VNetResourceGroup : s .Vnet ().ResourceGroup ,
574578 VNetName : s .Vnet ().Name ,
575- ResourceGroup : s . ResourceGroup () ,
579+ ResourceGroup : resourceGroup ,
576580 ClusterName : s .ClusterName (),
577581 AdditionalTags : s .AdditionalTags (),
578582 }
@@ -583,7 +587,7 @@ func (s *ClusterScope) PrivateDNSSpec() (zoneSpec azure.ResourceSpecGetter, link
583587 SubscriptionID : s .SubscriptionID (),
584588 VNetResourceGroup : peering .ResourceGroup ,
585589 VNetName : peering .RemoteVnetName ,
586- ResourceGroup : s . ResourceGroup () ,
590+ ResourceGroup : resourceGroup ,
587591 ClusterName : s .ClusterName (),
588592 AdditionalTags : s .AdditionalTags (),
589593 }
@@ -596,7 +600,7 @@ func (s *ClusterScope) PrivateDNSSpec() (zoneSpec azure.ResourceSpecGetter, link
596600 IP : s .APIServerPrivateIP (),
597601 },
598602 ZoneName : s .GetPrivateDNSZoneName (),
599- ResourceGroup : s . ResourceGroup () ,
603+ ResourceGroup : resourceGroup ,
600604 }
601605
602606 return zone , links , records
0 commit comments