Skip to content

Commit c8ab007

Browse files
authored
Merge pull request #291593 from j-egler/jessegler/vm-naks-ga-api-update
GA API Update
2 parents 33720c9 + b848da8 commit c8ab007

10 files changed

+78
-18
lines changed

articles/operator-nexus/concepts-nexus-networking.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -227,8 +227,8 @@ field.
227227
[vrf]: https://en.wikipedia.org/wiki/Virtual_routing_and_forwarding
228228
[isd]: ./howto-configure-isolation-domain.md
229229
[internal-net]: ./howto-configure-isolation-domain.md#create-internal-network
230-
[vm-netattach]: /rest/api/networkcloud/virtual-machines/create-or-update?view=rest-networkcloud-2023-07-01&tabs=HTTP#networkattachment
231-
[attachednetconf]: /rest/api/networkcloud/kubernetes-clusters/create-or-update?view=rest-networkcloud-2023-07-01&tabs=HTTP#attachednetworkconfiguration
230+
[vm-netattach]: /rest/api/networkcloud/virtual-machines/create-or-update?view=rest-networkcloud-2024-07-01&tabs=HTTP#networkattachment
231+
[attachednetconf]: /rest/api/networkcloud/kubernetes-clusters/create-or-update?view=rest-networkcloud-2024-07-01&tabs=HTTP#attachednetworkconfiguration
232232

233233
## Operator Nexus Kubernetes networking
234234

articles/operator-nexus/howto-virtual-machine-image.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ Before you begin creating a virtual machine (VM) image, ensure you have the foll
1919

2020
* Install the latest version of the [necessary Azure CLI extensions](./howto-install-cli-extensions.md).
2121

22-
* This article requires version 2.49.0 or later of the Azure CLI. If using Azure Cloud Shell, the latest version is already installed.
22+
* This article requires version 2.61.0 or later of the Azure CLI. If using Azure Cloud Shell, the latest version is already installed.
2323

2424
* Azure Container Registry (ACR): Set up a working Azure Container Registry to store and manage your container images. ACR provides a secure and private registry for storing Docker images used in your VM image creation process. You can create an ACR by following the official documentation at [Azure Container Registry](/azure/container-registry/container-registry-intro) documentation.
2525

