Skip to content

Commit c6c3b22

Browse files
author
Robel Herarso
committed
increase the acrolinx score
1 parent e9a7012 commit c6c3b22

File tree

1 file changed

+21
-21
lines changed

1 file changed

+21
-21
lines changed

articles/operator-nexus/howto-run-instance-readiness-testing.md

Lines changed: 21 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ ms.date: 07/13/2023
99
ms.custom: template-how-to
1010
---
1111

12-
# Instance readiness testing
12+
# Instance Readiness Testing
1313

1414
Instance Readiness Testing (IRT) is a framework built to orchestrate real-world workloads for testing of the Azure Operator Nexus Platform.
1515

@@ -32,12 +32,12 @@ The network information is provided in either a `networks-blueprint.yml` file, s
3232
* Two of them with MTU 1500
3333
* One of them with MTU 9000 and shouldn't have a fabric_asn attribute
3434
* One (1) Trunked Network
35-
* All vlans should be greater than 500
35+
* All VLANs should be greater than 500
3636

3737
## One Time Setup
3838

3939
### Download IRT
40-
IRT is distributed via tarball, download it, extract it, and navigate to the `irt` directory
40+
IRT is distributed via tarball, download it, extract it, and navigate to the `irt` directory.
4141
1. From your Linux environment, download nexus-irt.tar.gz from aka.ms/nexus-irt `curl -Lo nexus-irt.tar.gz aka.ms/nexus-irt`
4242
1. Extract the tarball to the local file system: `mkdir -p irt && tar xf nexus-irt.tar.gz --directory ./irt`
4343
1. Switch to the new directory `cd irt`
@@ -49,10 +49,10 @@ There are multiple dependencies expected to be available during execution. Revie
4949
* `jq` version 1.6 or greater
5050
* `yq` version 4.33 or greater
5151
* `azcopy` version 10 or greater
52-
* `az` Azure CLI stay up to date, minimum expected 2.11.0
52+
* `az` Azure CLI, stay up to date. Minimum expected version: 2.11.0(supports self upgrade)
5353
* `elinks` - for viewing html files on the command line
5454
* `tree` - for viewing directory structures
55-
* `moreutils` - for viewing progress from the Azure Containter Instance(ACI) container
55+
* `moreutils` - for viewing progress from the Azure Container Instance (ACI) container
5656

5757
The `setup.sh` script is provided to aid with installing the listed dependencies. It installs any dependencies that aren't available in PATH. It doesn't upgrade any dependencies that don't meet the minimum required versions.
5858

@@ -62,36 +62,35 @@ The `setup.sh` script is provided to aid with installing the listed dependencies
6262
### All in one setup
6363

6464
`all-in-one-setup.sh` is provided to create all of the Azure resources required to run IRT. This process includes creating a managed identity, a service principal, a security group, isolation domains, and a storage account to archive the test results. These resources can be created during the all in one script, or they can be created step by step per the instructions in this document. Each of the script, individually and via the all in one script, writes updates to your `irt-input.yml` file with the key value pairs needed to utilize the resources you created. Review the `irt-input.example.yml` file for the required inputs needed for one or more of the scripts, regardless of the methodology you pursue. All of the scripts are idempotent, and also allow you to use existing resources if desired.
65-
6665
### Step-by-Step setup
6766

6867
> [NOTE]
6968
> Only use this section if you're NOT using `all-in-one.sh`
7069
7170
If your workflow is incompatible with `all-in-one.sh`, each resource needed for IRT can be created manually with each supplemental script. Like `all-in-one.sh`, running these scripts writes key/value pairs to your `irt-input.yml` for you to use during your run. These four scripts make up the `all-in-one.sh`.
7271

73-
IRT makes commands against your resources, and needs permission to do so. IRT requires a Managed Identity and a Service Principal to execute. It also requires that the service principal is a member of the Azure AD Security Group that is also provided as input.
72+
IRT makes commands against your resources, and needs permission to do so. IRT requires a managed identity and a service principal to execute. It also requires that the service principal is a member of the Azure AD Security Group that is also provided as input.
7473

7574
#### Create managed identity
7675
<details>
77-
<summary>expand to see how to create managed identity</summary>
76+
<summary>Expand to see how to create managed identity.</summary>
7877

7978
A managed identity with the following role assignments is needed to execute tests. The supplemental script, `create-managed-identity.sh` creates a managed identity with these role assignments.
8079
* `Contributor` - For creating and manipulating resources
8180
* `Storage Blob Data Contributor` - For reading from and writing to the storage blob container
8281
* `Log Analytics Reader` - For reading metadata about the LAW
8382
* `Kubernetes Connected Cluster Role` - For read/write operations on connected cluster
8483

85-
Executing `create-managed-identity.sh` requires the input yaml to have the following properties, all of them can be overriden by the corrosponding environment variables:
84+
Executing `create-managed-identity.sh` requires the input yaml to have the following properties, all of them can be overridden by the corresponding environment variables:
8685
```yml
8786
MANAGED_IDENTITY:
8887
RESOURCE_GROUP: "<resource-group>" # env: MANAGED_IDENTITY_RESOURCE_GROUP
8988
NAME: "<name>" # env: MANAGED_IDENTITY_NAME
9089
SUBSCRIPTION: "<subscription>" # env: MANAGED_IDENTITY_SUBSCRIPTION
9190
LOCATION: "<location>" # env: MANAGED_IDENTITY_LOCATION
9291
```
93-
* `MANAGED_IDENTITY.RESOURCE_GROUP` - The resource group the Managed Identity is created in.
94-
* `MANAGED_IDENTITY.NAME` - The name of the Managed Identity to be created.
92+
* `MANAGED_IDENTITY.RESOURCE_GROUP` - The resource group the managed identity is created in.
93+
* `MANAGED_IDENTITY.NAME` - The name of the managed identity to be created.
9594
* `MANAGED_IDENTITY.SUBSCRIPTION` - The subscription where the resource group should reside.
9695
* `MANAGED_IDENTITY.LOCATION` - The location to create the resource group.
9796

