Configurar o simulador de OPC PLC para trabalhar com o Agente de OPC UA do Azure IoT Versão Prévia
Importante
O recurso Pré-visualização de Operações do Azure IoT — habilitado pelo Azure Arc — está atualmente em VERSÃO PRÉVIA. Você não deve usar esse software em versão prévia em ambientes de produção.
Veja os Termos de Uso Complementares para Versões Prévias do Microsoft Azure para obter termos legais que se aplicam aos recursos do Azure que estão em versão beta, versão prévia ou que, de outra forma, ainda não foram lançados em disponibilidade geral.
Neste artigo, você aprenderá a configurar e conectar o simulador de OPC PLC. Esse simulador simula um servidor de OPC UA com vários nós que geram anomalias e dados aleatórios. Você pode configurar nós definidos pelo usuário. O simulador de OPC UA permite que você teste o processo de gerenciamento de ativos de OPC UA com o Portal de Operações do Azure IoT (versão prévia) ou o Azure IoT Akri Versão Prévia.
Pré-requisitos
Uma instância implantada do recurso Operações do Azure IoT Versão Prévia. Para implantar o recurso Operações do Azure IoT para fins de demonstração e exploração, confira Início Rápido: Implantar o recurso Operações do Azure IoT — em um cluster do Kubernetes habilitado para Arc. Se você implantar o recurso Operações do Azure IoT conforme descrito, a instalação incluirá o simulador de OPC PLC.
Implantar o simulador de PLC OPC
Essa seção mostra como implantar o simulador de OPC PLC se você não o incluiu quando implantou o recurso Operações do Azure IoT pela primeira vez.
A etapa a seguir reduz o nível de segurança do OPC PLC para que ele aceite conexões do Azure Iot OPC UA Broker ou de qualquer cliente sem uma operação explícita de confiança de certificado de pares.
Importante
Não use o exemplo a seguir na produção, use-o apenas para fins de simulação e teste.
Execute o seguinte código para atualizar a implantação do agente OPC UA e aplicar as novas configurações:
az k8s-extension update \
--version 0.3.0-preview \
--name opc-ua-broker \
--release-train preview \
--cluster-name <cluster-name> \
--resource-group <azure-resource-group> \
--cluster-type connectedClusters \
--auto-upgrade-minor-version false \
--config opcPlcSimulation.deploy=true \
--config opcPlcSimulation.autoAcceptUntrustedCertificates=true
O simulador de OPC PLC é executado como um pod separado no namespace azure-iot-operations
. O nome do pod se parece com opcplc-000000-7b6447f99c-mqwdq
.
Configurar a confiança mútua entre o Agente de OPC UA do Azure IoT e o OPC PLC
Para saber mais sobre a confiança mútua em OPC UA, confira Infraestrutura de certificados para o Agente de OPC UA do Azure IoT.
O certificado da instância de aplicativo do simulador de OPC PLC é um certificado autoassinado gerenciado pelo cert-manager e armazenado no segredo do Kubernetes do aio-opc-ua-opcplc-default-application-cert-000000
.
Para configurar a confiança mútua entre o Agente de OPC UA do Azure IoT e o simulador de OPC PLC:
Obtenha o certificado e o envie por push para o Azure Key Vault:
kubectl -n azure-iot-operations get secret aio-opc-ua-opcplc-default-application-cert-000000 -o jsonpath='{.data.tls\.crt}' | \ base64 -d | \ xargs -0 -I {} \ az keyvault secret set \ --name "opcplc-crt" \ --vault-name <your-azure-key-vault-name> \ --value {} \ --content-type application/x-pem-file
Adicione o certificado ao recurso de
aio-opc-ua-broker-trust-list
personalizada no cluster. Use um cliente do Kubernetes, comokubectl
, para configurar o segredo doopcplc.crt
na matriz de objetosSecretProviderClass
no cluster.O exemplo a seguir mostra um recurso personalizado
SecretProviderClass
completo que contém o certificado do simulador em um arquivo codificado em PEM com a extensão .crt:apiVersion: secrets-store.csi.x-k8s.io/v1 kind: SecretProviderClass metadata: name: aio-opc-ua-broker-trust-list namespace: azure-iot-operations spec: provider: azure parameters: usePodIdentity: 'false' keyvaultName: <your-azure-key-vault-name> tenantId: <your-azure-tenant-id> objects: | array: - | objectName: opcplc-crt objectType: secret objectAlias: opcplc.crt
Observação
O tempo necessário para projetar certificados do Azure Key Vault no cluster depende do intervalo de sondagem configurado.
A relação de confiança entre o Agente de OPC UA do Azure IoT e o simulador de OPC PLC agora está estabelecida e você pode criar um AssetEndpointProfile
para se conectar ao seu simulador de OPC PLC.
Opcionalmente, configure seu AssetEndpointProfile
sem estabelecer confiança mútua
Opcionalmente, você pode configurar um perfil de ponto de extremidade de ativo sem estabelecer uma confiança mútua entre o Agente de OPC UA e o simulador de OPC PLC. Se você entender os riscos, poderá desativar a autenticação para fins de teste.
Cuidado
Não configure para "sem autenticação" em ambientes de produção ou pré-produção. Expor seu cluster à Internet sem autenticação pode levar a acesso não autorizado e até a ataques DDOS.
Para permitir que seu perfil de ponto de extremidade de ativo se conecte a qualquer servidor de OPC PLC sem estabelecer uma confiança mútua, use a configuração additionalConfiguration
para alterar a configuração AssetEndpointProfile
.
Corrija o ponto de extremidade do ativo com autoAcceptUntrustedServerCertificates=true
:
ENDPOINT_NAME=<name-of-you-endpoint-here>
kubectl patch AssetEndpointProfile $ENDPOINT_NAME \
-n azure-iot-operations \
--type=merge \
-p '{"spec":{"additionalConfiguration":"{\"applicationName\":\"'"$ENDPOINT_NAME"'\",\"security\":{\"autoAcceptUntrustedServerCertificates\":true}}"}}'
Conteúdo relacionado
Comentários
https://aka.ms/ContentUserFeedback.
Em breve: Ao longo de 2024, eliminaremos os problemas do GitHub como o mecanismo de comentários para conteúdo e o substituiremos por um novo sistema de comentários. Para obter mais informações, consulteEnviar e exibir comentários de