Skip to content

Commit ed54a65

Browse files
Merge pull request #287516 from kgremban/aio-bugs
Reviews, bugs, and acrolinx
2 parents b048995 + 77b1789 commit ed54a65

File tree

5 files changed

+43
-28
lines changed

5 files changed

+43
-28
lines changed

articles/iot-operations/deploy-iot-ops/howto-deploy-iot-operations.md

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ In this article, we discuss Azure IoT Operations *deployments* and *instances*,
2727

2828
* An Azure IoT Operations *instance* is the parent resource that bundles the suite of services that are defined in [What is Azure IoT Operations Preview?](../overview-iot-operations.md) like MQTT broker, dataflows, and OPC UA connector.
2929

30-
When we talk about deploying Azure IoT Operations we mean the full set of components that make up a *deployment*. Once the deployment exists, you can view, manage, and update the *instance*.
30+
When we talk about deploying Azure IoT Operations, we mean the full set of components that make up a *deployment*. Once the deployment exists, you can view, manage, and update the *instance*.
3131

3232
## Prerequisites
3333

@@ -107,7 +107,7 @@ Azure IoT Operations requires a schema registry on your cluster. Schema registry
107107
| Optional parameter | Value | Description |
108108
| --------- | ----- | ----------- |
109109
| `--custom-role-id` | Role definition ID | Provide a custom role ID to assign to the schema registry instead of the default **Storage Blob Data Contributor** role. Format: `/subscriptions/<SUBSCRIPTION_ID>/providers/Microsoft.Authorization/roleDefinitions/<ROLE_ID>`. |
110-
| `--sa-container` | string | Storage account container where schemas will be stored. If this container doesn't exist, it will be created. The default container name is **schemas**. |
110+
| `--sa-container` | string | Storage account container to store schemas. If this container doesn't exist, this command creates it. The default container name is **schemas**. |
111111

112112
### Deploy Azure IoT Operations
113113

@@ -122,8 +122,8 @@ Azure IoT Operations requires a schema registry on your cluster. Schema registry
122122
| Optional parameter | Value | Description |
123123
| --------- | ----- | ----------- |
124124
| `--no-progress` | | Disables the deployment progress display in the terminal. |
125-
| `--enable-fault-tolerance` | `false`, `true` | Enables fault tolerance for Azure Arc Container Storage. At least 3 cluster nodes are required. |
126-
| `--ops-config` | `observability.metrics.openTelemetryCollectorAddress="<FULLNAMEOVERRIDE>.azure-iot-operations.svc.cluster.local:<GRPC_ENDPOINT>` | If you followed the optional prerequisites to prepare your cluster for observability, provide the otel collector address you configured in the otel-collector-values.yaml file.<br><br>The sample values used in [Configure observability](../configure-observability-monitoring/howto-configure-observability.md) are **fullnameOverride=aio-otel-collector** and **grpc.enpoint=4317**. |
125+
| `--enable-fault-tolerance` | `false`, `true` | Enables fault tolerance for Azure Arc Container Storage. At least three cluster nodes are required. |
126+
| `--ops-config` | `observability.metrics.openTelemetryCollectorAddress="<FULLNAMEOVERRIDE>.azure-iot-operations.svc.cluster.local:<GRPC_ENDPOINT>` | If you followed the optional prerequisites to prepare your cluster for observability, provide the OpenTelemetry (OTel) collector address you configured in the otel-collector-values.yaml file.<br><br>The sample values used in [Configure observability](../configure-observability-monitoring/howto-configure-observability.md) are **fullnameOverride=aio-otel-collector** and **grpc.enpoint=4317**. |
127127
| `--ops-config` | `observability.metrics.exportInternalSeconds=<CHECK_INTERVAL>` | If you followed the optional prerequisites to prepare your cluster for observability, provide the **check_interval** value you configured in the otel-collector-values.yaml file.<br><br>The sample value used in [Configure observability](../configure-observability-monitoring/howto-configure-observability.md) is **check_interval=60**. |
128128

129129
1. Deploy Azure IoT Operations. This command takes several minutes to complete:
@@ -149,8 +149,7 @@ Secret management for Azure IoT Operations uses Azure Secret Store to sync the s
149149

150150
Azure secret requires a user-assigned managed identity with access to the Azure Key Vault where secrets are stored. Dataflows also requires a user-assigned managed identity to authenticate cloud connections.
151151

