障害の管理 - IoT レンズ

障害の管理

IOTREL 5.IoT アプリケーションは障害にどのように耐えられますか?

IoT はイベント指向のワークロードであるため、アプリケーションコードは、アプリケーションを通じてイベントが浸透したときに発生する可能性のある既知および未知のエラーを処理するために回復力を持つ必要があります。Well-Architected IoT アプリケーションには、データ処理のエラーを記録して再試行する機能があります。IoT アプリケーションは、すべてのデータを raw 形式でアーカイブします。有効なデータと無効なすべてのデータをアーカイブすることで、アーキテクチャは特定の時点にデータをより正確に復元できます。

IoT ルールエンジンを使用すると、アプリケーションは IoT エラーアクションを有効にできます。アクションを呼び出すときに問題が発生した場合、ルールエンジンはエラーアクションを呼び出します。これにより、プライマリ IoT アクションに配信できなかったメッセージをキャプチャ、モニタリング、アラート、最終的には再試行できます。IoT エラーアクションは、プライマリアクションとは異なる AWS のサービスを使用して設定することをお勧めします。Amazon SQS または Amazon Kinesis などのエラーアクションには、耐久性のあるストレージを使用してください。

ルールエンジンから、アプリケーションロジックは最初にキューからのメッセージを処理し、そのメッセージのスキーマが正しいことを検証する必要があります。アプリケーションロジックは、既知のエラーをキャッチして記録し、必要に応じてそれらのメッセージを独自の DLQ に移動してさらに分析する必要があります。Amazon Data Firehose と AWS IoT Analytics チャネルを使用して、未加工のメッセージと未フォーマットのすべてのメッセージを Amazon S3、AWS IoT Analytics データストア、およびデータウェアハウジングの Amazon Redshift の長期ストレージに転送する IoT ルールがあります。

IOTREL 6.物理アセットに対して異なるレベルのハードウェア障害モードを検証するには、どうすればよいですか?

IoT の実装では、デバイスレベルで複数のタイプの障害に対応する必要があります。障害は、ハードウェア、ソフトウェア、接続、または予期しない不利な条件が原因である可能性があります。モノの失敗を計画する 1 つの方法は、可能であればデバイスをペアでデプロイするか、同じカバレッジエリアにデプロイされたデバイス群にデュアルセンサーをデプロイすることです (メッシュ)。

デバイス障害の根本的な原因にかかわらず、デバイスがクラウドアプリケーションと通信できる場合は、診断トピックを使用して、ハードウェア障害に関する診断情報を AWS IoT Core に送信する必要があります。ハードウェア障害のためにデバイスが接続を失った場合、接続性ステータスでフリートのインデックス作成を使用して、接続ステータスの変更を追跡します。デバイスが長期間オフラインになっている場合は、デバイスが修復を必要とする可能性があるというアラートをトリガーします。