Skip to content

Commit b9be83e

Browse files
authored
Add Anypoint health check to maintenance documentation (#57)
* Add Anypoint health check to maintenance documentation * Enhance documentation
1 parent 31b692c commit b9be83e

1 file changed

Lines changed: 27 additions & 18 deletions

File tree

docs/maintenance.md

Lines changed: 27 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -5,18 +5,23 @@
55
Downtime: OS updates can be performed with no downtime
66

77
1. Update AMI in launch template
8-
1. The automatic AMI updater runs monthly. If you need to force it, go to Github repository -> Actions -> Update AMI -> Run Workflow. This will create a pull request with the latest AMI (if it is newer than the current one)
8+
1. Renovate will create a pull request titled \[env] Update dependency ec2_ami_id to ...
99
1. Check pull request, especially the Terraform plan, for validity
1010
1. Merge the pull request, then wait for the Terraform apply job to run
1111
1. *Note* This will not actually update or replace any servers, it just means that the next server launched will have the newer AMI.
12+
1. Wait for CI/CD pipelines to finish
1213
1. Launch one new server
1314
1. Navigate to AWS web console -> EC2 -> Autoscaling
1415
1. Set the desired, minimum, and maximum capacity to one higher
15-
1. SSH onto the new server and make sure things looks good
16-
1. Check `docker ps`
17-
1. Check in the AWS target group that the new server is healthy
18-
1. Navigate to AWS web console -> EC2 -> Target groups
19-
1. The new server will typically not be healthy until 3-4 minutes. Give it time.
16+
1. Check that the new server is healthy
17+
1. SSH onto the new server and make sure things looks good
18+
1. Check `docker ps`
19+
1. Check in the AWS target group that the new server is healthy
20+
1. Navigate to AWS web console -> EC2 -> Target groups
21+
1. The new server will typically not be healthy until 3-4 minutes. Give it time.
22+
1. Check Anypoint Platform
23+
1. Use the root organization and select the proper environment (dev, test, prod)
24+
1. Navigate to Runtime Manager -> Flex Gateways -> Self-Managed Flex Gateways
2025
1. Launch more servers until you have double the usual amount.
2126
1. Terminate the old servers
2227
1. Navigate to AWS web console -> EC2 -> Autoscaling
@@ -28,21 +33,25 @@ Downtime: Application updates likely require no downtime
2833

2934
There is nowhere in the Mulesoft documentation that it mentions you can't temporarily run multiple versions of Flex Gateway in parallel. This leads me to believe that for any upgrade, you can have a mixed state.
3035

31-
1. Update `flex_gateway_version` in Terraform
32-
1. Create a new branch in the Git repo, maybe like `update-{env}-app-{new_version}`, for example, `update-prod-app-v3-11-0`.
33-
1. Update `flex_gateway_version` for the proper environment, in `tf/env/{env}/main.tf`
34-
1. Create the pull request
35-
1. Check the CI pipeline, especially the `terraform_plan` jobs
36-
1. Merge the pull request, then wait for the CI/CD pipelines to finish
36+
1. Update `flex_gateway_tag` in Terraform
37+
1. Renovate will create a pull request titled \[env] Update mulesoft/flex-gateway Docker tag to ...
38+
1. There will likely be two per environment - One for a patch update and one for a minor update. Be diligent as towards which one you choose
39+
1. Check pull request, especially the Terraform plan, for validity
40+
1. Merge the pull request, then wait for the Terraform apply job to run
41+
1. *Note* This will not actually update or replace any servers, it just means that the next server launched will have the newer AMI.
42+
1. Wait for CI/CD pipelines to finish
3743
1. Launch one new server
3844
1. Navigate to AWS web console -> EC2 -> Autoscaling
3945
1. Set the desired, minimum, and maximum capacity to one higher
40-
1. SSH onto the new server and make sure things looks good
41-
1. Check `docker ps`
42-
1. Make sure that the new version was downloaded properly and things look right
43-
1. Check in the AWS target group that the new server is healthy
44-
1. Navigate to AWS web console -> EC2 -> Target groups
45-
1. The new server will typically not be healthy until 3-4 minutes. Give it time.
46+
1. Check that the new server is healthy
47+
1. SSH onto the new server and make sure things looks good
48+
1. Check `docker ps`
49+
1. Check in the AWS target group that the new server is healthy
50+
1. Navigate to AWS web console -> EC2 -> Target groups
51+
1. The new server will typically not be healthy until 3-4 minutes. Give it time.
52+
1. Check Anypoint Platform
53+
1. Use the root organization and select the proper environment (dev, test, prod)
54+
1. Navigate to Runtime Manager -> Flex Gateways -> Self-Managed Flex Gateways
4655
1. Launch more servers until you have double the usual amount.
4756
1. Terminate the old servers
4857
1. Navigate to AWS web console -> EC2 -> Autoscaling

0 commit comments

Comments
 (0)