Skip to content

Commit a53eb90

Browse files
committed
make updates for clarity
1 parent 3f15cee commit a53eb90

File tree

3 files changed

+45
-39
lines changed

3 files changed

+45
-39
lines changed

articles/aks/istio-about.md

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -22,17 +22,17 @@ Service-to-service communication is what makes a distributed application possibl
2222

2323
## What is Istio?
2424

25-
Istio is an open source service mesh that layers transparently onto existing distributed applications. Istio’s powerful features provide a uniform and more efficient way to secure, connect, and monitor services. Istio enables load balancing, service-to-service authentication, and monitoring – with few or no service code changes. Its powerful control plane brings vital features, including:
25+
Istio is an open-source service mesh that layers transparently onto existing distributed applications. Istio’s powerful features provide a uniform and more efficient way to secure, connect, and monitor services. Istio enables load balancing, service-to-service authentication, and monitoring – with few or no service code changes. Its powerful control plane brings vital features, including:
2626

27-
* Secure service-to-service communication in a cluster with TLS encryption, strong identity-based authentication and authorization
28-
* Automatic load balancing for HTTP, gRPC, WebSocket, and TCP traffic
29-
* Fine-grained control of traffic behavior with rich routing rules, retries, failovers, and fault injection
30-
* A pluggable policy layer and configuration API supporting access controls, rate limits and quotas
31-
* Automatic metrics, logs, and traces for all traffic within a cluster, including cluster ingress and egress
27+
* Secure service-to-service communication in a cluster with TLS encryption, strong identity-based authentication and authorization.
28+
* Automatic load balancing for HTTP, gRPC, WebSocket, and TCP traffic.
29+
* Fine-grained control of traffic behavior with rich routing rules, retries, failovers, and fault injection.
30+
* A pluggable policy layer and configuration API supporting access controls, rate limits and quotas.
31+
* Automatic metrics, logs, and traces for all traffic within a cluster, including cluster ingress and egress.
3232

33-
## How is the add-on different from open source Istio?
33+
## How is the add-on different from open-source Istio?
3434

35-
This service mesh add-on uses and builds on top of open source Istio. The add-on flavor provides the following extra benefits:
35+
This service mesh add-on uses and builds on top of open-source Istio. The add-on flavor provides the following extra benefits:
3636

3737
* Istio versions are tested and verified to be compatible with supported versions of Azure Kubernetes Service.
3838
* Scaling of Istio control plane configured and handled by Microsoft.

articles/aks/istio-deploy-addon.md

Lines changed: 29 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -13,45 +13,44 @@ This article shows you how to install the Istio-based service mesh add-on for Az
1313

1414
For more information on Istio and the service mesh add-on, see [Istio-based service mesh add-on for Azure Kubernetes Service][istio-about].
1515

16+
[!INCLUDE [preview features callout](includes/preview/preview-callout.md)]
17+
1618
## Before you begin
1719

18-
You need the Azure CLI version 2.44.0 or later installed and configured. Run `az --version` to find the version. If you need to install or upgrade, see [Install Azure CLI][install-azure-cli].
20+
### Set environment variables:
1921

20-
Set environment variables:
22+
```bash
23+
export CLUSTER=<cluster-name>
24+
export RESOURCE_GROUP=<resource-group-name>
25+
export LOCATION=<location>
26+
```
2127

22-
```bash
23-
export CLUSTER=<cluster-name>
24-
export RESOURCE_GROUP=<resource-group-name>
25-
export LOCATION=<location>
26-
```
28+
### Verify Azure CLI and aks-preview extension versions
29+
* You need the Azure CLI version 2.44.0 or later installed. Run `az --version` to find the version. If you need to install or upgrade, see [Install Azure CLI][install-azure-cli].
30+
* You need the `aks-preview` Azure CLI extension of version 0.5.133 or later installed. Run `az --version` to find the version.
2731

28-
## Install the aks-preview Azure CLI extension
29-
30-
You need the `aks-preview` Azure CLI extension of version 0.5.133 or later installed and configured. Run `az --version` to find the version.
31-
32-
[!INCLUDE [preview features callout](includes/preview/preview-callout.md)]
3332

3433
To install the aks-preview extension, run the following command:
3534

36-
```azurecli
35+
```azurecli-interactive
3736
az extension add --name aks-preview
3837
```
3938

4039
Run the following command to update to the latest version of the extension released:
4140

42-
```azurecli
41+
```azurecli-interactive
4342
az extension update --name aks-preview
4443
```
4544

