Skip to content

Commit 7872333

Browse files
authored
Merge pull request #264253 from KarlErickson/karler-fixes
miscellaneous fixes
2 parents 8a7de0b + 0c95f6b commit 7872333

File tree

66 files changed

+55
-55
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

66 files changed

+55
-55
lines changed

articles/spring-apps/concept-understand-app-and-deployment.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ ms.custom: devx-track-java, devx-track-extended-java, event-tier1-build-2022
2020

2121
*App* and *Deployment* are the two key concepts in the resource model of Azure Spring Apps. In Azure Spring Apps, an *App* is an abstraction of one business app. One version of code or binary deployed as the *App* runs in a *Deployment*. Apps run in an *Azure Spring Apps service instance*, or simply *service instance*, as shown next.
2222

23-
:::image type="content" source="./media/spring-cloud-app-and-deployment/app-deployment-rev.png" alt-text="Diagram showing the relationship between the apps and deployments." border="false":::
23+
:::image type="content" source="media/concept-understand-app-and-deployment/app-deployment-rev.png" alt-text="Diagram showing the relationship between the apps and deployments." border="false":::
2424

2525
You can have multiple service instances within a single Azure subscription, but the Azure Spring Apps Service is easiest to use when all of the Apps that make up a business app reside within a single service instance. One reason is that the Apps are likely to communicate with each other. They can easily do that by using Eureka service registry in the service instance.
2626

articles/spring-apps/concepts-blue-green-deployment-strategies.md

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -30,27 +30,27 @@ Suppose your application has two deployments: `deployment1` and `deployment2`. C
3030

3131
This makes `deployment2` the staging deployment. Thus, when the Continuous Delivery (CD) pipeline is ready to run, it deploys the next version of the app, version `v4`, onto the staging deployment `deployment2`.
3232

33-
![Two deployments: deployment1 receives production traffic](media/spring-cloud-blue-green-patterns/alternating-deployments-1.png)
33+
![Two deployments: deployment1 receives production traffic](media/concepts-blue-green-deployment-strategies/alternating-deployments-1.png)
3434

3535
After `v4` has started up on `deployment2`, you can run automated and manual tests against it through a private test endpoint to ensure `v4` meets all expectations.
3636

37-
![V4 is now deployed on deployment2 and undergoes testing](media/spring-cloud-blue-green-patterns/alternating-deployments-2.png)
37+
![V4 is now deployed on deployment2 and undergoes testing](media/concepts-blue-green-deployment-strategies/alternating-deployments-2.png)
3838

3939
When you have confidence in `v4`, you can set `deployment2` as the production deployment so that it receives all production traffic. `v3` will remain running on `deployment1` in case you discover a critical issue that requires rolling back.
4040

41-
![V4 on deployment2 now receives production traffic](media/spring-cloud-blue-green-patterns/alternating-deployments-3.png)
41+
![V4 on deployment2 now receives production traffic](media/concepts-blue-green-deployment-strategies/alternating-deployments-3.png)
4242

4343
Now, `deployment1` is the staging deployment. So the next run of the deployment pipeline deploys onto `deployment1`.
4444

45-
![V5 deployed on deployment1](media/spring-cloud-blue-green-patterns/alternating-deployments-4.png)
45+
![V5 deployed on deployment1](media/concepts-blue-green-deployment-strategies/alternating-deployments-4.png)
4646

4747
You can now test `V5` on `deployment1`'s private test endpoint.
4848

49-
![V5 tested on deployment1](media/spring-cloud-blue-green-patterns/alternating-deployments-5.png)
49+
![V5 tested on deployment1](media/concepts-blue-green-deployment-strategies/alternating-deployments-5.png)
5050

5151
Finally, after `v5` meets all your expectations, you set `deployment1` as the production deployment once again, so that `v5` receives all production traffic.
5252

53-
![V5 receives traffic on deployment1](media/spring-cloud-blue-green-patterns/alternating-deployments-6.png)
53+
![V5 receives traffic on deployment1](media/concepts-blue-green-deployment-strategies/alternating-deployments-6.png)
5454

5555
### Tradeoffs of the alternating deployments approach
5656

@@ -64,7 +64,7 @@ The staging deployment always remains running, and thus consuming resources of t
6464

6565
Suppose in the above application, the release pipeline requires manual approval before each new version of the application can receive production traffic. This creates the risk that while one version (`v6`) awaits manual approval on the staging deployment, the deployment pipeline will run again and overwrite it with a newer version (`v7`). Then, when the approval for `v6` is granted, the pipeline that deployed `v6` will set the staging deployment as production. But now it will be the unapproved `v7`, not the approved `v6`, that is deployed on that deployment and receives traffic.
6666

