オーダリング・サービスの管理
このトピックでは、ファウンダおよび参加者がオーダリング・サービスを管理する方法について説明します。
オーダリング・サービスとは
Oracle Blockchain Platformでは、コンセンサス・タイプとしてRaftがサポートされています。
RaftプロトコルのHyperledger Fabric実装の詳細は、オーダリング・サービス- Raftに関する項を参照してください。
Kafkaの古いコンセンサス・タイプでは、ネットワーク全体に最大2つのオーダラ・ノードを含めることができ、すべてのチャネルに参加する必要があります。場合によっては、過負荷になり、スケール・アウトできないことがあります。Raftコンセンサス・タイプでは、ネットワークに任意の数のオーダー・ノードを含めることができ、各チャネルで独自のオーダー・ノード・セットを定義できます。チャネルごとに異なるオーダラ・ノードを使用でき、オーダラ・ノードはボトルネックではなくなります。
ただし、Raftコンセンサス・タイプは、適切に構成するために複雑になる場合があります。実行できる操作または実行できない操作に関するルールがあり、チャネルがこれらのルールに従っていない場合は、ネットワークが機能しない可能性もあります。次のガイドラインに従って、発生する問題を減らす必要があります:
大部分のオーダリング・サービス・ノード(OSN)を継続的に維持
- ネットワークで動作しているOSNが50%以下の場合、ネットワーク管理は機能しなくなります。新しいチャネルを作成することも、新しいオーダラ・ノードをネットワークに追加することも、オーダラをネットワークから削除することもできません。
- アプリケーション・チャネルで動作しているOSNが50%以下の場合、このアプリケーション・チャネルにトランザクションを送信することはできません。問合せは引き続き正しく機能しますが、新しい組織の追加、アクセス制御リストの変更、チェーンコードのインスタンス化またはデプロイなどの管理操作は失敗します。
ネットワークまたはアプリケーション・チャネルに新しいOSNを追加する場合は注意してください。所有者が信頼できること、およびOSNが堅牢であることを確認してください。
OSNまたは組織を削除する場合は、50%を超えるOSNが引き続き機能することを確認します。たとえば、それぞれ3つのOSNを持つ2つの組織がある場合、1つの組織を削除すると、削除時にその組織はOSNの50%のみが機能していると解釈されます。余分な組織を削除する前に、OSNを残りの組織に追加して、機能しているOSNが常に50%を超えていることを確認します。
オーダラを頻繁に追加または削除しない
UNKNOWN: Stream removed
SERVICE UNAVAILABLE
BAD REQUEST
これは数分続く場合があります。前のRaftリーダーOSNをチャネルから削除した場合、20分間かかることがあります。
オーダラを頻繁に追加または削除しないようにします。複数のオーダラを追加または削除する必要がある場合は、1つずつ実行し、次の変更を行う前に、ネットワークが動作ステータスに戻っていることを確認します。
できるだけ早く新規オーダラが起動されていることの確認
新しいオーダラをネットワークに追加する場合、通常は2つの組織(新しいオーダラのファウンダと所有者)が関与します。どちらのパーティも、完了するために「ファウンダのオーダリング・サービスへの参加者またはスケールアウトされたOSNの参加」の指示に従う必要があります。そうしないと、ファウンダはネットワークを管理できなくなります。
ファウンダのオーダリング・サービスへの参加者またはスケールアウトされたOSNの参加
参加者インスタンスをプロビジョニングすると、3つのオーダラで作成されます。オーダラは、ネットワークに参加するまで非アクティブです。ファウンダをスケール・アウトすると、新しいオーダラもネットワークに参加するまで非アクティブになります。
複数のオーダラを追加または削除する必要がある場合は、1つずつ実行し、次の変更を行う前に、ネットワークが動作ステータスに戻っていることを確認します。Raftオーダラの追加、削除、開始および停止に関するその他の重要な詳細は、「オーダリング・サービスとは」を参照してください。
参加者またはスケールアウトされたオーダラからのOSN設定のエクスポート
参加者またはスケールアウトしたオーダラをネットワークに参加させるには、それらの設定をエクスポートしてファウンダにインポートする必要があります。
-
参加者コンソール(またはスケールアウトしたオーダラのファウンダ・コンソール)の「ノード」タブで、オーダラ・ノード(または複数のノードが存在する場合は最初のオーダラ・ノード)を見つけます。このノードの「アクション」メニューを選択し、OSN設定のエクスポートを選択します。
これにより、設定を含むJSONファイルが生成され、ファイルが保存されます。このファイルには、組織の証明書と、参加者組織の管理者の秘密キーによって署名された選択済オーダラ・サービス・ノード(OSN)設定が含まれます。このファイルは、ファウンダ・インスタンスの管理者に送信する必要があります。
このOSNを使用するチャネルでアプリケーションを実行するには、このエクスポートされたTLS証明書も必要です。「アプリケーションの開発の前に」を参照してください。
-
ファウンダ・コンソールで、「ネットワーク」タブをクリックします。OSNの追加をクリックします。参加者が指定したJSONファイルの場所の入力を求めるウィンドウが開きます。選択してファイルをアップロードして、「追加」をクリックします。
参加者組織または新規にスケールアウトされたオーダラが、システム・チャネル・リストのオーダラ組織セクションに追加されます。
ファウンダの構成設定のエクスポート
参加者またはスケールアウトしたオーダラをファウンダに追加したら、ファウンダの設定をエクスポートして参加者またはスケールアウトしたオーダラにインポートする必要があります。
-
ファウンダ・コンソールで、「ネットワーク」タブをクリックします。ネットワーク構成ブロックのエクスポートをクリックします。
ネットワーク構成ブロックには、最新のシステム・チャネル構成ブロックが含まれます。これは保存して参加者の管理者に連絡してください。
-
参加者コンソール(またはスケールアウトしたオーダラのファウンダ・コンソール)の「ノード」タブで、オーダラ・ノード(または複数のノードが存在する場合は最初のオーダラ・ノード)を見つけます。このノードの「アクション」メニューを選択し、ネットワーク構成ブロックのインポートを選択します。
ファウンダ・インスタンス管理者から送信されたファイルの入力を求められます。
-
参加者コンソールで、「ノード」タブをリフレッシュします。オーダラ・ノードのステータスは「停止中」としてリストされます。「アクション」メニューから、「起動」を選択します。
起動された各オーダラ・ノードは、ファウンダのRaftクラスタに追加されます。
ノート:
複数のOSNを単一のバッチでネットワークに追加することはできません。OSNが一度に1つのみ追加されていることを確認します。ネットワークのオーダリング・サービス設定の編集
ファウンダ・インスタンスのオーダリング・サービス設定を更新できます。
- 更新された設定は、新しいチャネルを作成するときに使用され、既存のチャネルには適用されません。
- 個別に既存のチャネルのオーダリング・サービス設定を更新することもできます(「チャネルのオーダリング・サービス設定の編集」を参照)。
- オーダリング・サービス設定を変更し、ネットワークに対して実行されているアプリケーションがある場合、変更したオーダリング・サービス設定を使用するようにそれらのアプリケーションを手動で更新する必要があります。
- 一般的ではありませんが、一部のネットワーク参加者に別のオーダリング・サービスを公開することがあります。その場合、更新されたネットワーク構成ブロックをエクスポートし、必要な参加者は変更された設定をインポートします。「ファウンダのオーダリング・サービスへの参加者またはスケールアウトされたOSNの参加」を参照してください。
オーダリング・サービス設定の表示
参加者のOracle Blockchain Platformインスタンスにインポートされたファウンダのオーダリング・サービス設定を表示できます。