152-
153-
1. If you don't have an Azure Key Vault, create one by using the [az keyvault create](/cli/azure/keyvault#az-keyvault-create) command.
152+
1. Create an Azure Key Vault if you don't have one available. Use the [az keyvault create](/cli/azure/keyvault#az-keyvault-create) command.
154153

155154
```azurecli
156155
az keyvault create --resource-group "<RESOURCE_GROUP>" --location "<LOCATION>" --name "<KEYVAULT_NAME>" --enable-rbac-authorization
@@ -272,7 +271,7 @@ Azure secret requires a user-assigned managed identity with access to the Azure
272271
273272
1. Copy and run the `az iot ops identity assign` command.
274273
275-
1. Once all of the Azure CLI commands have completed successfully, you can close the **Install Azure IoT Operations** wizard.
274+
1. Once all of the Azure CLI commands complete successfully, you can close the **Install Azure IoT Operations** wizard.
276275
277276
---
278277

articles/iot-operations/deploy-iot-ops/howto-prepare-cluster.md

Lines changed: 14 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ ms.date: 09/26/2024
1414

1515
[!INCLUDE [public-preview-note](../includes/public-preview-note.md)]
1616

17-
An Azure Arc-enabled Kubernetes cluster is a prerequisite for deploying Azure IoT Operations Preview. This article describes how to prepare a cluster before you [Deploy Azure IoT Operations Preview to an Arc-enabled Kubernetes cluster](howto-deploy-iot-operations.md). This article includes guidance for both Ubuntu, Windows, and cloud environments.
17+
An Azure Arc-enabled Kubernetes cluster is a prerequisite for deploying Azure IoT Operations Preview. This article describes how to prepare a cluster before you [Deploy Azure IoT Operations Preview to an Arc-enabled Kubernetes cluster](howto-deploy-iot-operations.md). This article includes guidance for both Ubuntu and Windows.
1818

1919
> [!TIP]
2020
> The steps in this article prepare your cluster for a secure settings deployment, which is a longer but production-ready process. If you want to deploy Azure IoT Operations quickly and run a sample workload with only test settings, see the [Quickstart: Run Azure IoT Operations Preview in Github Codespaces with K3s](../get-started-end-to-end-sample/quickstart-deploy.md) instead.
@@ -23,9 +23,11 @@ An Azure Arc-enabled Kubernetes cluster is a prerequisite for deploying Azure Io
2323
2424
## Prerequisites
2525

26-
Azure IoT Operations should work on any Arc-enabled Kubernetes cluster that meets the [Azure Arc-enabled Kubernetes system requirements](/azure/azure-arc/kubernetes/system-requirements). Currently Azure IoT Operations doesn't support ARM64 architectures.
26+
Azure IoT Operations should work on any Arc-enabled Kubernetes cluster that meets the [Azure Arc-enabled Kubernetes system requirements](/azure/azure-arc/kubernetes/system-requirements). Currently Azure IoT Operations doesn't support Arm64 architectures.
2727

28-
Microsoft supports AKS Edge Essentials for deployments on Windows and K3s for deployments on Ubuntu. For a list of specific hardware and software combinations that are tested and validated, see [Validated environments](../overview-iot-operations.md#validated-environments).
28+
Microsoft supports Azure Kubernetes Service (AKS) Edge Essentials for deployments on Windows and K3s for deployments on Ubuntu. For a list of specific hardware and software combinations that are tested and validated, see [Validated environments](../overview-iot-operations.md#validated-environments).
29+
30+
If you want to deploy Azure IoT Operations to a multi-node solution, we recommend K3s on Ubuntu.
2931

3032
To prepare your Azure Arc-enabled Kubernetes cluster, you need:
3133

@@ -40,7 +42,7 @@ To prepare your Azure Arc-enabled Kubernetes cluster, you need:
4042
> [!NOTE]
4143
> **Special instructions for AIO Internal Bugbash**:
4244
>
43-
> Official IoT Ops CLI releases are installed via extension index like so az extension add --upgrade --name azure-iot-ops mentioned below. However for bug bashes, we will distribute one-off release candidates intended to expose functionality to exercise internally. Use this for Bug Bash 2 on 9/27 and skip the az extension command below
45+
> Official IoT Ops CLI releases are installed via extension index with the *az extension add --upgrade --name azure-iot-ops* command mentioned below. However for bug bashes, we will distribute one-off release candidates intended to expose functionality to exercise internally. Use this for Bug Bash 2 on 9/27 and skip the az extension command below
4446
>
4547
>``` bash
4648
>az storage blob download --auth-mode login --blob-url https://azedgecli.blob.core.windows.net/drop/azure_iot_ops-0.7.0a11-py3-none-any.whl -f ./azure_iot_ops-0.7.0a11-py3-none-any.whl
@@ -65,13 +67,14 @@ To prepare your Azure Arc-enabled Kubernetes cluster, you need:
6567
* Azure CLI version 2.64.0 or newer installed on your development machine. Use `az --version` to check your version and `az upgrade` to update if necessary. For more information, see [How to install the Azure CLI](/cli/azure/install-azure-cli).
6668

