@@ -562,7 +562,6 @@ func (d *driver) assurePrivateAccount(cfg *Azure, infra *configv1.Infrastructure
562
562
ClientSecret : cfg .ClientSecret ,
563
563
FederatedTokenFile : cfg .FederatedTokenFile ,
564
564
SubscriptionID : cfg .SubscriptionID ,
565
- ResourceGroupName : cfg .ResourceGroup ,
566
565
TagSet : tagset ,
567
566
})
568
567
if err != nil {
@@ -581,24 +580,29 @@ func (d *driver) assurePrivateAccount(cfg *Azure, infra *configv1.Infrastructure
581
580
privateEndpointName = generateAccountName (infra .Status .InfrastructureName )
582
581
}
583
582
583
+ networkResourceGroup := cfg .ResourceGroup
584
+ if internalConfig .NetworkResourceGroupName != "" {
585
+ networkResourceGroup = internalConfig .NetworkResourceGroupName
586
+ }
587
+
584
588
// the last step in this function is to disable public network for the
585
589
// storage account - if we already did that, then none of the steps
586
590
// below need to be executed.
587
- if azclient .IsStorageAccountPrivate (d .Context , accountName ) {
591
+ if azclient .IsStorageAccountPrivate (d .Context , cfg . ResourceGroup , accountName ) {
588
592
return privateEndpointName , nil
589
593
}
590
594
591
595
if internalConfig .VNetName == "" {
592
596
tagKey := fmt .Sprintf ("kubernetes.io_cluster.%s" , infra .Status .InfrastructureName )
593
- vnet , err := azclient .GetVNetByTag (d .Context , tagKey , "owned" , "shared" )
597
+ vnet , err := azclient .GetVNetByTag (d .Context , networkResourceGroup , tagKey , "owned" , "shared" )
594
598
if err != nil {
595
599
return "" , fmt .Errorf ("failed to discover vnet name, please provide network details manually: %q" , err )
596
600
}
597
601
internalConfig .VNetName = * vnet .Name
598
602
}
599
603
600
604
if internalConfig .SubnetName == "" {
601
- subnet , err := azclient .GetSubnetsByVNet (d .Context , internalConfig .VNetName )
605
+ subnet , err := azclient .GetSubnetsByVNet (d .Context , networkResourceGroup , internalConfig .VNetName )
602
606
if err != nil {
603
607
return "" , fmt .Errorf ("failed to discover subnet name, please provide network details manually: %q" , err )
604
608
}
@@ -609,11 +613,13 @@ func (d *driver) assurePrivateAccount(cfg *Azure, infra *configv1.Infrastructure
609
613
pe , err := azclient .CreatePrivateEndpoint (
610
614
d .Context ,
611
615
& azureclient.PrivateEndpointCreateOptions {
612
- Location : cfg .Region ,
613
- VNetName : internalConfig .VNetName ,
614
- SubnetName : internalConfig .SubnetName ,
615
- PrivateEndpointName : privateEndpointName ,
616
- StorageAccountName : accountName ,
616
+ Location : cfg .Region ,
617
+ ClusterResourceGroupName : cfg .ResourceGroup ,
618
+ NetworkResourceGroupName : networkResourceGroup ,
619
+ VNetName : internalConfig .VNetName ,
620
+ SubnetName : internalConfig .SubnetName ,
621
+ PrivateEndpointName : privateEndpointName ,
622
+ StorageAccountName : accountName ,
617
623
},
618
624
)
619
625
if err != nil {
@@ -623,14 +629,14 @@ func (d *driver) assurePrivateAccount(cfg *Azure, infra *configv1.Infrastructure
623
629
624
630
klog .V (3 ).Info ("configuring private DNS..." )
625
631
if err := azclient .ConfigurePrivateDNS (
626
- d .Context , pe , internalConfig .VNetName , accountName ,
632
+ d .Context , pe , cfg . ResourceGroup , networkResourceGroup , internalConfig .VNetName , accountName ,
627
633
); err != nil {
628
634
return privateEndpointName , err
629
635
}
630
636
klog .V (3 ).Info ("private DNS configured" )
631
637
632
638
klog .V (3 ).Infof ("disabling public network access for storage account %q..." , accountName )
633
- if err := azclient .UpdateStorageAccountNetworkAccess (d .Context , accountName , false ); err != nil {
639
+ if err := azclient .UpdateStorageAccountNetworkAccess (d .Context , cfg . ResourceGroup , accountName , false ); err != nil {
634
640
return privateEndpointName , err
635
641
}
636
642
@@ -952,7 +958,6 @@ func (d *driver) RemoveStorage(cr *imageregistryv1.Config) (retry bool, err erro
952
958
ClientSecret : cfg .ClientSecret ,
953
959
FederatedTokenFile : cfg .FederatedTokenFile ,
954
960
SubscriptionID : cfg .SubscriptionID ,
955
- ResourceGroupName : cfg .ResourceGroup ,
956
961
})
957
962
if err != nil {
958
963
util .UpdateCondition (
@@ -966,6 +971,7 @@ func (d *driver) RemoveStorage(cr *imageregistryv1.Config) (retry bool, err erro
966
971
}
967
972
if err := azclient .DestroyPrivateDNS (
968
973
d .Context ,
974
+ cfg .ResourceGroup ,
969
975
d .Config .NetworkAccess .Internal .PrivateEndpointName ,
970
976
d .Config .NetworkAccess .Internal .VNetName ,
971
977
d .Config .AccountName ,
@@ -980,7 +986,7 @@ func (d *driver) RemoveStorage(cr *imageregistryv1.Config) (retry bool, err erro
980
986
return false , err
981
987
}
982
988
if err := azclient .DeletePrivateEndpoint (
983
- d .Context , d .Config .NetworkAccess .Internal .PrivateEndpointName ,
989
+ d .Context , cfg . ResourceGroup , d .Config .NetworkAccess .Internal .PrivateEndpointName ,
984
990
); err != nil {
985
991
util .UpdateCondition (
986
992
cr ,
0 commit comments