67-
![The approval race condition](media/spring-cloud-blue-green-patterns/alternating-deployments-race-condition.png)
67+
![The approval race condition](media/concepts-blue-green-deployment-strategies/alternating-deployments-race-condition.png)
6868

6969
You may be able to prevent the race condition by ensuring that the deployment flow for one version can't begin until the deployment flow for all previous versions is complete or aborted. Another way to prevent the approval race condition is to use the Named Deployments approach described below.
7070

@@ -74,15 +74,15 @@ In the named deployments approach, a new deployment is created for each new vers
7474

7575
In the illustration below, version `v5` is running on the deployment `deployment-v5`. The deployment name now contains the version because the deployment was created specifically for this version. There's no other deployment at the outset. Now, to deploy version `v6`, the deployment pipeline creates a new deployment `deployment-v6` and deploys app version `v6` there.
7676

77-
![Deploying new version on a named deployment](media/spring-cloud-blue-green-patterns/named-deployment-1.png)
77+
![Deploying new version on a named deployment](media/concepts-blue-green-deployment-strategies/named-deployment-1.png)
7878

7979
There's no risk of another version being deployed in parallel. First, Azure Spring Apps doesn't allow the creation of a third deployment while two deployments already exist. Second, even if it was possible to have more than two deployments, each deployment is identified by the version of the application it contains. Thus, the pipeline orchestrating the deployment of `v6` would only attempt to set `deployment-v6` as the production deployment.
8080

81-
![New version receives production traffic named deployment](media/spring-cloud-blue-green-patterns/named-deployment-2.png)
81+
![New version receives production traffic named deployment](media/concepts-blue-green-deployment-strategies/named-deployment-2.png)
8282

8383
After the deployment created for the new version receives production traffic, you'll need to remove the deployment containing the previous version to make room for future deployments. You may wish to postpone by some number of minutes or hours so you can roll back to the previous version if you discover a critical issue in the new version.
8484

85-
![After a fallback period, deleting the previous deployment](media/spring-cloud-blue-green-patterns/named-deployment-3.png)
85+
![After a fallback period, deleting the previous deployment](media/concepts-blue-green-deployment-strategies/named-deployment-3.png)
8686

8787
### Tradeoffs of the named deployments approach
8888

articles/spring-apps/how-to-cicd.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -119,7 +119,7 @@ To deploy using a pipeline, follow these steps:
119119

120120
Your pipeline settings should match the following image.
121121

122-
:::image type="content" source="media/spring-cloud-how-to-cicd/pipeline-task-setting.jpg" alt-text="Screenshot of pipeline settings." lightbox="media/spring-cloud-how-to-cicd/pipeline-task-setting.jpg":::
122+
:::image type="content" source="media/how-to-cicd/pipeline-task-setting.jpg" alt-text="Screenshot of pipeline settings." lightbox="media/how-to-cicd/pipeline-task-setting.jpg":::
123123

124124
You can also build and deploy your projects using following pipeline template. This example first defines a Maven task to build the application, followed by a second task that deploys the JAR file using the Azure Spring Apps task for Azure Pipelines.
125125

@@ -189,7 +189,7 @@ The following steps show you how to enable a blue-green deployment from the **Re
189189
1. Add a new pipeline, and select **Empty job** to create a job.
190190
1. Under **Stages** select the line **1 job, 0 task**
191191

192-
:::image type="content" source="media/spring-cloud-how-to-cicd/create-new-job.jpg" alt-text="Screenshot of where to select to add a task to a job." lightbox="media/spring-cloud-how-to-cicd/create-new-job.jpg":::
192+
:::image type="content" source="media/how-to-cicd/create-new-job.jpg" alt-text="Screenshot of where to select to add a task to a job." lightbox="media/how-to-cicd/create-new-job.jpg":::
193193

194194
1. Select the **+** to add a task to the job.
195195
1. Search for the **Azure Spring Apps** template, then select **Add** to add the task to the job.
@@ -205,7 +205,7 @@ The following steps show you how to enable a blue-green deployment from the **Re
205205
1. Navigate to the **Azure Spring Apps Deploy** task in **Stage 1**, then select the ellipsis next to **Package or folder**.
206206
1. Select *spring-boot-complete-0.0.1-SNAPSHOT.jar* in the dialog, then select **OK**.
207207

