IoT Central에서 HADR(고가용성 재해 복구) 및 탄력적 크기 조정을 제공하는 의미는?

Azure IoT Central은 확장성과 HADR을 관리하는 aPaaS(application Platform as a Service)입니다. IoT Central 애플리케이션은 수십 만 개의 연결된 디바이스를 지원하도록 크기 조정할 수 있습니다. 디바이스 및 메시지 가격 책정에 대한 자세한 내용은 Azure IoT Central 가격을 참조하세요. 서비스 수준 계약에 대한 자세한 내용은 Azure IoT Central에 대한 SLA를 참조하세요.

이 문서에서는 IoT Central에서 HADR을 크기 조정하고 제공하는 방법에 대한 배경 정보를 제공합니다. 또한 이 문서에는 이러한 기능을 활용하는 방법에 대한 지침도 포함되어 있습니다.

확장성

IoT Central 애플리케이션은 내부적으로 IoT Hub 및 DPS(Device Provisioning Service)와 같은 여러 Azure 서비스를 사용합니다. 이러한 기본 서비스 중 대부분은 다중 테넌트입니다. 그러나 고객 데이터를 완전히 격리하기 위해 IoT Central은 단일 테넌트 IoT 허브를 사용합니다.

IoT Central은 애플리케이션의 부하 프로필에 따라 IoT 허브의 크기를 자동으로 조정합니다. IoT Central은 개별 IoT 허브를 스케일 업하고 애플리케이션의 IoT 허브 수를 스케일 아웃할 수 있습니다. 또한 IoT Central은 다른 기본 서비스의 크기를 자동으로 조정합니다.

고가용성 및 재해 복구

HADR 기능은 IoT Central 애플리케이션을 만든 시기에 따라 달라집니다.

2021년 4월 이전에 만든 애플리케이션

2021년 4월 이전에 만든 일부 애플리케이션은 단일 IoT 허브를 사용합니다. 이러한 애플리케이션의 경우 IoT Central은 HADR 기능을 제공하지 않습니다. IoT 허브를 사용할 수 없게 되면 애플리케이션을 사용할 수 없게 됩니다.

az iot central device manual-failover 명령을 사용하여 애플리케이션에서 여전히 단일 IoT 허브를 사용하는지 확인합니다. 이 명령은 애플리케이션에 단일 IoT 허브가 있는 경우 오류를 반환합니다.

2021년 4월 이후 및 2023년 4월 이전에 만든 애플리케이션

고가용성 디바이스 연결을 위해 IoT Central 애플리케이션에는 항상 둘 이상의 IoT 허브가 있습니다. IoT Central에서 부하 프로필의 변경에 대응하여 애플리케이션의 크기를 조정함에 따라 허브의 수가 증가하거나 감소할 수 있습니다.

또한 IoT Central은 가용성 영역을 사용하여 고가용성을 사용하는 다양한 서비스를 만듭니다.

재해 복구가 필요한 인시던트는 서비스 하위 집합을 사용할 수 없게 되는 것부터 전체 지역을 사용할 수 없게 되는 것까지 다양할 수 있습니다. IoT Central은 인시던트의 특성과 규모에 따라 다양한 복구 프로세스를 따릅니다. 예를 들어 매우 심각한 오류가 발생하여 전체 Azure 지역을 사용할 수 없게 되면 재해 복구 절차에서 애플리케이션을 동일한 지역의 다른 지역으로 장애 조치(failover)합니다.

2023년 4월 이후에 만든 애플리케이션

2023년 4월 이후에 만든 IoT Central 애플리케이션에는 처음에 단일 IoT 허브가 있습니다. IoT 허브를 사용할 수 없게 되면 애플리케이션을 사용할 수 없게 됩니다. 그러나 IoT Central은 애플리케이션의 크기를 자동으로 조정하고 연결된 10,000개의 각 디바이스에 대해 새 IoT 허브를 추가합니다. 디바이스가 10,000개 미만인 애플리케이션에 여러 IoT 허브가 필요한 경우 IoT Central 고객 지원에 요청을 제출합니다.

az iot central device manual-failover 명령을 사용하여 애플리케이션에서 여전히 단일 IoT 허브를 사용하는지 확인합니다. 이 명령은 애플리케이션에 현재 단일 IoT 허브가 있는 경우 오류를 반환합니다.

