You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: articles/iot-edge/how-to-deploy-blob.md
+7-6Lines changed: 7 additions & 6 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -32,7 +32,7 @@ The Azure portal guides you through creating a deployment manifest and pushing t
32
32
33
33
### Configure a deployment manifest
34
34
35
-
A deployment manifest is a JSON document that describes which modules to deploy, how data flows between the modules, and desired properties of the module twins. The Azure portal has a wizard that walks you through creating a deployment manifest, instead of building the JSON document manually. It has three steps organized into tabs: **Modules**, **Routes**, and **Review + Create**.
35
+
A deployment manifest is a JSON document that describes which modules to deploy, how data flows between the modules, and desired properties of the module twins. The Azure portal has a wizard that walks you through creating a deployment manifest. It has three steps organized into tabs: **Modules**, **Routes**, and **Review + Create**.
36
36
37
37
#### Add modules
38
38
@@ -52,11 +52,11 @@ A deployment manifest is a JSON document that describes which modules to deploy,
52
52
> [!IMPORTANT]
53
53
> Azure IoT Edge is case-sensitive when you make calls to modules, and the Storage SDK also defaults to lowercase. Although the name of the module in the [Azure Marketplace](how-to-deploy-modules-portal.md#deploy-modules-from-azure-marketplace) is **AzureBlobStorageonIoTEdge**, changing the name to lowercase helps to ensure that your connections to the Azure Blob Storage on IoT Edge module aren't interrupted.
54
54
55
-
3.On the **Container Create Options** tab, you will provide JSON code to provide storage account information and a mount for the storage on your device.
Copy and paste the following JSON into the box, referring to the placeholder descriptions in the next step.
59
+
Copy and paste the following JSON into the box, to provide storage account information and a mount for the storage on your device.
60
60
61
61
```json
62
62
{
@@ -75,21 +75,21 @@ A deployment manifest is a JSON document that describes which modules to deploy,
75
75
}
76
76
```
77
77
78
-
4. Update the JSON that you copied for**Container Create Options** with the following information:
78
+
4. Update the JSON that you copied into**Container Create Options** with the following information:
79
79
80
80
- Replace `<your storage account name>` with a name that you can remember. Account names should be 3 to 24 characters long, with lowercase letters and numbers. No spaces.
81
81
82
82
- Replace `<your storage account key>` with a 64-byte base64 key. You can generate a key with tools like [GeneratePlus](https://generate.plus/en/base64). You'll use these credentials to access the blob storage from other modules.
83
83
84
-
- Replace `<storage mount>` according to your container operating system. Provide the name of a [volume](https://docs.docker.com/storage/volumes/) or the absolute path to a directory on your IoT Edge device where you want the blob module to store its data. The storage mount maps a location on your device that you provide to a set location in the module.
84
+
- Replace `<storage mount>` according to your container operating system. Provide the name of a [volume](https://docs.docker.com/storage/volumes/) or the absolute path to an existing directory on your IoT Edge device where the blob module will store its data. The storage mount maps a location on your device that you provide to a set location in the module.
85
85
86
86
- For Linux containers, the format is *\<storage path or volume>:/blobroot*. For example
87
87
- use [volume mount](https://docs.docker.com/storage/volumes/): **my-volume:/blobroot**
88
88
- use [bind mount](https://docs.docker.com/storage/bind-mounts/): **/srv/containerdata:/blobroot**. Make sure to follow the steps to [grant directory access to the container user](how-to-store-data-blob.md#granting-directory-access-to-container-user-on-linux)
89
89
- For Windows containers, the format is *\<storage path or volume>:C:/BlobRoot*. For example
90
90
- use [volume mount](https://docs.docker.com/storage/volumes/): **my-volume:C:/blobroot**.
91
91
- use [bind mount](https://docs.docker.com/storage/bind-mounts/): **C:/ContainerData:C:/BlobRoot**.
92
-
- Instead of using your local drive, you can map your SMB network location, for more information see [using SMB share as your local storage](how-to-store-data-blob.md#using-smb-share-as-your-local-storage)
92
+
- Instead of using your local drive, you can map your SMB network location, for more information, see [using SMB share as your local storage](how-to-store-data-blob.md#using-smb-share-as-your-local-storage)
93
93
94
94
> [!IMPORTANT]
95
95
> Do not change the second half of the storage mount value, which points to a specific location in the module. The storage mount should always end with **:/blobroot** for Linux containers and **:C:/BlobRoot** for Windows containers.
@@ -256,6 +256,7 @@ Edit **Container Create Options** (in the Azure portal) or the **createOptions**
256
256
When you connect to additional blob storage modules, change the endpoint to point to the updated host port.
257
257
258
258
## Next steps
259
+
259
260
Learn more about [Azure Blob Storage on IoT Edge](how-to-store-data-blob.md)
260
261
261
262
For more information about how deployment manifests work and how to create them, see [Understand how IoT Edge modules can be used, configured, and reused](module-composition.md).
Copy file name to clipboardExpand all lines: articles/iot-edge/how-to-install-iot-edge-linux.md
+22-23Lines changed: 22 additions & 23 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -15,10 +15,7 @@ ms.author: kgremban
15
15
16
16
The Azure IoT Edge runtime is what turns a device into an IoT Edge device. The runtime can be deployed on devices as small as a Raspberry Pi or as large as an industrial server. Once a device is configured with the IoT Edge runtime, you can start deploying business logic to it from the cloud. To learn more, see [Understand the Azure IoT Edge runtime and its architecture](iot-edge-runtime.md).
17
17
18
-
This article lists the steps to install the Azure IoT Edge runtime on an X64, ARM32, or ARM64 Linux device. Installation packages are provided for Ubuntu Server 16.04, Ubuntu Server 18.04, and Raspbian Stretch. Refer to [Azure IoT Edge supported systems](support.md#operating-systems) for a list of supported Linux operating systems and architectures.
19
-
20
-
>[!NOTE]
21
-
>Support for ARM64 devices is in [public preview](https://azure.microsoft.com/support/legal/preview-supplemental-terms/).
18
+
This article lists the steps to install the Azure IoT Edge runtime on an X64, ARM32, or ARM64 Linux device. We provide installation packages for Ubuntu Server 16.04, Ubuntu Server 18.04, and Raspbian Stretch. Refer to [Azure IoT Edge supported systems](support.md#operating-systems) for a list of supported Linux operating systems and architectures.
22
19
23
20
> [!NOTE]
24
21
> Packages in the Linux software repositories are subject to the license terms located in each package (/usr/share/doc/*package-name*). Read the license terms prior to using the package. Your installation and use of the package constitutes your acceptance of these terms. If you do not agree with the license terms, do not use the package.
@@ -27,6 +24,9 @@ This article lists the steps to install the Azure IoT Edge runtime on an X64, AR
27
24
28
25
Use the following sections to install the most recent version of the Azure IoT Edge runtime onto your device.
29
26
27
+
>[!NOTE]
28
+
>Support for ARM64 devices is in [public preview](https://azure.microsoft.com/support/legal/preview-supplemental-terms/).
29
+
30
30
### Register Microsoft key and software repository feed
31
31
32
32
Prepare your device for the IoT Edge runtime installation.
@@ -66,9 +66,9 @@ Install Microsoft GPG public key
66
66
67
67
### Install the container runtime
68
68
69
-
Azure IoT Edge relies on an [OCI-compatible](https://www.opencontainers.org/) container runtime. For production scenarios, we recommended that you use the [Moby-based](https://mobyproject.org/) engine provided below. It is the only container engine officially supported with Azure IoT Edge. Docker CE/EE container images are compatible with the Moby runtime.
69
+
Azure IoT Edge relies on an [OCI-compatible](https://www.opencontainers.org/) container runtime. For production scenarios, we recommended that you use the [Moby-based](https://mobyproject.org/) engine provided below. The Moby engine is the only container engine officially supported with Azure IoT Edge. Docker CE/EE container images are compatible with the Moby runtime.
70
70
71
-
Perform apt update.
71
+
Update package lists on your device.
72
72
73
73
```bash
74
74
sudo apt-get update
@@ -86,15 +86,15 @@ Install the Moby command-line interface (CLI). The CLI is useful for development
86
86
sudo apt-get install moby-cli
87
87
```
88
88
89
-
If you encounter errors when installing the Moby container runtime, follow the steps to [Verify your Linux kernel for Moby compatibility](#verify-your-linux-kernel-for-moby-compatibility), provided later in this article.
89
+
If you get errors when installing the Moby container runtime, follow the steps to [Verify your Linux kernel for Moby compatibility](#verify-your-linux-kernel-for-moby-compatibility), provided later in this article.
90
90
91
91
### Install the Azure IoT Edge Security Daemon
92
92
93
93
The **IoT Edge security daemon** provides and maintains security standards on the IoT Edge device. The daemon starts on every boot and bootstraps the device by starting the rest of the IoT Edge runtime.
94
94
95
95
The installation command also installs the standard version of the **libiothsm** if not already present.
96
96
97
-
Perform apt update.
97
+
Update package lists on your device.
98
98
99
99
```bash
100
100
sudo apt-get update
@@ -106,53 +106,53 @@ Install the security daemon. The package is installed at `/etc/iotedge/`.
106
106
sudo apt-get install iotedge
107
107
```
108
108
109
-
Once IoT Edge is successfully installed, the output will prompt you to update the configuration file. Follow the steps in the [Configure the security daemon](#configure-the-security-daemon) section to finish provisioning your device.
109
+
Once IoT Edge is successfully installed, the output will prompt you to update the configuration file. Follow the steps in the [Configure the security daemon](#configure-the-security-daemon) section to complete device provisioning.
110
110
111
111
## Install a specific runtime version
112
112
113
113
If you want to install a specific version of Moby and the Azure IoT Edge runtime instead of using the latest versions, you can target the component files directly from the IoT Edge GitHub repository. Use the following steps to get all of the IoT Edge components onto your device: the Moby engine and CLI, the libiothsm, and finally the IoT Edge security daemon. Skip to the next section, [Configure the security daemon](#configure-the-security-daemon), if you do not want to change to a specific runtime version.
114
114
115
-
1. Navigate to the [Azure IoT Edge releases](https://github.com/Azure/azure-iotedge/releases), and find the release version that you want to target.
115
+
1. Navigate to the [Azure IoT Edge releases](https://github.com/Azure/azure-iotedge/releases), and find the release version that you want to target.
116
116
117
117
2. Expand the **Assets** section for that version.
118
118
119
-
3. There may or may not be updates to the Moby engine in any given release. If you see files that start with **moby-engine** and **moby-cli**, use the following commands to update those components. If you don't see any Moby files, go back through the older release assets until you find the most recent version.
119
+
3. There may or may not be updates to the Moby engine in any given release. If you see files that start with **moby-engine** and **moby-cli**, use the following commands to update those components. If you don't see any Moby files, go back through the older release assets until you find the most recent version.
120
120
121
121
1. Find the **moby-engine** file that matches your IoT Edge device's architecture. Right-click on the file link and copy the link address.
122
122
123
-
2. Use the copied link in the following command to install that version of the Moby engine:
123
+
2. Use the copied link in the following command to install that version of the Moby engine:
3. Find the **moby-cli** file that matches your IoT Edge device's architecture. The Moby CLI is an optional component, but can be helpful during development. Right-click on the file link and copy the link address.
129
+
3. Find the **moby-cli** file that matches your IoT Edge device's architecture. The Moby CLI is an optional component, but can be helpful during development. Right-click on the file link and copy the link address.
130
130
131
-
4. Use the copied link in the following command to install that version of the Moby CLI:
131
+
4. Use the copied link in the following command to install that version of the Moby CLI:
Once IoT Edge is successfully installed, the output will prompt you to update the configuration file. Follow the steps in the next section to finish provisioning your device.
155
+
Once IoT Edge is successfully installed, the output will prompt you to update the configuration file. Follow the steps in the next section to complete device provisioning.
156
156
157
157
## Configure the security daemon
158
158
@@ -258,7 +258,7 @@ Examine daemon logs:
258
258
journalctl -u iotedge --no-pager --no-full
259
259
```
260
260
261
-
Run an automated check for the most common configuration and networking errors:
261
+
Run an automated check for the most common configuration and networking errors:
262
262
263
263
```bash
264
264
sudo iotedge check
@@ -292,8 +292,7 @@ Many embedded device manufacturers ship device images that contain custom Linux
292
292
./check-config.sh
293
293
```
294
294
295
-
This will provide a detailed output that contains the status of kernel features that are used by the Moby runtime. You will want to ensure that all items under `Generally Necessary` and `Network Drivers` are enabled to ensure that your kernel is fully compatible with the Moby runtime. If you have identified any missing features, enable them by rebuilding your kernel from source and selecting the associated modules for inclusion in the appropriate kernel .config. Similarly, if you are using a kernel configuration generator like defconfig or menuconfig, find and enable the respective features and rebuild your kernel accordingly. Once you have deployed your newly modified kernel, run the check-config script again to verify that all the required features were successfully enabled.
296
-
295
+
This command provides a detailed output that contains the status of kernel features that are used by the Moby runtime. You will want to ensure that all items under `Generally Necessary` and `Network Drivers` are enabled to ensure that your kernel is fully compatible with the Moby runtime. If you have identified any missing features, enable them by rebuilding your kernel from source and selecting the associated modules for inclusion in the appropriate kernel .config. Similarly, if you are using a kernel configuration generator like defconfig or menuconfig, find and enable the respective features and rebuild your kernel accordingly. Once you have deployed your newly modified kernel, run the check-config script again to verify that all the required features were successfully enabled.
297
296
298
297
## Uninstall IoT Edge
299
298
@@ -305,7 +304,7 @@ Remove the IoT Edge runtime.
305
304
sudo apt-get remove --purge iotedge
306
305
```
307
306
308
-
When the IoT Edge runtime is removed, the container that it created are stopped but still exist on your device. View all containers to see which ones remain.
307
+
When the IoT Edge runtime is removed, the containers that it created are stopped but still exist on your device. View all containers to see which ones remain.
0 commit comments