208-
:::image type="content" source="media/spring-cloud-how-to-cicd/change-artifact-path.jpg" alt-text="Screenshot of the 'Select a file or folder' dialog box." lightbox="media/spring-cloud-how-to-cicd/change-artifact-path.jpg":::
208+
:::image type="content" source="media/how-to-cicd/change-artifact-path.jpg" alt-text="Screenshot of the 'Select a file or folder' dialog box." lightbox="media/how-to-cicd/change-artifact-path.jpg":::
209209

210210
1. Select the **+** to add another **Azure Spring Apps** task to the job.
211211
1. Change the action to **Set Production Deployment**.

articles/spring-apps/how-to-configure-enterprise-spring-cloud-gateway.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -390,7 +390,7 @@ The following list shows the options available for Autoscale demand management:
390390

391391
On the Azure portal, choose how you want to scale. The following screenshot shows the **Custom autoscale** option and mode settings:
392392

393-
:::image type="content" source="media/spring-cloud-autoscale/custom-autoscale.png" alt-text="Screenshot of the Azure portal that shows the Autoscale setting page with the Custom autoscale option highlighted." lightbox="media/spring-cloud-autoscale/custom-autoscale.png":::
393+
:::image type="content" source="media/how-to-configure-enterprise-spring-cloud-gateway/custom-autoscale.png" alt-text="Screenshot of the Azure portal that shows the Autoscale setting page with the Custom autoscale option highlighted." lightbox="media/how-to-configure-enterprise-spring-cloud-gateway/custom-autoscale.png":::
394394

395395
#### [Azure CLI](#tab/Azure-CLI)
396396

articles/spring-apps/how-to-enable-ingress-to-app-tls.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ This article describes secure communications in Azure Spring Apps. The article a
2323

2424
The following picture shows the overall secure communication support in Azure Spring Apps.
2525

26-
:::image type="content" source="media/enable-end-to-end-tls/secured-tls.png" alt-text="Screenshot of secured TLS flow in Azure Spring Apps." border="false":::
26+
:::image type="content" source="media/how-to-enable-ingress-to-app-tls/secured-tls.png" alt-text="Screenshot of secured TLS flow in Azure Spring Apps." border="false" lightbox="media/how-to-enable-ingress-to-app-tls/secured-tls.png":::
2727

2828
## Secure communication model within Azure Spring Apps
2929