6769
> [!NOTE]
68-
> **Special instructions for AIO Internal Bugbash**:
70+
> **Special instructions for AIO Internal Bugbash**:
71+
>
72+
> Official IoT Ops CLI releases are installed via extension index with the *az extension add --upgrade --name azure-iot-ops* command mentioned below. However for bug bashes, we will distribute one-off release candidates intended to expose functionality to exercise internally. Use this for Bug Bash 2 on 9/27 and skip the az extension command below
6973
>
70-
> Official IoT Ops CLI releases are installed via extension index like so az extension add --upgrade --name azure-iot-ops mentioned below. However for bug bashes, we will distribute one-off release candidates intended to expose functionality to exercise internally. Use this for Bug Bash 2 on 9/27 and skip the az extension command below
7174
> ``` bash
7275
> az storage blob download --auth-mode login --blob-url https://azedgecli.blob.core.windows.net/drop/azure_iot_ops-0.7.0a11-py3-none-any.whl -f ./azure_iot_ops-0.7.0a11-py3-none-any.whl
7376
> az extension add --upgrade --source ./azure_iot_ops-0.7.0a11-py3-none-any.whl
74-
> ```
77+
> ```
7578
7679
* The latest version of the Azure IoT Operations extension for Azure CLI. Use the following command to add the extension or update it to the latest version:
7780
@@ -118,7 +121,8 @@ The [AksEdgeQuickStartForAio.ps1](https://github.com/Azure/AKS-Edge/blob/main/to
118121
> [!NOTE]
119122
> **Special instructions for AIO Internal Bugbash**:
120123
>
121-
> The instructions below for AksEdgeQuickStartForAio.ps1 from AKS-Edge GitHub repo are for external customer consumption and will only work after AIO 0.7 is released.
124+
> The instructions below for AksEdgeQuickStartForAio.ps1 from AKS-Edge GitHub repo are for external customer consumption and will only work after AIO 0.7 is released.
125+
>
122126
> For internal bug bashes, use this powershell script below instead
123127
>
124128
>```powershell
@@ -152,7 +156,7 @@ The [AksEdgeQuickStartForAio.ps1](https://github.com/Azure/AKS-Edge/blob/main/to
152156

153157
On multi-node clusters with at least three nodes, you have the option of enabling fault tolerance for storage with [Azure Container Storage enabled by Azure Arc](/azure/azure-arc/container-storage/overview) when you deploy Azure IoT Operations.
154158

155-
By default, Azure Kubernetes Service Edge Essentials clusters support Azure Container Storage. There are no additional steps to configure AKS Edge Essential clusters for fault tolerance.
159+
By default, Azure Kubernetes Service Edge Essentials clusters support Azure Container Storage. There are no extra steps to configure AKS Edge Essential clusters for fault tolerance.
156160

157161
### [Ubuntu](#tab/ubuntu)
158162

@@ -241,7 +245,7 @@ To connect your cluster to Azure Arc:
241245
242246
If at any point you get an error that says *Your device is required to be managed to access your resource*, run `az login` again and make sure that you sign in interactively with a browser.
243247
244-
1. Set environment variables for your Azure subscription, location, a new resource group, and the cluster name as it will show up in your resource group.
248+
1. Set environment variables for your Azure subscription, location, a new resource group, and the cluster name as you want it to show up in your resource group.
245249
246250
For the list of currently supported Azure regions, see [Supported regions](../overview-iot-operations.md#supported-regions).
247251

articles/iot-operations/deploy-iot-ops/overview-deploy.md

Lines changed: 11 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,14 @@ ms.date: 09/10/2024
1414

1515
[!INCLUDE [public-preview-note](../includes/public-preview-note.md)]
1616

17+
## Supported environments
18+
19+
Azure IoT Operations should work on any Arc-enabled Kubernetes cluster that meets the [Azure Arc-enabled Kubernetes system requirements](/azure/azure-arc/kubernetes/system-requirements). Currently Azure IoT Operations doesn't support ARM64 architectures.
20+
21+
Microsoft supports Azure Kubernetes Service (AKS) Edge Essentials for deployments on Windows and K3s for deployments on Ubuntu. For a list of specific hardware and software combinations that are tested and validated, see [Validated environments](../overview-iot-operations.md#validated-environments).
22+
23+
If you want to deploy Azure IoT Operations to a multi-node solution, we recommend K3s on Ubuntu.
24+
1725
## Choose your features
1826

1927
Azure IoT Operations offers two deployment modes. You can choose to deploy with *test settings*, a basic subset of features that are simpler to get started with for evaluation scenarios. Or, you can choose to deploy with *secure settings*, the full feature set.
@@ -26,18 +34,17 @@ A deployment with only test settings enabled:
2634
* Is meant to enable the end-to-end quickstart sample for evaluation purposes, so does support the OPC PLC simulator and connect to cloud resources using system-assigned managed identity.
2735
* Can be upgraded to use secure settings.
2836

29-
If you want to deploy Azure IoT Operations with test settings, follow these articles:
37+
To deploy Azure IoT Operations with test settings, you can use the steps in [Quickstart: Run Azure IoT Operations Preview in GitHub Codespaces](../get-started-end-to-end-sample/quickstart-deploy.md). Or, to deploy with test settings on AKS Edge Essentials or K3s on Ubuntu, follow the secure settings deployment articles and stop at the optional secure settings steps.
3038

31-
1. Start with [Quickstart: Run Azure IoT Operations Preview in GitHub Codespaces with K3s](../get-started-end-to-end-sample/quickstart-deploy.md), then follow the rest of the articles in the end-to-end sample to test and evaluate Azure IoT Operations.
32-
1. If you want to upgrade your Azure IoT Operations instance to use secure settings, follow the steps in [Enable secure settings](./howto-enable-secure-settings.md).
39+
If you want to upgrade your Azure IoT Operations instance to use secure settings, follow the steps in [Enable secure settings](./howto-enable-secure-settings.md).
3340

3441
### Secure settings deployment
3542

3643
A deployment with secure settings enabled:
3744

3845
* Includes the steps to enable secrets and user-assignment managed identity, which are important capabilities for developing a production-ready scenario. Secrets are used whenever Azure IoT Operations components connect to a resource outside of the cluster; for example, an OPC UA server or a dataflow endpoint.
3946

40-
If you want to deploy Azure IoT Operations with secure settings, follow these articles:
47+
To deploy Azure IoT Operations with secure settings, follow these articles:
4148

4249
1. Start with [Prepare your Azure Arc-enabled Kubernetes cluster](./howto-prepare-cluster.md) to configure and Arc-enable your cluster.
4350
1. Then, [Deploy Azure IoT Operations Preview](./howto-deploy-iot-operations.md).

articles/iot-operations/get-started-end-to-end-sample/quickstart-add-assets.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ In this quickstart, you use the operations experience web UI to create your asse
2525

2626
## Prerequisites
2727

28-
In instance of Azure IoT Operations Preview deployed in a Kubernetes cluster. The [Quickstart: Run Azure IoT Operations Preview in GitHub Codespaces with K3s](quickstart-deploy.md) provides simple instructions to deploy an Azure IoT Operations instance that you can use for the quickstarts.
28+
Have an instance of Azure IoT Operations Preview deployed in a Kubernetes cluster. The [Quickstart: Run Azure IoT Operations Preview in GitHub Codespaces with K3s](quickstart-deploy.md) provides simple instructions to deploy an Azure IoT Operations instance that you can use for the quickstarts.
2929

3030
To sign in to the operations experience web UI, you need a Microsoft Entra ID account with at least contributor permissions for the resource group that contains your **Kubernetes - Azure Arc** instance. To learn more, see [Operations experience web UI](../discover-manage-assets/howto-manage-assets-remotely.md#prerequisites).
3131

0 commit comments

Comments
 (0)