적용 대상: IoT Edge 1.5
중요합니다
IoT Edge 1.5 LTS는 지원되는 릴리스입니다. IoT Edge 1.4 LTS는 2024년 11월 12일부터 수명이 종료됩니다. 이전 릴리스에 있는 경우 IoT Edge 업데이트를 참조하세요.
Azure IoT Edge 런타임은 디바이스를 IoT Edge 디바이스로 바꿉니다. Raspberry Pi만큼 작거나 산업용 서버만큼 큰 디바이스에 런타임을 배포합니다. IoT Edge 런타임을 설정한 후 클라우드에서 디바이스에 비즈니스 논리를 배포합니다.
IoT Edge 런타임의 작동 방식과 해당 구성 요소에 대한 자세한 내용은 Azure IoT Edge 런타임 및 해당 아키텍처를 이해하세요.
이 문서에서는 제공된 디바이스 연결 문자열을 사용하여 Azure IoT Edge 런타임이 설치되고 구성된 Ubuntu 가상 머신을 배포하는 단계를 나열합니다. 배포는 iotedge-vm-deploy 프로젝트 리포지토리의 cloud-init 기반 Azure Resource Manager 템플릿을 사용합니다.
첫 번째 부팅 시 가상 머신은 cloud-init를 사용하여 최신 버전의 Azure IoT Edge 런타임을 설치합니다. 또한 런타임이 시작되기 전에 제공된 연결 문자열을 설정하므로 SSH 또는 원격 데스크톱 세션을 시작하지 않고도 IoT Edge 디바이스를 빠르게 설정하고 연결할 수 있습니다.
[Azure에 배포] 단추를 사용하여 배포
Azure에 배포 단추를 사용하면 GitHub에서 Azure Resource Manager 템플릿을 신속하게 배포할 수 있습니다. 이 섹션에서는 iotedge-vm-deploy 프로젝트 리포지토리에서 Azure에 배포 단추를 사용하는 방법을 보여 줍니다.
iotedge-vm-deploy Azure Resource Manager 템플릿을 사용하여 Azure IoT Edge 지원 Linux VM을 배포합니다. 시작하려면 다음 단추를 선택합니다.
새 창에서 사용 가능한 양식 필드의 값을 입력합니다.
필드 설명 구독 가상 머신을 배포할 활성 Azure 구독입니다. 리소스 그룹 가상 머신 및 관련 리소스를 포함할 기존 또는 새 리소스 그룹입니다. 지역 가상 머신을 배포하는 지리적 지역 입니다. 이 값은 기본적으로 선택한 리소스 그룹의 위치로 설정됩니다. DNS 레이블 접두사 가상 머신의 호스트 이름 앞에 접두사를 지정하는 데 필요한 값입니다. 관리 사용자 이름 배포에 대한 루트 권한이 있는 사용자 이름입니다. 디바이스 연결 문자열 IoT Hub에서 만든 디바이스에 대한 디바이스 연결 문자열입니다. VM 크기 배포할 가상 머신의 크기 입니다. Ubuntu OS 버전 기본 가상 머신에 설치할 Ubuntu OS 버전입니다. 인증 유형 기본 설정에 따라 sshPublicKey 또는 암호를 선택합니다. 관리자 암호 또는 키 선택한 인증 유형에 따라 SSH 공개 키 또는 암호 값입니다. 용어를 검토하려면 선택한
Next : Review + create
다음 만들기 를 선택하여 배포를 시작합니다.배포가 성공적으로 완료되었는지 확인합니다. 가상 머신 리소스는 선택한 리소스 그룹에 배포됩니다.
vm-0000000000000
형식의 컴퓨터 이름을 확인합니다. 또한 연결된 DNS 이름을 확인합니다. 이는<dnsLabelPrefix>
<___location>
형식의 cloudapp.azure.com입니다.Azure Portal에서 새 가상 머신의 개요 섹션에서 DNS 이름을 찾을 수 있습니다.
설정 후에 SSH를 이 VM에 연결하려면 명령에서 연결된
ssh <adminUsername>@<DNS_Name>
을 사용합니다.
Azure CLI에서 배포
다음을 사용하여 Azure CLI iot 확장을 설치했는지 확인합니다.
az extension add --name azure-iot
다음으로, 데스크톱에서 Azure CLI를 사용하는 경우 다음에 로그인하여 시작합니다.
az login
구독이 여러 개인 경우 사용할 구독을 선택합니다.
구독 나열:
az account list --output table
사용하려는 구독의 SubscriptionID 필드를 복사합니다.
복사한 ID로 작업 구독을 설정합니다.
az account set -s <SubscriptionId>
새 리소스 그룹을 만들거나, 다음 단계에서 기존 리소스 그룹을 지정합니다.
az group create --name IoTEdgeResources --___location westus2
새 가상 머신을 만듭니다.
authenticationType을
password
로 설정할 때 다음 예제를 사용하십시오.az deployment group create \ --resource-group IoTEdgeResources \ --template-uri "https://raw.githubusercontent.com/Azure/iotedge-vm-deploy/main/edgeDeploy.json" \ --parameters dnsLabelPrefix='my-edge-vm1' \ --parameters adminUsername='<REPLACE_WITH_USERNAME>' \ --parameters deviceConnectionString=$(az iot hub device-identity connection-string show --device-id <REPLACE_WITH_DEVICE-NAME> --hub-name <REPLACE-WITH-HUB-NAME> -o tsv) \ --parameters authenticationType='password' \ --parameters adminPasswordOrKey="<REPLACE_WITH_SECRET_PASSWORD>"
SSH 키로 인증하려면 의
sshPublicKey
을 지정한 다음, adminPasswordOrKey 매개 변수에서 SSH 키의 값을 제공합니다. 다음 예제를 참조하십시오.#Generate the SSH Key ssh-keygen -m PEM -t rsa -b 4096 -q -f ~/.ssh/iotedge-vm-key -N "" #Create a VM using the iotedge-vm-deploy script az deployment group create \ --resource-group IoTEdgeResources \ --template-uri "https://raw.githubusercontent.com/Azure/iotedge-vm-deploy/main/edgeDeploy.json" \ --parameters dnsLabelPrefix='my-edge-vm1' \ --parameters adminUsername='<REPLACE_WITH_USERNAME>' \ --parameters deviceConnectionString=$(az iot hub device-identity connection-string show --device-id <REPLACE_WITH_DEVICE-NAME> --hub-name <REPLACE-WITH-HUB-NAME> -o tsv) \ --parameters authenticationType='sshPublicKey' \ --parameters adminPasswordOrKey="$(< ~/.ssh/iotedge-vm-key.pub)"
배포가 성공적으로 완료되었는지 확인합니다. 가상 머신 리소스는 선택한 리소스 그룹에 배포되어야 합니다. 컴퓨터 이름을 기록해 둡니다. 형식
vm-0000000000000
입니다. 또한 .형식<dnsLabelPrefix>
인 연결된<___location>
기록해 둡다. cloudapp.azure.com.공용 SSH 항목의 일부로 출력 섹션의 이전 단계의 JSON 형식 출력에서 DNS 이름을 가져올 수 있습니다. 이 값을 사용하여 새로 배포된 컴퓨터에 SSH합니다.
"outputs": { "public SSH": { "type": "String", "value": "ssh <adminUsername>@<DNS_Name>" } }
Azure Portal에서 새로 배포된 가상 머신의 개요 섹션에서 DNS 이름을 가져올 수도 있습니다.
설정 후에 SSH를 이 VM에 연결하려면 명령에서 연결된
ssh <adminUsername>@<DNS_Name>
을 사용합니다.
다음 단계
이제 런타임이 설치된 IoT Edge 디바이스를 프로비전했으므로 IoT Edge 모듈을 배포합니다.
IoT Edge 런타임을 설치하는 데 문제가 있는 경우 문제 해결 페이지를 참조하세요.
기존 설치를 최신 버전의 IoT Edge로 업데이트하려면 IoT Edge 보안 디먼 및 런타임 업데이트를 참조하세요.
SSH 또는 기타 인바운드 연결을 통해 VM에 액세스하기 위해 포트를 열려면 Linux VM에 대한 포트 및 엔드포인트 열기에 대한 Azure Virtual Machines 설명서를 참조하세요.