@@ -113,7 +112,7 @@ MANAGED_IDENTITY_ID: <generated_id>
113112

114113
#### Create service principal and security group
115114
<details>
116-
<summary>expand to see how to create service principal and security group</summary>
115+
<summary>Expand to see how to create service principal and security group.</summary>
117116

118117
A service principal with the following role assignments. The supplemental script, `create-service-principal.sh` creates a service principal with these role assignments, or add role assignments to an existing service principal.
119118

@@ -123,7 +122,7 @@ A service principal with the following role assignments. The supplemental script
123122

124123
Additionally, the script creates the necessary security group, and adds the service principal to the security group. If the security group exists, it adds the service principal to the existing security group.
125124

126-
Executing `create-service-principal.sh` requires the input yaml to have the following properties, all of them can be overriden by the corrosponding environment variables:
125+
Executing `create-service-principal.sh` requires the input yaml to have the following properties, all of them can be overridden by the corresponding environment variables:
127126
```yml
128127
SERVICE_PRINCIPAL:
129128
NAME: "<name>" # env: SERVICE_PRINCIPAL_NAME
@@ -155,11 +154,11 @@ AAD_GROUP_ID: "generated-aad-group-id"
155154

156155
#### Create l3 isolation domains
157156
<details>
158-
<summary>expand to see how to create l3 isolation domains</summary>
157+
<summary>Expand to see how to create l3 isolation.</summary>
159158

160-
The testing framework doesn't create, destroy, or manipulate isolation domains. Therefore, existing Isolation Domains can be used. Each Isolation Domain requires at least one external network. The supplemental script, `create-l3-isolation-domains.sh`. Internal networks are created, manipulated, and destroyed through the course of testing.
159+
The testing framework doesn't create, destroy, or manipulate isolation domains. Therefore, existing isolation domains can be used. Each isolation domain requires at least one external network. The supplemental script, `create-l3-isolation-domains.sh`. Internal networks are created, manipulated, and destroyed through the course of testing.
161160

162-
Executing `create-l3-isolation-domains.sh` requires one **parameter**, a path to the input file, You can choose either of the standalone network-blueprint.yml or the input.yml that contains the same information as input to this script.
161+
Executing `create-l3-isolation-domains.sh` requires one **parameter**, a path to a file containing the networks requirements. You can choose either the standalone network-blueprint.yml or the input.yml based on your workflow, both should contain the information needed.
163162

164163
```bash
165164
# Example of the script being invoked using networks-blueprint.yml:
@@ -168,17 +167,18 @@ Executing `create-l3-isolation-domains.sh` requires one **parameter**, a path to
168167

169168
```bash
170169
# Example of the script being invoked using irt-input.yml:
170+
# the network-blueprint should exist under NETWORK_BLUEPRINT node.
171171
./create-l3-isolation-domains.sh irt-input.yml
172172
```
173173
</details>
174174

175175
#### Create archive storage
176176
<details>
177-
<summary>expand to see how to create archive storage</summary>
177+
<summary>Expand to see how to create archive storage.</summary>
178178

179-
IRT creates an html test report after running a test scenario. These reports can optionally be uploaded to a blob storage container. the supplementary script `create-archive-storage.sh` to create a storage container, storage account, and resource group if they don't already exist.
179+
IRT creates an html test report after running a test scenario. These reports can optionally be uploaded to a blob storage container. The supplementary script `create-archive-storage.sh` to create a storage container, storage account, and resource group if they don't already exist.
180180

181-
Executing `create-archive-storage.sh` requires the input yaml to have the following properties, all of them can be overriden by the corrosponding environment variables:
181+
Executing `create-archive-storage.sh` requires the input yaml to have the following properties, all of them can be overridden by the corresponding environment variables:
182182

183183
```yml
184184
ARCHIVE_STORAGE:
@@ -188,7 +188,7 @@ ARCHIVE_STORAGE:
188188
SUBSCRIPTION: "<subscription>" # env: ARCHIVE_STORAGE_SUBSCRIPTION
189189
LOCATION: "<location>" # env: ARCHIVE_STORAGE_LOCATION
190190
```
191-
* `ARCHIVE_STORAGE_RESOURCE_GROUP` - The resource group the Managed Identity is created in.
191+
* `ARCHIVE_STORAGE_RESOURCE_GROUP` - The resource group the managed identity is created in.
192192
* `ARCHIVE_STORAGE_ACCOUNT_NAME` - The name of the Azure storage account to be created.
193193
* `ARCHIVE_STORAGE_CONTAINER_NAME` - The name of the blob storage container to be created.
194194
* `SUBSCRIPTION` - The subscription where the resource group is created in.
@@ -202,7 +202,7 @@ ARCHIVE_STORAGE:
202202
./create-archive-storage.sh irt-input.yaml
203203
```
204204

205-
**RESULT:** This script prints a value for `PUBLISH_RESULTS_TO` and set the value in the input.yml. See [Input Configuration](#input-configuration).
205+
**RESULT:** This script prints a value for `PUBLISH_RESULTS_TO` and sets the value in the input.yml. See [Input Configuration](#input-configuration).
206206
```yml
207207
PUBLISH_RESULTS_TO: <generated_id>
208208
```

0 commit comments

Comments
 (0)