IoT Platformは、インスタンス移行機能を提供します。 この機能を使用して、ルールエンジンの製品、デバイス、およびデータを、以前のバージョンのパブリックインスタンスからEnterprise Editionインスタンスに移行できます。 このトピックでは、インスタンスの移行を実装するためにビジネスシステムを変更する方法について説明し、移行ソリューションを提供します。 この例では、共有サービスを提供する企業が使用されます。
背景情報
エンタープライズAの共有サービスプラットフォームは、IoT platformのデバイス管理機能を使用し、スマートパークやスマートキャンパスなどの複数のビジネスシナリオで共有サービスを提供します。 共用サービスには、共用洗濯機、共用ドライヤー、共用マッサージチェアが含まれます。
以前のバージョンのパブリックインスタンスと比較して、IoT PlatformのEnterprise Editionインスタンスは、より多くの機能、より優れた拡張性、より高い安定性、および顧客により適したビジネスモデルを提供します。 詳細については、「パブリックインスタンスとEnterprise Editionインスタンスの違い」をご参照ください。
特定の顧客が提供する共有サービスプラットフォーム関連プロジェクトの要件を満たすために、適切なタイプのEnterprise Editionインスタンスを選択できます。 これにより、リソースの分離を実装し、共有サービスプラットフォームの安定性を確保し、プロジェクトの評価コストを削減できます。 詳細については、「Enterprise Editionインスタンスの種類」をご参照ください。
以前のバージョンのIoT Platformパブリックインスタンスは、IoT Platform Enterprise Editionインスタンスがリリースされる前にリリースされます。 したがって、既存のデバイスは以前のバージョンのパブリックインスタンスで実行されます。 リソースの分離を実装し、安定性を確保し、プロジェクトコストを削減するために、デバイスデータをパブリックインスタンスからEnterprise Editionインスタンスに移行できます。
シナリオ

シーケンス番号 | 説明 |
1 ~ 1.2 | 共有デバイスをIoT Platformに接続し、デバイスデータを送信します。 |
アプリケーションでは、Advanced Message Queuing Protocol (AMQP) サーバー側サブスクリプションまたはデータ転送機能を使用して、デバイスのステータスなど、デバイスによって送信されたデータを受信します。 | |
データベースは、転送されたデバイスデータまたはサブスクライブされたデバイスデータをリアルタイムで保存します。 | |
2 ~ 2.2 | 共有サービスプラットフォームが提供するアプリを使用してQRコードをスキャンし、認証と承認を完了した後、共有デバイスのステータスを確認できます。 次に、顧客はアプリを使用して共有デバイスにコマンドを送信し、共有サービスを取得できます。 説明 認証が成功すると、アプリは共有サービスプラットフォームに接続され、課金が開始されます。 |
アプリケーションが顧客からコマンドを受け取り、IoT Platformのデバイス管理サービスを呼び出して、デバイス上で共有サービスを開始します。 | |
デバイスが実行中または共有サービスのプロセスが完了すると、デバイスはデバイスのステータスをIoT Platformに送信します。 IoT Platformは、データ転送機能を使用して、デバイスステータスのデータをアプリケーションに同期します。 その後、アプリケーションはデータベースにデータを保存できます。 共有サービスのプロセスが完了すると、共有サービスプラットフォームはアプリにPUSHメッセージを送信します。 このメッセージは、共有サービスのプロセスが完了したことを顧客に伝え、課金の詳細を含む。 |
移行ソリューション
インスタンスの移行プロセスの詳細については、「使用方法の注意事項」をご参照ください。 共有デバイスに関連するビジネスシステムを評価し、前述の移行プロセスに基づいて移行ソリューションを作成する必要があります。
ビジネスシステムの変更
ビジネスシステムを評価した後、ビジネスシナリオに基づいて特定の項目を変更する必要があります。 これにより、デバイスは、デバイスの移行後に期待どおりにIoT Platformと通信できます。
項目 | 解決策 | 参考資料 |
AMQPサーバー側サブスクリプション | SDKを使用してAMQPクライアントをIoT Platformに接続する場合は、ターゲットEnterprise EditionインスタンスのIDとエンドポイントを指定する必要があります。 次に、新しいAMQPクライアントを設定します。 段階的移行を実行するときは、最新のコンシューマーグループIDを指定し、新しいAMQPクライアントを開始します。 前のAMQPクライアントを同時に開始する必要があります。 これにより、ソースパブリックインスタンスとターゲットEnterprise Editionインスタンスからデータを受信するために、2つのAMQPクライアントが同時に実行されます。 これにより、データの損失を防ぎます。 | |
データ転送 | パブリックインスタンスのデータ転送ルールを設定します。
| |
IoT Platform APIコール | ビジネス要件に基づいてアプリケーションを開発する必要があります。 IoT Platform APIを呼び出す前に、データベースのすべてのテーブルを照会して、Enterprise EditionインスタンスのIDを取得する必要があります。 次に、IotInstanceIdパラメーターをEnterprise EditionインスタンスのIDに設定し、API操作を呼び出します。 |
インスタンスの移行
業務システムを変更してアプリケーションをリリースした後、IoT Platformのインスタンス移行機能を使用して、パブリックインスタンスの共有デバイスを移行できます。 次の図に、移行プロセスを示します。
シーケンス番号 | 手順 | 説明 |
1 ~ 1.2 | パブリックインスタンスから移行する共有デバイスをデバッグします。 | 顧客が共有サービスプラットフォームのアプリを使用して共有デバイスから共有サービスを取得すると、ビジネスアプリケーションはパブリックインスタンスのデバイスに関する情報を照会します。 IoT Platform API操作を呼び出して、インスタンスIDを指定する必要なく、Alibaba Cloudゲートウェイ経由で移行するデバイスを管理できます。 |
2 ~ 2.5 | インスタンスの移行を開始するには、次の手順を実行します。 | IoT Platformコンソールで、インスタンス移行タスクを作成して開始し、段階的移行を実行します。
|
3 | IoT Platformコンソールで、完全移行タスクを開始して、指定されたプロダクトのすべてのデバイスをEnterprise Editionインスタンスに移行します。 完全移行プロセスは、段階的移行プロセスと同じです。 説明 完全移行タスクは、段階的移行タスクを使用して移行されるデバイスを除いて、すべてのデバイスに適用されます。 | |
4 ~ 4.2 | Enterprise Editionインスタンスに移行された共有デバイスを確認します。 | 顧客は、共有サービスプラットフォームのアプリを使用して、デバイスが属するインスタンスのIDを取得する必要なく、共有サービスから共有サービスを取得できます。 ビジネスアプリケーションは、Enterprise Editionインスタンスのデバイスに関する情報を照会します。 IoT Platform API操作を呼び出して、Alibaba Cloudゲートウェイ経由で移行済みデバイスを管理する場合は、インスタンスIDを指定する必要があります。 説明 すべてのデバイスの移行後に、デバイスから共有サービスを期待どおりに取得できた場合、インスタンスの移行タスクは完了し、正常に完了します。 デバイスから共有サービスを取得するときにエラーが発生した場合は、ロールバック機能を使用して、デバイスをEnterprise Editionインスタンスからパブリックインスタンスに移行し、他のデータを変更しないようにすることができます。 詳細については、「インスタンスのリソースの移行」をご参照ください。 |