You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: extensions/README.md
+1-1
Original file line number
Diff line number
Diff line change
@@ -7,7 +7,7 @@ The extensions below explore advanced features of AKS (Kubernetes) and additiona
7
7
8
8
-[Inject Azure Key Vault Secrets using AAD Pod Identity](./use-pod-identity)
9
9
10
-
In this sub-project, secrets stored in Azure **Key Vault** are fetched and mounted on a volume inside the Claims Web API application container image. The project makes use of two open source projects - [AAD Pod Identity](https://github.com/Azure/aad-pod-identity) and [Azure Key Vault Kubernetes Flex Volume](https://github.com/Azure/kubernetes-keyvault-flexvol). Storing application secrets in Azure Key Vault provides a secure alternative to storing them in standard Kubernetes *Secret* API objects on the etcd server. The secrets stored in Key Vault never come to reside on the nodes and are directly mounted as a volume on a local directory within the container.
10
+
In this sub-project, secrets stored in Azure **Key Vault** are fetched and injected inside the Claims Web API application container at runtime. The project makes use of two open source projects - [AAD Pod Identity](https://github.com/Azure/aad-pod-identity) and [Azure Key Vault Kubernetes Flex Volume](https://github.com/Azure/kubernetes-keyvault-flexvol). Storing application secrets in Azure Key Vault provides a secure alternative to storing them in standard Kubernetes *Secret* API objects on the etcd server. The secrets stored in Key Vault never come to reside on the nodes and are directly injected into the application container at runtime.
11
11
12
12
-[Explore advanced features of **Istio** Service Mesh](./istio-service-mesh)
Copy file name to clipboardExpand all lines: extensions/istio-service-mesh/README.md
+64-7
Original file line number
Diff line number
Diff line change
@@ -38,7 +38,7 @@ In this project, we will reuse the Claims Web API microservice and Azure Functio
38
38
Refer to the architecture diagram [here](https://istio.io/docs/ops/deployment/architecture/)
39
39
40
40
**Prerequisites:**
41
-
1. Readers are required to complete Sections A thru I in the [parent project](https://github.com/ganrad/aks-aspnet-sqldb-rest) before proceeding with the hands-on labs in this project.
41
+
1. Readers are required to complete Sections **A** thru **I** in the [parent project](https://github.com/ganrad/aks-aspnet-sqldb-rest) before proceeding with the hands-on labs in this project.
42
42
43
43
Readers are advised to go thru the following on-line resources before proceeding with the hands-on sections.
44
44
-[Istio Service Mesh](https://istio.io/docs/concepts/what-is-istio/)
@@ -105,8 +105,8 @@ Login (ssh) to the Linux VM (Bastion Host) via a terminal window. Follow the st
105
105
#
106
106
```
107
107
108
-
## B. Deploy the Claims API microservice on Istio
109
-
**Approx. time to complete this section: 10 minutes**
108
+
## B. Deploy the Claims API microservice on Istio Service Mesh
109
+
**Approx. time to complete this section: 20 minutes**
110
110
111
111
Before proceeding, make sure you are logged into the Linux VM via a terminal window.
112
112
@@ -115,18 +115,75 @@ Follow the steps below to deploy the Claims API microservice application in a ne
115
115
1. Create an Istio enabled namespace.
116
116
117
117
```bash
118
-
# Create the k8s namespace 'dev-exp-istio`.
119
-
$ kubectl create namespace dev-exp-istio
118
+
# Create the k8s namespace 'dev-claims-istio`.
119
+
$ kubectl create namespace dev-claims-istio
120
120
#
121
121
# Label the namespace so that the sidecar container (Envoy proxy) is automatically injected
Edit the Helm chart values (`./extensions/istio-service-mesh/values.yaml`) file and specify correct values for the application configuration parameters. Refer to the table below.
130
+
131
+
Parameter Name | Value | Description
132
+
-------------- | ----- | -----------
133
+
image.repository | xyz.azurecr.io/claims-api | Specify the name of the ACR instance
134
+
image.tag-v1 | 1..N | **Build ID number** of version **v1** of Claims API microservice
135
+
image.tag-v2 | 1..N | **Build ID number** of version **v2** of Claims API microservice
136
+
image.tag-v3 | 1..N | **Build ID number** of version **v3** of Claims API microservice
137
+
sqldb.connectionString | NA | Specify the Azure SQL Database connection string value
138
+
139
+
3. Deploy the Claims API microservice application.
140
+
141
+
Use Helm to deploy the Claims API microservice in the **dev-claims-istio** namespace. Execute the CLI commands as shown in the snippet below.
142
+
143
+
```bash
144
+
# Switch to the './extensions/istio-service-mesh' directory
4. Confirm the service is defined and the Claims API pod is running.
151
+
152
+
```bash
153
+
# List the service
154
+
$ kubectl get svc -n dev-claims-istio
155
+
#
156
+
# Confirm the claims-api pod is up and running
157
+
$ kubectl get pods -n dev-claims-istio
124
158
#
125
159
```
126
160
127
-
2. Deploy the Claims API microservice application.
161
+
5. Define the ingress gateway for the Claims API microservice
162
+
163
+
To access the Claims API REST end-points from outside the AKS cluster, an **Ingress Gateway** resource has to be created on the cluster. Also, to route the request from the gateway to the service end-point, an **Virtual Service** resource has to be deployed.
128
164
129
165
```bash
166
+
# Deploy the ingress gateway and the virtual service for the Claims API microservice
0 commit comments