01 Run list-workloads using custom query filters to list the IDs of the workloads, available in the selected region.
aws wellarchitected list-workloads
--region us-west-2
--query "WorkloadSummaries[*].{WorkloadId:WorkloadId,WorkloadName:WorkloadName,Lenses:Lenses,RiskCounts:RiskCounts}"
02 The command output should return an array with the workloads, with their IDs, Names and RiskCounts:
[
{
"WorkloadId": "91d51c9ea1a4f94580e280a0023271df",
"WorkloadName": "Workload 415bc49c-704f-414a-85bc-eca2e251fccd",
"Lenses": [
"wellarchitected",
"serverless"
],
"RiskCounts": {
"UNANSWERED": 2,
"NONE": 2,
"MEDIUM": 3,
"HIGH": 54
}
},
{
"WorkloadId": "25029df333692945ee0d3b07dcf9a621",
"WorkloadName": "Workload 6701c316-b124-4747-963d-53e6070f2eaa",
"Lenses": [
"wellarchitected",
"serverless"
],
"RiskCounts": {
"UNANSWERED": 2,
"NONE": 1,
"MEDIUM": 2,
"HIGH": 56
}
},
{
"WorkloadId": "bec3d5b30a70a17e598e8d2d11c273bc",
"WorkloadName": "Workload 7027ca1f-6bcd-43d0-ad9a-f1cd00aab59a",
"Lenses": [
"wellarchitected",
"serverless"
],
"RiskCounts": {
"UNANSWERED": 2,
"NONE": 4,
"MEDIUM": 5,
"HIGH": 50
}
}
]
03 For a workload that has associated High and/or Medium risks, run the list-lens-review-improvements command for a given lens and workload:
aws wellarchitected list-lens-review-improvements
--workload-id bec3d5b30a70a17e598e8d2d11c273bc
--lens-alias wellarchitected
04 The command output should return a list of ImprovementSummaries for each question that has a risk associated with it.
{
"WorkloadId": "bec3d5b30a70a17e598e8d2d11c273bc",
"LensAlias": "wellarchitected",
"ImprovementSummaries": [
{
"QuestionId": "securely-operate",
"PillarId": "security",
"QuestionTitle": "How do you securely operate your workload?",
"Risk": "HIGH",
"ImprovementPlanUrl": "https://d2e5hy6ocwdfvi.cloudfront.net/TypeII/en/wellarchitected/wellarchitected.securely-operate.improvement-plan.en.html"
},
{
"QuestionId": "identities",
"PillarId": "security",
"QuestionTitle": "How do you manage identities for people and machines?",
"Risk": "HIGH",
"ImprovementPlanUrl": "https://d2e5hy6ocwdfvi.cloudfront.net/TypeII/en/wellarchitected/wellarchitected.identities.improvement-plan.en.html"
},
{
"QuestionId": "permissions",
"PillarId": "security",
"QuestionTitle": "How do you manage permissions for people and machines?",
"Risk": "HIGH",
"ImprovementPlanUrl": "https://d2e5hy6ocwdfvi.cloudfront.net/TypeII/en/wellarchitected/wellarchitected.permissions.improvement-plan.en.html"
},
{
"QuestionId": "detect-investigate-events",
"PillarId": "security",
"QuestionTitle": "How do you detect and investigate security events?",
"Risk": "HIGH",
"ImprovementPlanUrl": "https://d2e5hy6ocwdfvi.cloudfront.net/TypeII/en/wellarchitected/wellarchitected.detect-investigate-events.improvement-plan.en.html"
},
{
"QuestionId": "network-protection",
"PillarId": "security",
"QuestionTitle": "How do you protect your network resources?",
"Risk": "HIGH",
"ImprovementPlanUrl": "https://d2e5hy6ocwdfvi.cloudfront.net/TypeII/en/wellarchitected/wellarchitected.network-protection.improvement-plan.en.html"
},
{
"QuestionId": "protect-compute",
"PillarId": "security",
"QuestionTitle": "How do you protect your compute resources?",
"Risk": "HIGH",
"ImprovementPlanUrl": "https://d2e5hy6ocwdfvi.cloudfront.net/TypeII/en/wellarchitected/wellarchitected.protect-compute.improvement-plan.en.html"
},
{
"QuestionId": "data-classification",
"PillarId": "security",
"QuestionTitle": "How do you classify your data?",
"Risk": "HIGH",
"ImprovementPlanUrl": "https://d2e5hy6ocwdfvi.cloudfront.net/TypeII/en/wellarchitected/wellarchitected.data-classification.improvement-plan.en.html"
}
]
}
Note: A pagination token will be returned in this list if the ImprovementSummaries is greater than 10, pass this token into the same command to generate the next page of ImprovementSummaries
05 Analyse the metadata returned in the previous step by checking the following output attributes:
- QuestionId - An ID given to that question
- PillarId - The pillar associated with the given question
- QuestionTitle - The question that was asked
- Risk - The risk given based off the answer received
- ImprovementPlanUrl - A URL to further AWS documentation for a Improvement plan for the given risk
06 Repeat step 3-5 for each lens of a given workload
07 Repeat step 3-6 for each workload with high and/or medium risks