여러 IoT 허브 사용

자동 크기 조정 및 HADR을 지원함에 따라 애플리케이션의 IoT 허브 인스턴스가 변경될 수 있습니다. 예시:

  • 애플리케이션에서 크기를 조정함에 따라 허브의 수가 증가하거나 감소할 수 있습니다.
  • 허브가 실패하고 사용할 수 없게 될 수 있습니다.
  • 재해 복구 절차에서는 새 허브를 다른 지역에 추가하여 실패한 지역의 허브를 대체할 수 있습니다.

IoT Central에서 애플리케이션의 IoT 허브를 관리하지만, 연결하는 허브를 사용할 수 없는 경우 디바이스에서 연결을 다시 설정할 수 있어야 합니다.

디바이스 프로비전

애플리케이션의 IoT 허브 수가 변경되면 디바이스에서 다른 허브에 연결해야 할 수 있습니다.

디바이스가 IoT Central에 연결되기 전에 해당 디바이스를 서비스에 등록하고 프로비전해야 합니다. 디바이스를 IoT Central 애플리케이션에 추가하면 IoT Central에서 항목을 DPS 등록 그룹에 추가합니다. ID 범위, 디바이스 ID 및 키와 같은 등록 그룹의 정보는 IoT Central UI에 표시됩니다.

디바이스가 IoT Central 애플리케이션에 처음 연결되면 DPS에서 등록 그룹의 연결된 IoT 허브 중 하나에서 디바이스를 프로비전합니다. 그러면 디바이스가 해당 IoT 허브와 연결됩니다. DPS는 할당 정책을 사용하여 애플리케이션의 IoT 허브 간에 프로비전 부하를 분산합니다. 이 프로세스는 각 IoT 허브에 비슷한 수의 프로비전된 디바이스가 있는지 확인합니다.

IoT Central에서 등록하고 프로비전하는 방법에 대한 자세한 내용은 IoT Central 디바이스 연결 가이드를 참조하세요.

디바이스 연결

DPS에서 디바이스를 IoT 허브에 프로비전하면 디바이스에서 항상 해당 허브에 연결하려고 시도합니다. 디바이스가 프로비전된 IoT 허브에 연결할 수 없는 경우 IoT Central 애플리케이션에 연결할 수 없습니다. 이 시나리오를 처리하려면 디바이스를 다른 허브로 다시 프로비전하는 다시 시도 전략이 디바이스 펌웨어에 포함되어야 합니다.

디바이스 펌웨어에서 연결 오류를 처리하고 다른 허브에 연결하는 방법에 대한 자세한 내용은 모범 사례를 참조하세요.

디바이스 펌웨어에서 연결 오류를 처리할 수 있는지 확인하는 방법에 대한 자세한 내용은 테스트 장애 조치(failover) 기능을 참조하세요.

데이터 내보내기

IoT Central 애플리케이션에서 다른 사용자 구성 서비스를 사용하는 경우가 많습니다. 예를 들어 데이터를 서비스(예: Azure Event Hubs 및 Azure Blob Storage)로 지속적으로 내보내도록 IoT Central 애플리케이션을 구성할 수 있습니다.

구성된 데이터 내보내기에서 대상에 쓸 수 없는 경우 IoT Central은 최대 15분 동안 데이터를 다시 전송하려고 시도합니다. 그 후 IoT Central에서 대상을 실패로 표시합니다. 실패한 대상은 쓰기 가능한지 확인하기 위해 주기적으로 확인됩니다.

데이터 내보내기를 사용하지 않도록 설정했다가 다시 사용하도록 설정하여 IoT Central에서 실패한 내보내기를 다시 시작하도록 강제할 수 있습니다.

사용하는 데이터 내보내기 대상 서비스에 대한 고가용성 및 확장성 모범 사례를 검토합니다.

제한 사항

현재 IoT Edge 디바이스는 IoT 허브 간에 이동할 수 없습니다.

다음 단계

이제 Azure IoT Central의 확장성과 고가용성에 대해 알아보았으므로 제안되는 다음 단계에서는 Azure IoT Central의 할당량 및 제한에 대해 알아봅니다.