Step 1. Required Resources
The instructions in this help center for the ThingWorx Azure Industrial IoT (IIoT) OPC UA integration assume that you have worked with Azure Industrial IoT (IIoT) and that you have set up OPC UA Servers and clients. Although this document specifically references setting up a ThingWorx Kepware Server (TKS) to communicate with Azure IIoT, this Azure IIoT integration is designed in such a way that you can use any OPC UA Server, such as TKS. For best results, it is strongly recommended that you use TKS, version 6.9, the first time that you follow the procedures to set up the integration. When it is running as expected, use your own OPC UA server.
If you are a customer of PTC Cloud Services, the management, setup, and ongoing maintenance of the environment is handled for you. This means that you do not need to install, configure, and manage a ThingWorx Platform or a ThingWorx Azure IoT Hub Connector. You can use ThingWorx Composer and ThingWorx Mashup Builder to manage your edge devices as ThingWorx Industrial Gateway Things. For complete information about ThingWorx Industrial Gateway Things, refer to the following documentation:
If you plan to deploy the integration in a non-PTC Cloud environment, and configure the Azure IIoT resources in the Azure Cloud for this integration, it is important to understand that the documentation in this section links to the Microsoft Azure documentation for the detailed procedures. For ThingWorx Platform installation and configuration information, refer to the Installing ThingWorx section of the ThingWorx Platform 9 Help Center. For installation and configuration of the Connector, this section of the Help Center refers to the procedures in the Getting an Azure IoT Hub Connector Up and Running section of this help center. These procedures provide the additional configuration information you need for the Connector when running with the ThingWorx Azure IIoT OPC UA integration.
Required Resources for Deploying Azure Resources
The deployment of Azure resources for the ThingWorx Azure IIoT OPC UA integration requires multiple resources. The following table lists the requirements, describes specific information that you need, and where applicable links to procedures to follow so that you are prepared for the setup of this integration.
You do not need to install the Azure Industrial IoT (IIoT) Stack at this time. It is part of the remaining Step topics. Follow Step 2 through Step 9, to complete the installation of this Azure IIoT OPC UA integration with ThingWorx.
Required Resource
The tested versions of the Microsoft Azure IIoT Stack
Version 2.8 of the Microsoft Azure IIoT Stack
Do not attempt to "install" the stack before you begin. You will do so as part of Step 2. Setting Up Application Registrations.
PTC supports and tests only version 2.8 of the Microsoft Azure IIoT Stack. Make sure that you use this version with the ThingWorx Microsoft Azure Industrial IoT (IIoT) OPC UA integration and versions 4.1.x and 4.2.x of the ThingWorx Azure IoT Hub Connector. If you are using a previous version of the Azure IIoT Stack, follow the instructions in "Upgrading the Azure IIoT Stack" before starting the procedures in Step 2.
Operating system: Windows 64-bit or Linux 64-bit
On your computer, you need the following applications:
Windows PowerShell — Version 5.1 , or PowerShell 6 on Linux. For PowerShell on Linux
Windows PowerShell Execution policy set to allow scripts to run
.NET Framework v.4.7.2 or later
Git v.2.28.0 — To download the latest version for your operating system, go to git Downloads
Azure PowerShell — Refer to Signing In to Azure and Setting a Subscription
Azure CLI —The current version is 2.10.1. To install it, refer to Install the Azure CLI
To deploy the Azure Industrial IoT (IIoT) Microservices, you will need
kubectl, client - the latest GA release that is not a preview release. You'll use this client to manage your Azure Kubernetes Cluster locally
Helm 3.1.2 or later. You will use version 0.3.1 of the Microsoft Helm chart for the deployment.
To view telemetry and to troubleshoot, you need Microsoft Visual Studio Code, v.1.48 or later. You should install the Azure IoT extension You can also view the documentation stored in the Azure Industrial IoT repository through Visual Studio Code. If you are the system administrator, Postman v.7.30.1 is useful for troubleshooting. Setup steps are required to use Postman for troubleshooting. Refer to Setting Up to Troubleshoot with Postman.
Make sure that you have the proper privileges to run scripts in the VM. For a Windows VM, refer to Windows PowerShell and Execution Policy. For a Linux VM refer to the documentation for the VM.
Windows PowerShell — Version 5.1 s recommended for the deployment procedures. If you are on Windows 10, version 1607, you have this version installed. Do NOT use version 7, as it is known to cause errors.
For information about PowerShell on Linux, refer to Installing PowerShell on Linux.
Git — must be installed on your computer to be able to clone the Industrial IoT repository from the GitHub resource from a Windows Command Prompt. If you have Git Bash on your Windows computer, you can clone the repository in the Windows Command Prompt. If you need instructions for installing Git on Windows, refer to the article, How to Install and Use Git on Windows. To install on Linux, use the preferred package manager of your Linux distribution.
Kubernetes command-line tool, kubectl — Refer to the kubernetes web site, Install and Set Up kubectl.
Helm installation — Refer to Installing Helm.
Microsoft Visual Studio Code — To download, go to
Postman — To download, go to
Azure subscription
For the IIoT deployment, make sure that you have your Subscription ID and the Tenant ID. You will need them to set the subscription context in Azure. If you have multiple subscriptions, make sure that you have the IDs for the subscription that you plan to use for the Azure IIoT OPC UA integration with ThingWorx.
Visual Studio Subscription (formerly called MSDN subscriptions)
Azure IoT Edge runtime installed and running. Azure documentation has a tutorial for installing Azure IoT Edge runtime
How to Setup a Local Gateway for Industrial Scenarios — Refer to the section, " Create an IoT Edge Instance and Install the IoT Edge Runtime". You can use Microsoft Visual Studio Code and the Azure IoT Extension to set up IoT Edge Devices and modules.
An OPC UA server such as ThingWorx Kepware Server (TKS)
The OPC UA Server is installed, configured, running, and visible on the network to the Azure IoT Edge Runtime.
For instructions to install TKS, refer to the topic, Industrial Connections Example in the ThingWorx Platform 9 Help Center.