46-
## Register the 'AzureServiceMeshPreview' feature flag
45+
### Register the _AzureServiceMeshPreview_ feature flag
4746

48-
Register the `AzureServiceMeshPreview` feature flag by using the [az feature register][az-feature-register] command, as shown in the following example:
47+
Register the `AzureServiceMeshPreview` feature flag by using the [az feature register][az-feature-register] command below:
4948

5049
```azurecli-interactive
5150
az feature register --namespace "Microsoft.ContainerService" --name "AzureServiceMeshPreview"
5251
```
5352

54-
It takes a few minutes for the status to show *Registered*. Verify the registration status by using the [az feature show][az-feature-show] command:
53+
It takes a few minutes for the feature to register. Verify the registration status by using the [az feature show][az-feature-show] command:
5554

5655
```azurecli-interactive
5756
az feature show --namespace "Microsoft.ContainerService" --name "AzureServiceMeshPreview"
@@ -65,7 +64,7 @@ az provider register --namespace Microsoft.ContainerService
6564

6665
## Install Istio add-on at the time of cluster creation
6766

68-
To install the Istio add-on when creating the cluster, use `--enable-asm` or `--enable-azure-service-mesh` parameters.
67+
To install the Istio add-on when creating the cluster, use the `--enable-azure-service-mesh` or`--enable-asm` parameter.
6968

7069
```azurecli-interactive
7170
az group create --name ${RESOURCE_GROUP} --location ${LOCATION}
@@ -82,14 +81,14 @@ The following example enables Istio add-on for an existing AKS cluster:
8281

8382
> [!IMPORTANT]
8483
> You can't enable the Istio add-on on an existing cluster if an OSM add-on is already on your cluster. [Uninstall OSM add-on on your cluster][uninstall-osm-addon] before enabling the Istio add-on.
85-
> You can't enable the Istio add-on on an existing cluster if an OSM add-on is already on your cluster. Uninstall the OSM add-on before installing the Istio add-on. For more information, see [uninstall the OSM add-on from your AKS cluster][uninstall-osm-addon].
84+
> For more information, see [uninstall the OSM add-on from your AKS cluster][uninstall-osm-addon].
8685
> Istio add-on can only be enabled on AKS clusters of version >= 1.23.
8786
8887
```azurecli-interactive
8988
az aks mesh enable --resource-group ${RESOURCE_GROUP} --name ${CLUSTER}
9089
```
9190

92-
## Verify add-on was installed successfully
91+
## Verify successful installation
9392

9493
To verify the Istio add-on is installed on your cluster, run the following command:
9594

@@ -135,7 +134,7 @@ kubectl label namespace default istio.io/rev=asm-1-17
135134
136135
## Deploy sample application
137136

138-
Use `kubectl apply` to deploy sample application on the cluster:
137+
Use `kubectl apply` to deploy the sample application on the cluster:
139138

140139
```bash
141140
kubectl apply -f https://raw.githubusercontent.com/istio/istio/release-1.17/samples/bookinfo/platform/kube/bookinfo.yaml
@@ -194,8 +193,9 @@ reviews-v3-7dbcdcbc56-m8dph 2/2 Running 0 2m41s
194193
```
195194

