Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -124,7 +124,7 @@ resource publicIpAddress 'Microsoft.Network/publicIpAddresses@2023-02-01' = if (
idleTimeoutInMinutes: 4
}
sku: {
name: 'Basic'
name: 'Standard'
}
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -56,7 +56,7 @@ resource publicIpAddresses 'Microsoft.Network/publicIpAddresses@2022-01-01' = [f
idleTimeoutInMinutes: 4
}
sku: {
name: 'Basic'
name: 'Standard'
}
}]

Expand Down
4 changes: 4 additions & 0 deletions azure_jumpstart_ag/contoso_hypermarket/bicep/main.bicep
Original file line number Diff line number Diff line change
Expand Up @@ -93,6 +93,9 @@ param azureOpenAIModel object = {
apiVersion: '2024-08-01-preview'
}

@description('Name of the NAT Gateway')
param natGatewayName string = 'Ag-NatGateway-${namingGuid}'

// @description('Option to deploy GPU-enabled nodes for the K3s Worker nodes.')
// param deployGPUNodes bool = false

Expand Down Expand Up @@ -131,6 +134,7 @@ module networkDeployment 'mgmt/network.bicep' = {
subnetNameCloud: subnetNameCloud
deployBastion: deployBastion
location: location
natGatewayName: natGatewayName
}
}

Expand Down
105 changes: 75 additions & 30 deletions azure_jumpstart_ag/contoso_hypermarket/bicep/mgmt/network.bicep
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,9 @@ param networkSecurityGroupNameCloud string = 'Ag-NSG-Prod'
@description('Name of the Bastion Network Security Group')
param bastionNetworkSecurityGroupName string = 'Ag-NSG-Bastion'

@description('Name of the NAT Gateway')
param natGatewayName string = 'Ag-NatGateway'

var addressPrefixCloud = '10.16.0.0/16'
var subnetAddressPrefixK3s = '10.16.80.0/21'
var subnetAddressPrefixCloud = '10.16.64.0/21'
Expand Down Expand Up @@ -58,6 +61,10 @@ var cloudK3sSubnet = [
networkSecurityGroup: {
id: networkSecurityGroupCloud.id
}
natGateway: {
id: natGateway.id
}
defaultOutboundAccess: false
}
}
]
Expand All @@ -72,11 +79,17 @@ var cloudSubnet = [
networkSecurityGroup: {
id: networkSecurityGroupCloud.id
}
natGateway: deployBastion
? {
id: natGateway.id
}
: null
defaultOutboundAccess: false
}
}
]