@@ -78,7 +78,7 @@ To enable ingress-to-app TLS in the [Azure portal](https://portal.azure.com/), f
7878
3. Select **Ingress-to-app TLS**.
7979
4. Switch **Ingress-to-app TLS** to *Yes*.
8080

81-
:::image type="content" source="media/enable-end-to-end-tls/enable-i2a-tls.png" alt-text="Screenshot of the Azure portal that shows the Ingress-to-app TLS page and control." lightbox="media/enable-end-to-end-tls/enable-i2a-tls.png":::
81+
:::image type="content" source="media/how-to-enable-ingress-to-app-tls/enable-i2a-tls.png" alt-text="Screenshot of the Azure portal that shows the Ingress-to-app TLS page and control." lightbox="media/how-to-enable-ingress-to-app-tls/enable-i2a-tls.png":::
8282

8383
### Verify ingress-to-app TLS status
8484

articles/spring-apps/how-to-integrate-azure-load-balancers.md

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -50,9 +50,9 @@ Add endpoints in traffic manager:
5050
1. Input fully qualified domain name (FQDN) of each Azure Spring Apps public endpoint.
5151
1. Select **OK**.
5252

53-
:::image type="content" source="media/spring-cloud-load-balancers/traffic-manager-1.png" alt-text="Screenshot of the Azure portal that shows the Add endpoint page with an eastus FQDN with Priority 1." lightbox="media/spring-cloud-load-balancers/traffic-manager-1.png":::
53+
:::image type="content" source="media/how-to-integrate-azure-load-balancers/traffic-manager-1.png" alt-text="Screenshot of the Azure portal that shows the Add endpoint page with an eastus FQDN with Priority 1." lightbox="media/how-to-integrate-azure-load-balancers/traffic-manager-1.png":::
5454

55-
:::image type="content" source="media/spring-cloud-load-balancers/traffic-manager-2.png" alt-text="Screenshot of the Azure portal that shows the Add endpoint page with a westus FQDN with Priority 2." lightbox="media/spring-cloud-load-balancers/traffic-manager-2.png":::
55+
:::image type="content" source="media/how-to-integrate-azure-load-balancers/traffic-manager-2.png" alt-text="Screenshot of the Azure portal that shows the Add endpoint page with a westus FQDN with Priority 2." lightbox="media/how-to-integrate-azure-load-balancers/traffic-manager-2.png":::
5656

5757
### Configure Custom Domain
5858

@@ -69,22 +69,22 @@ To integrate with Azure Spring Apps service, complete the following configuratio
6969
1. Specify **Target type** as *IP address* or *FQDN*.
7070
1. Enter your Azure Spring Apps public endpoints.
7171

72-
:::image type="content" source="media/spring-cloud-load-balancers/app-gateway-1.png" alt-text="Screenshot of the Azure portal that shows the Add backend pool page with the Backend targets values highlighted." lightbox="media/spring-cloud-load-balancers/app-gateway-1.png":::
72+
:::image type="content" source="media/how-to-integrate-azure-load-balancers/app-gateway-1.png" alt-text="Screenshot of the Azure portal that shows the Add backend pool page with the Backend targets values highlighted." lightbox="media/how-to-integrate-azure-load-balancers/app-gateway-1.png":::
7373

7474
### Add Custom Probe
7575

7676
1. Select **Health Probes** then **Add** to open custom **Probe** dialog.
7777
1. The key point is to select **No** for **Pick host name from backend HTTP settings** option and explicitly specify the host name. For more information, see [Application Gateway configuration for host name preservation](/azure/architecture/best-practices/host-name-preservation#application-gateway).
7878

79-
:::image type="content" source="media/spring-cloud-load-balancers/app-gateway-2.png" alt-text="Screenshot of the Azure portal that shows the probe page." lightbox="media/spring-cloud-load-balancers/app-gateway-2.png":::
79+
:::image type="content" source="media/how-to-integrate-azure-load-balancers/app-gateway-2.png" alt-text="Screenshot of the Azure portal that shows the probe page." lightbox="media/how-to-integrate-azure-load-balancers/app-gateway-2.png":::
8080

8181
### Configure Backend Setting
8282

8383
1. Select **Backend settings** then **Add** to add a backend setting.
8484
1. **Override with new host name:** select **No**.
8585
1. **Use custom probe**: select **Yes** and pick the custom probe created above.
8686

87-
:::image type="content" source="media/spring-cloud-load-balancers/app-gateway-3.png" alt-text="Screenshot of the Azure portal that shows the Add Backend setting page." lightbox="media/spring-cloud-load-balancers/app-gateway-3.png":::
87+
:::image type="content" source="media/how-to-integrate-azure-load-balancers/app-gateway-3.png" alt-text="Screenshot of the Azure portal that shows the Add Backend setting page." lightbox="media/how-to-integrate-azure-load-balancers/app-gateway-3.png":::
8888

8989
## Integrate Azure Spring Apps with Azure Front Door
9090

@@ -93,13 +93,13 @@ To integrate with Azure Spring Apps service and configure an origin group, use t
9393
1. **Add origin group**.
9494
1. Specify the backend endpoints by adding origins for the different Azure Spring Apps instances.
9595

96-
:::image type="content" source="media/spring-cloud-load-balancers/front-door-1.png" alt-text="Screenshot of the Azure portal that shows the Add an origin group page with the Add an origin button highlighted." lightbox="media/spring-cloud-load-balancers/front-door-1.png":::
96+
:::image type="content" source="media/how-to-integrate-azure-load-balancers/front-door-1.png" alt-text="Screenshot of the Azure portal that shows the Add an origin group page with the Add an origin button highlighted." lightbox="media/how-to-integrate-azure-load-balancers/front-door-1.png":::
9797

9898
1. Specify **origin type** as *Azure Spring Apps*.
9999
1. Select your Azure Spring Apps instance for the **host name**.
100100
1. Keep the **origin host header** empty, so that the incoming host header will be used towards the backend. For more information, see [Azure Front Door configuration for host name preservation](/azure/architecture/best-practices/host-name-preservation#azure-front-door).
101101

102-
:::image type="content" source="media/spring-cloud-load-balancers/front-door-2.png" alt-text="Screenshot of the Azure portal that shows the Add an origin page." lightbox="media/spring-cloud-load-balancers/front-door-2.png":::
102+
:::image type="content" source="media/how-to-integrate-azure-load-balancers/front-door-2.png" alt-text="Screenshot of the Azure portal that shows the Add an origin page." lightbox="media/how-to-integrate-azure-load-balancers/front-door-2.png":::
103103

104104
## Next steps
105105

0 commit comments

Comments
 (0)