2.2.7.2. アベイラビリティゾーン(AZ)障害時の対応方法

本章では、AWS上の mijin Catapult(v.2) のVPCのアベイラビリティゾーン(AZ)に障害あった場合、どのように対応していくかを説明します。
作成日:

2022/8/1

更新日:

2022/9/14

2.2.7.2.1. mijin Catapult(v.2) 製品版の構成

mijin Catapult(v.2) 製品版では、1つのリージョンにVPCを配置し、二つのアベイラビリティゾーン(AZ)にノードを分散しています。
ELB設置をデプロイ時のパラメーターで有効にすることで、片方のAZに障害があっても、サービスを継続することができます。
mijin Catapult(v.2) は一台のPEERノードがあれば、ブロックチェーンデータを更新することができます。
プログラムなどからアクセスしたい場合は、APIノードが一台あれば、アクセスを継続することができます。
例えば、以下の図にあるように左側AZに囲まれたサービス全体が停止したとしても、 mijin Catapult(v.2) は停止することはありません。
../../../_images/mijin_product_network.png

2.2.7.2.2. AZ復旧後の対応方法

AZ復旧後の対応は簡単です。
mijin Catapult(v.2) は、復旧後(EC2インスタンス起動後)、自動で動いているブロックチェーンデータがあるノードに接続し、データの同期を開始します。
そのため、とくに復旧に特別な作業を必要としません。
ノードが復旧しているかを確認する場合は、以下のようにコマンド又はブラウザーから確認することで確認することができます。

http://mijinエンドポイント:3000/node/peers

$ curl http://mijinエンドポイント:3000/node/peers
[
    {
        "version": 0,
        "publicKey": "9073B0A623934996A9AAAC85C6DEC8540AE17258D6997E42E00100CCFE6848EF",
        "networkGenerationHashSeed": "B319300B02B12264B7DF867F0EFD583CC3C6E65ED2732E3FD77BBC1DE8E00E85",
        "roles": 70,
        "port": 7900,
        "networkIdentifier": 96,
        "host": "api1.mijin.internal",
        "friendlyName": "api1.mijin.internal"
    },
    {
        "version": 0,
        "publicKey": "82DA8AE358AC7DF7BC97103A6ABE0F791A1655E20633CC387ACE198A0B7E9AA0",
        "networkGenerationHashSeed": "B319300B02B12264B7DF867F0EFD583CC3C6E65ED2732E3FD77BBC1DE8E00E85",
        "roles": 69,
        "port": 7900,
        "networkIdentifier": 96,
        "host": "peer2.mijin.internal",
        "friendlyName": "peer2.mijin.internal"
    },
    {
        "version": 0,
        "publicKey": "4EE257A9DD6D3F19331A467C6C76BA86B50B1297181E32C7A83C1184B666996C",
        "networkGenerationHashSeed": "B319300B02B12264B7DF867F0EFD583CC3C6E65ED2732E3FD77BBC1DE8E00E85",
        "roles": 69,
        "port": 7900,
        "networkIdentifier": 96,
        "host": "peer1.mijin.internal",
        "friendlyName": "peer1.mijin.internal"
    },
    {
        "version": 0,
        "publicKey": "C158D513266B2C04216CDC03AD99036757A41AD2AFDF59D2A67F6D2D4F8CC84F",
        "networkGenerationHashSeed": "B319300B02B12264B7DF867F0EFD583CC3C6E65ED2732E3FD77BBC1DE8E00E85",
        "roles": 69,
        "port": 7900,
        "networkIdentifier": 96,
        "host": "peer3.mijin.internal",
        "friendlyName": "peer3.mijin.internal"
    }
]
上記でノードが確認できない場合、急なノードによって、ブロックチェーンデータが壊れてしまう可能性があります。
その場合は、 mijin Catapult(v.2) のノード再同期バックアップしたスナップショットからリストアする を参照し、ノードを復旧してください。