Skip to content

Commit

Permalink
Updated Documentation and the arm template.
Browse files Browse the repository at this point in the history
  • Loading branch information
danielscholl committed Feb 15, 2024
1 parent 9e8f9ba commit 9ed4e36
Show file tree
Hide file tree
Showing 4 changed files with 28 additions and 62 deletions.
13 changes: 13 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -160,6 +160,19 @@ azd env set SOFTWARE_BRANCH main
Customize your resources by enabling these optional features based on your specific requirements:


#### Feature: Vnet Injection

__Purpose:__ Enables a bring your own network capability.

__Details:__ Typically, internal solutions require a preconfigured network due to possible S2S vpn configurations or a Hub Spoke Network design.

__How To Enable:__

```bash
azd env set ENABLE_VNET_INJECTION true
```


#### Feature: Pod Subnet

__Purpose:__ Enhances network configuration for Kubernetes Pods.
Expand Down
4 changes: 2 additions & 2 deletions azuredeploy.json
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
"_generator": {
"name": "bicep",
"version": "0.25.53.49325",
"templateHash": "16780572494206616947"
"templateHash": "6679581905780127100"
}
},
"definitions": {
Expand Down Expand Up @@ -19436,7 +19436,7 @@
"serviceBlade": {
"type": "Microsoft.Resources/deployments",
"apiVersion": "2022-09-01",
"name": "service",
"name": "service-blade",
"properties": {
"expressionEvaluationOptions": {
"scope": "inner"
Expand Down
10 changes: 6 additions & 4 deletions bicep/main.bicep
Original file line number Diff line number Diff line change
Expand Up @@ -387,11 +387,8 @@ param clusterSoftwareProperties softwareType = {
@description('Optional: Specify the AD Users and/or Groups that can manage the cluster.')
param clusterAdminIds array = []




module serviceBlade 'modules/blade_service.bicep' = {
name: 'service'
name: 'service-blade'
params: {
bladeConfig: {
sectionName: 'serviceblade'
Expand Down Expand Up @@ -424,6 +421,11 @@ module serviceBlade 'modules/blade_service.bicep' = {
softwareBranch: clusterSoftwareProperties.branch
softwareRepository: clusterSoftwareProperties.repository
}
dependsOn: [
networkBlade
commonBlade
partitionBlade
]
}

// //ACSCII Art link : https://textkool.com/en/ascii-art-generator?hl=default&vl=default&font=Star%20Wars&text=changeme
63 changes: 7 additions & 56 deletions docs/vnet-injection.md
Original file line number Diff line number Diff line change
@@ -1,12 +1,13 @@
# Virtual Network Injection

The provided custom deployment solution is a sample of how to enable and use virtual network (VNet) injection, allowing the creation of a network prior to deploying the solution. This is particularly beneficial in organizations with specific network security policies. Below is a tutorial that shows an example of a simple deployment leveraging network injection.
The provided custom deployment solution is a sample of how to leverage the virtual network (VNet) injection feature. This allows for the integration of the solution into a prexisting network design and ensuring the solution is on an internal network.

Check warning on line 3 in docs/vnet-injection.md

View workflow job for this annotation

GitHub Actions / SpellCheck

"prexisting" should be "preexisting".


## Planning

Network planning is crucial when working with AKS and a workload for AKS. This is an advanced topic and the assumption when bringing your own network is that it has been planned properly.
Network planning is crucial when working with AKS on a prexexisting network solution. This is an advanced topic and the assumption when bringing your own network is that it has been planned properly in advance.

Several resources exist that can help on planning networks for AKS and to understand the networking concepts of AKS.
Several resources exist that can help on planning networks for AKS and to understand the networking concepts for AKS.

- [AKS Network Topology and Connectivity](https://learn.microsoft.com/en-us/azure/cloud-adoption-framework/scenarios/app-platform/aks/network-topology-and-connectivity)

Expand Down Expand Up @@ -36,7 +37,7 @@ The default implementation uses a simple Virtual Network with a Kubenet plugin.

__Custom Solution__

This custom configuration tutorial will use a pre-created network along with a dedicated Pod Subnet which activates the `Azure CNI` network plugin.
This custom configuration tutorial will use a pre-created network along with a dedicated Pod Subnet which activates the [Azure CNI for dynamic IP alocation](https://learn.microsoft.com/en-us/azure/aks/configure-azure-cni-dynamic-ip-allocation) network configuration.

Check warning on line 40 in docs/vnet-injection.md

View workflow job for this annotation

GitHub Actions / SpellCheck

"alocation" should be "allocation".

Things to considered when planning.

Expand Down Expand Up @@ -172,56 +173,6 @@ azd auth login
azd init -e custom
```

__Create Parameters__

```json
cat <<EOF > bicep/main.parameters.json
{
"\$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentParameters.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"applicationClientId": {
"value": "\${AZURE_CLIENT_ID}"
},
"enablePodSubnet": {
"value": "\${ENABLE_POD_SUBNET}"
},
"softwareRepository": {
"value": "\${SOFTWARE_REPOSITORY}"
},
"softwareBranch": {
"value": "\${SOFTWARE_BRANCH}"
},
"virtualNetworkNewOrExisting": {
"value": "Existing"
},
"virtualNetworkResourceGroup": {
"value": "\${VIRTUAL_NETWORK_GROUP}"
},
"virtualNetworkName": {
"value": "\${VIRTUAL_NETWORK_NAME}"
},
"virtualNetworkAddressPrefix": {
"value": "\${VIRTUAL_NETWORK_PREFIX}"
},
"aksSubnetName": {
"value": "\${AKS_SUBNET_NAME}"
},
"aksSubnetAddressPrefix": {
"value": "\${AKS_SUBNET_PREFIX}"
},
"podSubnetName": {
"value": "\${POD_SUBNET_NAME}"
},
"podSubnetAddressPrefix": {
"value": "\${POD_SUBNET_PREFIX}"
}
}
}
EOF

```

__Configure Environment Variables__

Set the necessary environment variables for your deployment:
Expand All @@ -235,8 +186,9 @@ azd env set AZURE_CLIENT_ID $(az ad app list --display-name $APP_NAME --query "[
azd env set SOFTWARE_REPOSITORY https://github.com/azure/osdu-developer
azd env set SOFTWARE_BRANCH main

# enable_pod_subnet
# enable_feature_toggles
azd env set ENABLE_POD_SUBNET true
azd env set ENABLE_VNET_INJECTION true

# define_network_configuration
azd env set VIRTUAL_NETWORK_GROUP $NETWORK_GROUP
Expand All @@ -256,4 +208,3 @@ Initiate the deployment using the following command:
# provision_solution
azd provision
```

0 comments on commit 9ed4e36

Please sign in to comment.