# Adding Edge Device

### Create a device configuration

To provision a device in Tricloud Nexus, the first thing to do is to create a configuration for the device.

1. First select **Configurations** under the **Management** section in the navigation menu.
2. Then click **Add** in the **Devices** toolbar.
3. In the **New Device Configuration** dialog enter a unique device id (*NOTE: a device id can only contain the characters A-Z, a-z, 0-9, -, \_*) and then click **Save**.
4. The device configuration will appear under the **Unprovisioned** device list<img src="/files/E5nWxtEKfFKDnPeOUQbR" alt="" data-size="original">

### Provision the device

Once the device configuration has been created, the next step is to provision the device and connect it to Tricloud Nexus.

1. Go to **Settings** under the newly created device configuration.
2. Select **Provision Device**.
3. In the **Provision a Device** dialog, first select the device OS (*Linux or Windows*) and then select the variant and version.
4. Then select a Provisioning Endpoint, which in most scenarios is already pre-selected and then select an Enrollment option, which this quick-start guide assumes is set to *Symmetric Key* attestation mechanism.
5. Then follow the on-screen instructions for:
   1. Prerequisites: login and download of the device installation script
   2. Installation: Runs the installation and provisioning script
   3. Verification: Steps to ensure that the device is provisioned and connected successfully\\

      <figure><img src="/files/maAIxPOyJXvRqMG3bRx5" alt=""><figcaption></figcaption></figure>

### Verify Device Connectivity

The verification step in the provisioning dialog will test outbound connectivity from the device to the platform. It is also possible to verify connectivity from the Management Portal. Follow the steps to verify connectivity.

1. Go to **Monitoring** under **Operations** section in the navigation menu.
2. Expand the device tree and select the newly provisioned device.
3. Click **Ping Device** in the device toolbar.\
   ![](/files/isOsTIQZfFGx7Sb6uhrh)
4. A dialog will then show if the platform has connectivity to the device as shown here:\
   \\

   <figure><img src="/files/myRKdw4fAy1TKGR4YJvW" alt=""><figcaption><p>Dialog showing the result of pinging the device</p></figcaption></figure>
5. Click **Ok** to close the dialog.

You have now provisioned a device and can continue to [create an Asset Hierarchy](/introduction/quick-start-guide/create-asset-hierarchy-with-emulated-data.md).

***

## Additional Setup

To ensure successful device provisioning and connectivity to Azure, the following section describes additional requirements.

### Hostname Allow-list

In order to provision a device, deploy modules and ingest data to Azure, a set of public endpoints needs to be whitelisted for outbound traffic from the edge device. This list is an example and will need to be updated to the specific installation of the platform.

<table><thead><tr><th width="205">Name</th><th width="481">Purpose</th><th width="339">Hostname</th><th>Port(s)</th></tr></thead><tbody><tr><td>Tricloud Nexus Support Files</td><td>Contains installation files used during device provisioning.</td><td>tricloudnexussupport.blob.core.windows.net</td><td>443</td></tr><tr><td>Microsoft Linux Package Repository</td><td>Official Linux package repository for IoT Edge runtime binaries.</td><td><a href="https://packages.microsoft.com/">packages.microsoft.com</a></td><td>443</td></tr><tr><td>Microsoft Artifact Registry</td><td>Official Artifact Registry for IoT Edge system container images.</td><td><a href="https://mcr.microsoft.com/">mcr.microsoft.com</a></td><td>443</td></tr><tr><td>Official Tricloud Nexus Container Registry</td><td>Official Container Registry for Tricloud Nexus container images.</td><td>tricloud.azurecr.io</td><td>443</td></tr><tr><td>Azure IoT Hub Device Provisioning Service</td><td>Instance specific Azure resource, used to connect devices to the platform.</td><td>global.azure-devices-provisioning.net,<br>&#x3C;instancename>.azure-devices-provisioning.net</td><td>443</td></tr><tr><td>Azure IoT Hub</td><td>Instance specific IoT Hub used for device management and data ingestion.</td><td>&#x3C;instancename>.azure-devices.net</td><td>443, 5671, 8883</td></tr><tr><td>Azure Container Registry</td><td>Instance specific container registry used by edge devices to pull container images.</td><td>&#x3C;instancename>.azurecr.io</td><td>443</td></tr><tr><td>Azure Storage Account</td><td>Instance specific cloud storage used for data ingestion.</td><td>&#x3C;instancename>.blob.core.windows.net</td><td>443</td></tr></tbody></table>


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.tricloudnexus.io/management-portal/management/provisioning/adding-edge-device.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