articles/operator-nexus/includes/kubernetes-cluster/quickstart-arm-add-node-pool.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -160,7 +160,7 @@
160160
"resources": [
161161
{
162162
"type": "Microsoft.NetworkCloud/kubernetesClusters/agentpools",
163-
"apiVersion": "2023-07-01",
163+
"apiVersion": "2024-07-01",
164164
"name": "[concat(parameters('kubernetesClusterName'), '/', parameters('kubernetesClusterName'), '-', parameters('agentPoolName'))]",
165165
"location": "[parameters('location')]",
166166
"extendedLocation": {

articles/operator-nexus/includes/kubernetes-cluster/quickstart-arm-deploy.json

Lines changed: 52 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -173,12 +173,58 @@
173173
}
174174
*/
175175
},
176+
"fabricPeeringEnabled": {
177+
"type": "string",
178+
"metadata": {
179+
"description": "The indicator to specify if the load balancer peers with the network fabric."
180+
},
181+
"defaultValue": "True"
182+
},
183+
"bgpAdvertisements": {
184+
"type": "array",
185+
"metadata": {
186+
"description": "The association of IP address pools to the communities and peers, allowing for announcement of IPs."
187+
},
188+
"defaultValue": []
189+
/*
190+
{
191+
"advertiseToFabric": "True/False",
192+
"communities": [
193+
"string"
194+
],
195+
"ipAddressPools": [
196+
"string"
197+
],
198+
"pools": [
199+
"string"
200+
]
201+
}
202+
*/
203+
},
204+
"bgpPeers": {
205+
"type": "array",
206+
"metadata": {
207+
"description": "The list of additional BgpPeer entities that the Kubernetes cluster will peer with. All peering must be explicitly defined."
208+
},
209+
"defaultValue": []
210+
/*
211+
{
212+
"bfdEnabled": "True/False",
213+
"bgpMultiHop": "True/False",
214+
"myAsn": 0-4294967295,
215+
"name": "string",
216+
"password": "string",
217+
"peerAddress": "string",
218+
"peerPort": 179
219+
}
220+
*/
221+
},
176222
"kubernetesVersion": {
177223
"type": "string",
178224
"metadata": {
179225
"description": "The version of Kubernetes to be used in the Nexus Kubernetes cluster"
180226
},
181-
"defaultValue": "v1.24.9"
227+
"defaultValue": "v1.27.1"
182228
},
183229
"controlPlaneCount": {
184230
"type": "int",
@@ -310,7 +356,7 @@
310356
"resources": [
311357
{
312358
"type": "Microsoft.NetworkCloud/kubernetesClusters",
313-
"apiVersion": "2023-07-01",
359+
"apiVersion": "2024-07-01",
314360
"name": "[parameters('kubernetesClusterName')]",
315361
"location": "[parameters('location')]",
316362
"tags": "[parameters('tags')]",
@@ -376,7 +422,10 @@
376422
"trunkedNetworks": "[if(empty(parameters('trunkedNetworks')), json('null'), parameters('trunkedNetworks'))]"
377423
},
378424
"bgpServiceLoadBalancerConfiguration": {
379-
"ipAddressPools": "[if(empty(parameters('ipAddressPools')), json('null'), parameters('ipAddressPools'))]"
425+
"ipAddressPools": "[if(empty(parameters('ipAddressPools')), json('null'), parameters('ipAddressPools'))]",
426+
"fabricPeeringEnabled": "[if(empty(parameters('fabricPeeringEnabled')), json('null'), parameters('fabricPeeringEnabled'))]",
427+
"bgpAdvertisements": "[if(empty(parameters('bgpAdvertisements')), json('null'), parameters('bgpAdvertisements'))]",
428+
"bgpPeers": "[if(empty(parameters('bgpPeers')), json('null'), parameters('bgpPeers'))]"
380429
}
381430
}
382431
}

articles/operator-nexus/includes/kubernetes-cluster/quickstart-bicep-add-node-pool.bicep

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -83,7 +83,7 @@ param trunkedNetworks array = []
8383
// pluginType: 'SRIOV|DPDK|OSDevice|MACVLAN|IPVLAN'
8484
// }
8585

86-
resource agentPools 'Microsoft.NetworkCloud/kubernetesClusters/agentPools@2023-07-01' = {
86+
resource agentPools 'Microsoft.NetworkCloud/kubernetesClusters/agentPools@2024-07-01' = {
8787
name: '${kubernetesClusterName}/${kubernetesClusterName}-${agentPoolName}'
8888
location: location
8989
tags: tags

articles/operator-nexus/includes/kubernetes-cluster/quickstart-bicep-deploy.bicep

Lines changed: 14 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -93,7 +93,7 @@ param ipAddressPools array = []
9393
// Cluster Configuration Parameters
9494

9595
@description('The version of Kubernetes to be used in the Nexus Kubernetes cluster')
96-
param kubernetesVersion string = 'v1.24.9'
96+
param kubernetesVersion string = 'v1.27.1'
9797

9898
@description('The number of control plane nodes to be deployed in the cluster')
9999
param controlPlaneCount int = 1
@@ -161,8 +161,17 @@ param taints array = []
161161
// key: 'string'
162162
// value: 'string:NoSchedule|PreferNoSchedule|NoExecute'
163163
// }
164+
@description('The association of IP address pools to the communities and peers, allowing for announcement of IPs.')
165+
param bgpAdvertisements array = []
164166

165-
resource kubernetescluster 'Microsoft.NetworkCloud/kubernetesClusters@2023-07-01' = {
167+
@description('"The list of additional BgpPeer entities that the Kubernetes cluster will peer with. All peering must be explicitly defined.')
168+
param bgpPeers array = []
169+
170+
@description('The indicator to specify if the load balancer peers with the network fabric.')
171+
param fabricPeeringEnabled string = 'False'
172+
173+
174+
resource kubernetescluster 'Microsoft.NetworkCloud/kubernetesClusters@2024-07-01' = {
166175
name: kubernetesClusterName
167176
location: location
168177
tags: tags
@@ -228,6 +237,9 @@ resource kubernetescluster 'Microsoft.NetworkCloud/kubernetesClusters@2023-07-01
228237
trunkedNetworks: empty(trunkedNetworks) ? null : trunkedNetworks
229238
}
230239
bgpServiceLoadBalancerConfiguration: {
240+
bgpAdvertisements: empty(bgpAdvertisements) ? null : bgpAdvertisements
241+
bgpPeers: empty(bgpPeers) ? null : bgpPeers
242+
fabricPeeringEnabled: fabricPeeringEnabled
231243
ipAddressPools: empty(ipAddressPools) ? null : ipAddressPools
232244
}
233245
}

articles/operator-nexus/includes/kubernetes-cluster/quickstart-prereq.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ ms.custom: devx-track-azurecli
1212
[!INCLUDE [azure-cli-prepare-your-environment-no-header.md](~/reusable-content/azure-cli/azure-cli-prepare-your-environment-no-header.md)]
1313

1414
* Install the latest version of the [necessary Azure CLI extensions](../../howto-install-cli-extensions.md).
15-
* This article requires version 2.49.0 or later of the Azure CLI. If using Azure Cloud Shell, the latest version is already installed.
15+
* This article requires version 2.61.0 or later of the Azure CLI. If using Azure Cloud Shell, the latest version is already installed.
1616
* If you have multiple Azure subscriptions, select the appropriate subscription ID in which the resources should be billed using the [`az account`][az-account] command.
1717
* Refer the VM SKU table in the [reference section](../../reference-nexus-kubernetes-cluster-sku.md) for the list of supported VM SKUs.
1818
* Refer the [supported Kubernetes versions](../../reference-nexus-kubernetes-cluster-supported-versions.md) for the list of supported Kubernetes versions.

articles/operator-nexus/includes/virtual-machine/quickstart-prereq.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ ms.custom: devx-track-azurecli
1212
[!INCLUDE [azure-cli-prepare-your-environment-no-header.md](~/reusable-content/azure-cli/azure-cli-prepare-your-environment-no-header.md)]
1313

1414
* Install the latest version of the [necessary Azure CLI extensions](../../howto-install-cli-extensions.md).
15-
* This article requires version 2.49.0 or later of the Azure CLI. If using Azure Cloud Shell, the latest version is already installed.
15+
* This article requires version 2.61.0 or later of the Azure CLI. If using Azure Cloud Shell, the latest version is already installed.
1616
* If you have multiple Azure subscriptions, select the appropriate subscription ID in which the resources should be billed using the [`az account`][az-account] command.
1717
* Before proceeding with virtual machine creation, ensure that the container image to be used is created according to the [instructions](../../howto-virtual-machine-image.md).
1818
* Create a resource group using the [`az group create`][az-group-create] command. An [Azure resource group][azure-resource-group] is a logical group in which Azure resources are deployed and managed. When you create a resource group, you're prompted to specify a location. This location is the storage location of your resource group metadata and where your resources run in Azure if you don't specify another region during resource creation. The following example creates a resource group named *myResourceGroup* in the *eastus* location.

articles/operator-nexus/includes/virtual-machine/virtual-machine-arm-template.json

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -152,7 +152,8 @@
152152
"type": "object",
153153
"metadata": {
154154
"description": "Credentials used to login to the image repository."
155-
}
155+
},
156+
"defaultValue": {}
156157
/*
157158
"password": "string",
158159
"registryUrl": "string",
@@ -163,7 +164,7 @@
163164
"resources": [
164165
{
165166
"type": "Microsoft.NetworkCloud/virtualMachines",
166-
"apiVersion": "2023-07-01",
167+
"apiVersion": "2024-07-01",
167168
"name": "[parameters('vmName')]",
168169
"location": "[parameters('location')]",
169170
"extendedLocation": {
@@ -176,7 +177,6 @@
176177
"bootMethod": "[if(empty(parameters('bootMethod')), json('null'), parameters('bootMethod'))]",
177178
"cloudServicesNetworkAttachment": {
178179
"attachedNetworkId": "[parameters('cloudServicesNetworkId')]",
179-
"defaultGateway": "False",
180180
"ipAllocationMethod": "Dynamic"
181181
},
182182
"cpuCores": "[parameters('cpuCores')]",

articles/operator-nexus/includes/virtual-machine/virtual-machine-bicep-template.bicep

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -84,12 +84,12 @@ param vmDeviceModel string = 'T2'
8484
param vmImage string
8585

8686
@description('Credentials used to login to the image repository.')
87-
param vmImageRepositoryCredentials object
87+
param vmImageRepositoryCredentials object = {}
8888
// password: "string"
8989
// registryUrl: "string"
9090
// username: "string"
9191

92-
resource vm 'Microsoft.NetworkCloud/virtualMachines@2023-07-01' = {
92+
resource vm 'Microsoft.NetworkCloud/virtualMachines@2024-07-01' = {
9393
name: vmName
9494
location: location
9595
extendedLocation: {
@@ -102,7 +102,6 @@ resource vm 'Microsoft.NetworkCloud/virtualMachines@2023-07-01' = {
102102
bootMethod: (empty(bootMethod) ? null : bootMethod)
103103
cloudServicesNetworkAttachment: {
104104
attachedNetworkId: cloudServicesNetworkId
105-
defaultGateway: 'False'
106105
ipAllocationMethod: 'Dynamic'
107106
}
108107
cpuCores: cpuCores

0 commit comments

Comments
 (0)