Technical Documentation
Version 2023.1
Search…
⌃K

Install VPX Agent on X86/NVIDIA Server

Install NVIDIA drivers and the Docker engine

Check our system requirements first!
After you followed the installation guidelines you must be able to get a similar output
docker run --rm --gpus all nvidia/cuda:11.6.2-base-ubuntu20.04 nvidia-smi
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 470.86 Driver Version: 470.86 CUDA Version: 11.6 |
|-------------------------------+----------------------+----------------------+
| GPU Name Persistence-M| Bus-Id Disp.A | Volatile Uncorr. ECC |
| Fan Temp Perf Pwr:Usage/Cap| Memory-Usage | GPU-Util Compute M. |
| | | MIG M. |
|===============================+======================+======================|

Install Azure IoTEdge

Install IotEdge 1.4 (only the package aziot-edge is required)
Skip the container engine installation (you did that already)

Configure Azure IotEdge

You will receive a ZIP file from Swarm with configuration files. (Replace $ID with the device ID you received from SWARM)
ID=<DEVICE-ID>
sudo mkdir /opt/swarm/
sudo mkdir /opt/swarm/config
sudo mkdir -p /etc/iotedge/
sudo cp $ID/VPX-$ID/config.yaml /etc/iotedge/config.yaml
sudo chown iotedge:iotedge /etc/iotedge/config.yaml
sudo cp $ID/VPX-$ID/config.toml /etc/aziot/config.toml
sudo mkdir -p /var/lib/iotedge/hsm/
sudo cp $ID/all/azure-production-certificates/* /var/lib/iotedge/hsm/
sudo chown aziotcs:aziotcs /var/lib/iotedge/hsm/iot-edge-device-SwarmEdgeDeviceCA-full-chain.cert.pem
sudo chown aziotcs:aziotcs /var/lib/iotedge/hsm/swarm-iot.root.ca.cert.pem
sudo chown aziotks:aziotks /var/lib/iotedge/hsm/iot-edge-device-SwarmEdgeDeviceCA.key.pem
sudo iotedge config apply -c '/etc/aziot/config.toml'
At this point check the IotEdge logs for any errors
iotedge system logs -- -f
You will now see your deployment in the SWARM Control Center as "Unnamed Device" with the registration ID:
At this stage, the IoT Edge runtime will pull the docker images and once finished the device can be configured in the Control Center.
docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
118c96889ec7 swarm.azurecr.io/curiosity-x64-tensorrt:6.6.33 "/usr/local/bin/nvid…" 6 days ago Up 6 days 0.0.0.0:8090->8090/tcp, :::8090->8090/tcp curiosity
95d63beb336e swarm.azurecr.io/azure-module-x64:1.7.1 "java -jar app.jar" 6 days ago Up 6 days azure-module
3003fd8db258 mcr.microsoft.com/azureiotedge-hub:1.1.15 "/bin/sh -c 'echo \"$…" 3 months ago Up 4 weeks 0.0.0.0:443->443/tcp, :::443->443/tcp, 0.0.0.0:5671->5671/tcp, :::5671->5671/tcp, 0.0.0.0:8883->8883/tcp, :::8883->8883/tcp edgeHub
6f469d38d91d mcr.microsoft.com/azureiotedge-metrics-collector:1.0.9 "/bin/sh -c 'echo \"$…" 3 months ago Up 3 months azure-monitor
88d10c824af0 mcr.microsoft.com/azureiotedge-agent:1.1.15 "/bin/sh -c 'exec /a…" 3 months ago Up 3 months edgeAgent
Next steps: Configure your use case.