196195
> [!NOTE]
197-
> Each pod has two containers, one of which is the envoy sidecar injected by Istio and the other is the application container.
196+
> Each pod has two containers, one of which is the Envoy sidecar injected by Istio and the other is the application container.
198197
198+
To test this sample application against ingress, check out [next-steps](#next-steps).
199199

200200
## Delete resources
201201

@@ -214,7 +214,13 @@ az aks mesh disable --resource-group ${RESOURCE_GROUP} --name ${CLUSTER}
214214
> [!CAUTION]
215215
> Disabling the service mesh addon will completely remove the Istio control plane from the cluster.
216216
217-
Use `az group delete` to delete your cluster and the associated resources. For example:
217+
Note that Istio CRDs will not be deleted by default. To clean up CRDs, use:
218+
219+
```azurecli-interactive
220+
kubectl delete crd $(kubectl get crd -A | grep "istio.io" | awk '{print $1}')
221+
```
222+
223+
Use `az group delete` to delete your cluster and the associated resources:
218224

219225
```azurecli-interactive
220226
az group delete --name ${RESOURCE_GROUP} --yes --no-wait

articles/aks/istio-deploy-ingress.md

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -15,11 +15,11 @@ This article shows you how to deploy external or internal ingresses for Istio se
1515

1616
## Prerequisites
1717

18-
This guide assumes an existing AKS cluster with the Istio add-on enabled and an application deployed. For more information on enabling the Istio add-on in your cluster and deploying a sample application, see [Deploy Istio-based service mesh add-on for AKS][istio-deploy-addon].
18+
This guide assumes you followed the [documentation][istio-deploy-addon] to enable the Istio add-on on an AKS cluster, deploy a sample application and set environment variables.
1919

2020
## Enable external ingress gateway
2121

22-
Use `az aks mesh enable-ingress-gateway` to enable an externally accessible Istio ingress on your AKS cluster. For example:
22+
Use `az aks mesh enable-ingress-gateway` to enable an externally accessible Istio ingress on your AKS cluster:
2323

2424
```azurecli-interactive
2525
az aks mesh enable-ingress-gateway --resource-group $RESOURCE_GROUP --name $CLUSTER --ingress-gateway-type external
@@ -31,14 +31,14 @@ Use `kubectl get svc` to check the service mapped to the ingress gateway:
3131
kubectl get svc aks-istio-ingressgateway-external -n aks-istio-ingress
3232
```
3333

34-
Check external IP address of the service. For example:
34+
Check the external IP address of the service in the output:
3535

3636
```
3737
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
3838
aks-istio-ingressgateway-external LoadBalancer 10.0.10.249 <EXTERNAL_IP> 15021:30705/TCP,80:32444/TCP,443:31728/TCP 4m21s
3939
```
4040

41-
Applications aren't accessible from outside the cluster after enabling the ingress gateway. To make an application accessible, map the deployment's ingress to the Istio Ingress Gate. For example, the following manifest creates this mapping for the sample application:
41+
Applications aren't accessible from outside the cluster by default after enabling the ingress gateway. To make an application accessible, map the sample deployment's ingress to the Istio ingress gateway using the following manifest:
4242

4343
```bash
4444
kubectl apply -f - <<EOF
@@ -112,7 +112,7 @@ curl -s "http://${GATEWAY_URL_EXTERNAL}/productpage" | grep -o "<title>.*</title
112112

113113
## Enable internal ingress gateway
114114

115-
Use `az aks mesh enable-ingress-gateway` to enable an internal Istio ingress on your AKS cluster. For example:
115+
Use `az aks mesh enable-ingress-gateway` to enable an internal Istio ingress on your AKS cluster:
116116

117117
```azurecli-interactive
118118
az aks mesh enable-ingress-gateway --resource-group $RESOURCE_GROUP --name $CLUSTER --ingress-gateway-type internal
@@ -132,7 +132,7 @@ NAME TYPE CLUSTER-IP EXTERNAL-IP
132132
aks-istio-ingressgateway-internal LoadBalancer 10.0.182.240 <IP> 15021:30764/TCP,80:32186/TCP,443:31713/TCP 87s
133133
```
134134

135-
Applications aren't mapped to the Istio Ingress Gateway after enabling the ingress gateway. The following manifest maps the deployment's ingress to the Istio Ingress Gateway. For example, the following manifest creates this mapping for the sample application:
135+
Applications aren't mapped to the Istio ingress gateway after enabling the ingress gateway. Use the following manifest to map the sample deployment's ingress to the Istio ingress gateway:
136136

137137
```bash
138138
kubectl apply -f - <<EOF
@@ -209,15 +209,15 @@ Use `kubectl exec` to confirm application is accessible from inside the cluster'
209209
kubectl exec "$(kubectl get pod -l app=ratings -o jsonpath='{.items[0].metadata.name}')" -c ratings -- curl -sS "http://$GATEWAY_URL_INTERNAL/productpage" | grep -o "<title>.*</title>"
210210
```
211211

212-
Confirm you see the sample application's product page is accessible. For example:
212+
Confirm that the sample application's product page is accessible. The expected output is:
213213

214214
```html
215215
<title>Simple Bookstore App</title>
216216
```
217217

218218
## Delete resources
219219

220-
If you want to clean up the Istio service mesh and the ingresses while leaving behind the cluster, run the following command:
220+
If you want to clean up the Istio service mesh and the ingresses (leaving behind the cluster), run the following command:
221221

222222
```azurecli-interactive
223223
az aks mesh disable --resource-group ${RESOURCE_GROUP} --name ${CLUSTER}

0 commit comments

Comments
 (0)