resource cloudVirtualNetwork 'Microsoft.Network/virtualNetworks@2022-07-01' = {
resource cloudVirtualNetwork 'Microsoft.Network/virtualNetworks@2024-07-01' = {
name: virtualNetworkNameCloud
location: location
tags: resourceTags
Expand Down Expand Up @@ -106,6 +119,35 @@ resource publicIpAddress 'Microsoft.Network/publicIPAddresses@2023-02-01' = if (
}
}

resource natGatewayPublicIp 'Microsoft.Network/publicIPAddresses@2024-07-01' = {
name: '${natGatewayName}-PIP'
location: location
properties: {
publicIPAllocationMethod: 'Static'
publicIPAddressVersion: 'IPv4'
idleTimeoutInMinutes: 4
}
sku: {
name: 'Standard'
}
}

resource natGateway 'Microsoft.Network/natGateways@2024-07-01' = {
name: natGatewayName
location: location
sku: {
name: 'Standard'
}
properties: {
publicIpAddresses: [
{
id: natGatewayPublicIp.id
}
]
idleTimeoutInMinutes: 4
}
}

resource networkSecurityGroupCloud 'Microsoft.Network/networkSecurityGroups@2023-02-01' = {
name: networkSecurityGroupNameCloud
location: location
Expand Down Expand Up @@ -385,41 +427,44 @@ resource bastionHost 'Microsoft.Network/bastionHosts@2023-02-01' = if (deployBas
}
}

resource loadBalancerPip 'Microsoft.Network/publicIPAddresses@2024-01-01' = [for (site, i) in sites: {
name: 'Ag-LB-Public-IP-${site}'
location: location
properties: {
publicIPAllocationMethod: 'Static'
publicIPAddressVersion: 'IPv4'
idleTimeoutInMinutes: 4
}
sku: {
name: 'Standard'
resource loadBalancerPip 'Microsoft.Network/publicIPAddresses@2024-01-01' = [
for (site, i) in sites: {
name: 'Ag-LB-Public-IP-${site}'
location: location
properties: {
publicIPAllocationMethod: 'Static'
publicIPAddressVersion: 'IPv4'
idleTimeoutInMinutes: 4
}
sku: {
name: 'Standard'
}
}
}]
]

resource loadBalancer 'Microsoft.Network/loadBalancers@2024-01-01' = [for (site, i) in sites: {
name: 'Ag-LoadBalancer-${site}'
location: location
sku: {
name: 'Standard'
}
properties: {
frontendIPConfigurations: [
{
name: 'Ag-LB-Frontend-${site}'
properties: {
publicIPAddress: {
id: loadBalancerPip[i].id
resource loadBalancer 'Microsoft.Network/loadBalancers@2024-01-01' = [
for (site, i) in sites: {
name: 'Ag-LoadBalancer-${site}'
location: location
sku: {
name: 'Standard'
}
properties: {
frontendIPConfigurations: [
{
name: 'Ag-LB-Frontend-${site}'
properties: {
publicIPAddress: {
id: loadBalancerPip[i].id
}
}
}
}
]
]
}
}
}]

]

output vnetId string = cloudVirtualNetwork.id
output k3sSubnetId string = cloudVirtualNetwork.properties.subnets[0].id
output cloudSubnetId string = cloudVirtualNetwork.properties.subnets[1].id
output virtualNetworkNameCloud string = cloudVirtualNetwork.name
output virtualNetworkNameCloud string = cloudVirtualNetwork.name
Original file line number Diff line number Diff line change
Expand Up @@ -120,7 +120,7 @@ resource publicIpAddress 'Microsoft.Network/publicIpAddresses@2023-02-01' = if (
idleTimeoutInMinutes: 4
}
sku: {
name: 'Basic'
name: 'Standard'
}
}

Expand Down
8 changes: 6 additions & 2 deletions azure_jumpstart_ag/contoso_motors/bicep/main.bicep
Original file line number Diff line number Diff line change
Expand Up @@ -100,6 +100,9 @@ param scenario string = 'contoso_motors'
@secure()
param influxDBPassword string = windowsAdminPassword

@description('Name of the NAT Gateway')
param natGatewayName string = 'Ag-NatGateway-${namingGuid}'

@description('The sku name of the K3s cluster worker nodes.')
@allowed([
'Standard_D8s_v5'
Expand Down Expand Up @@ -135,9 +138,10 @@ module networkDeployment 'mgmt/network.bicep' = {
params: {
virtualNetworkNameCloud: virtualNetworkNameCloud
subnetNameCloudK3s: subnetNameCloudK3s
subnetNameCloud: subnetNameCloud
subnetNameCloud: subnetNameCloud
deployBastion: deployBastion
location: location
natGatewayName: natGatewayName
}
}

Expand Down Expand Up @@ -225,7 +229,7 @@ module clientVmDeployment 'clientVm/clientVm.bicep' = {
dependsOn: [
ubuntuRancherK3sNodesDeployment
ubuntuRancherK3sDataSvcNodesDeployment
]
]
params: {
windowsAdminUsername: windowsAdminUsername
windowsAdminPassword: windowsAdminPassword
Expand Down
50 changes: 45 additions & 5 deletions azure_jumpstart_ag/contoso_motors/bicep/mgmt/network.bicep
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,6 @@ param subnetNameCloudK3s string
@description('Name of the inner-loop subnet in the cloud virtual network')
param subnetNameCloud string


@description('Azure Region to deploy the Log Analytics Workspace')
param location string = resourceGroup().location

Expand All @@ -25,6 +24,9 @@ param networkSecurityGroupNameCloud string = 'Ag-NSG-Prod'
@description('Name of the Bastion Network Security Group')
param bastionNetworkSecurityGroupName string = 'Ag-NSG-Bastion'

@description('Name of the NAT Gateway')
param natGatewayName string = 'Ag-NatGateway'

var addressPrefixCloud = '10.16.0.0/16'
var subnetAddressPrefixK3s = '10.16.80.0/21'
var subnetAddressPrefixCloud = '10.16.64.0/21'
Expand All @@ -34,7 +36,6 @@ var bastionSubnetRef = '${cloudVirtualNetwork.id}/subnets/${bastionSubnetName}'
var bastionName = 'Ag-Bastion'
var bastionPublicIpAddressName = '${bastionName}-PIP'


var bastionSubnet = [
{
name: 'AzureBastionSubnet'
Expand All @@ -56,6 +57,10 @@ var cloudK3sSubnet = [
networkSecurityGroup: {
id: networkSecurityGroupCloud.id
}
natGateway: {
id: natGateway.id
}
defaultOutboundAccess: false
}
}
]
Expand All @@ -70,11 +75,17 @@ var cloudSubnet = [
networkSecurityGroup: {
id: networkSecurityGroupCloud.id
}
natGateway: deployBastion
? {
id: natGateway.id
}
: null
defaultOutboundAccess: false
}
}
]

resource cloudVirtualNetwork 'Microsoft.Network/virtualNetworks@2022-07-01' = {
resource cloudVirtualNetwork 'Microsoft.Network/virtualNetworks@2024-07-01' = {
name: virtualNetworkNameCloud
location: location
tags: resourceTags
Expand All @@ -85,8 +96,8 @@ resource cloudVirtualNetwork 'Microsoft.Network/virtualNetworks@2022-07-01' = {
]
}
subnets: (deployBastion == false)
? union(cloudK3sSubnet, cloudSubnet)
: union(cloudK3sSubnet, cloudSubnet, bastionSubnet)
? union(cloudK3sSubnet, cloudSubnet)
: union(cloudK3sSubnet, cloudSubnet, bastionSubnet)
//subnets: (deployBastion == false) ? union (cloudAKSDevSubnet,cloudAKSInnerLoopSubnet) : union(cloudAKSDevSubnet,cloudAKSInnerLoopSubnet,bastionSubnet)
}
}
Expand All @@ -105,6 +116,35 @@ resource publicIpAddress 'Microsoft.Network/publicIPAddresses@2023-02-01' = if (
}
}

resource natGatewayPublicIp 'Microsoft.Network/publicIPAddresses@2024-07-01' = {
name: '${natGatewayName}-PIP'
location: location
properties: {
publicIPAllocationMethod: 'Static'
publicIPAddressVersion: 'IPv4'
idleTimeoutInMinutes: 4
}
sku: {
name: 'Standard'
}
}

resource natGateway 'Microsoft.Network/natGateways@2024-07-01' = {
name: natGatewayName
location: location
sku: {
name: 'Standard'
}
properties: {
publicIpAddresses: [
{
id: natGatewayPublicIp.id
}
]
idleTimeoutInMinutes: 4
}
}

resource networkSecurityGroupCloud 'Microsoft.Network/networkSecurityGroups@2023-02-01' = {
name: networkSecurityGroupNameCloud
location: location
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -129,7 +129,7 @@ resource publicIpAddress 'Microsoft.Network/publicIpAddresses@2023-02-01' = if (
idleTimeoutInMinutes: 4
}
sku: {
name: 'Basic'
name: 'Standard'
}
}

Expand Down
4 changes: 4 additions & 0 deletions azure_jumpstart_ag/contoso_supermarket/bicep/main.bicep
Original file line number Diff line number Diff line change
Expand Up @@ -83,6 +83,9 @@ param rdpPort string = '3389'
@description('Enable automatic logon into Virtual Machine')
param vmAutologon bool = true

@description('Name of the NAT Gateway')
param natGatewayName string = 'Ag-NatGateway-${namingGuid}'

@description('The agora scenario to be deployed')
param scenario string = 'contoso_supermarket'

Expand Down Expand Up @@ -112,6 +115,7 @@ module networkDeployment 'mgmt/network.bicep' = {
subnetNameCloudAksInnerLoop: subnetNameCloudAksInnerLoop
deployBastion: deployBastion
location: location
natGatewayName: natGatewayName
}
}

Expand Down
Loading