オーダリング・サービスの管理
このトピックでは、ファウンダおよび参加者がオーダリング・サービスを管理する方法について説明します。
オーダリング・サービスとは
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を一括してネットワークに追加することはできません。必ず一度に1つのOSNのみを追加するようにしてください。ネットワークのオーダリング・サービス設定の編集
ファウンダ・インスタンスのオーダリング・サービス設定を更新できます。
- 更新された設定は、チャネルを作成するときに使用され、既存のチャネルには適用されません。
- 個別に既存のチャネルに対するオーダリング・サービス設定を更新することもできます(「チャネルのオーダリング・サービス設定の編集」を参照)。
- オーダリング・サービス設定を変更して、ネットワークに対して実行されているアプリケーションがある場合は、変更したオーダリング・サービス設定を使用するようにそれらのアプリケーションを手動で更新する必要があります。
- 一般的ではありませんが、状況によっては、ネットワーク参加者に別のオーダリング・サービスを公開することがあります。その場合、更新されたネットワーク構成ブロックをエクスポートし、必要な参加者は変更された設定をインポートします。「ファウンダのオーダリング・サービスへの参加者またはスケールアウトされたOSNの参加」を参照してください。
オーダリング・サービス設定の表示
参加者のOracle Blockchain Platformインスタンスにインポートされたファウンダのオーダリング・サービス設定を表示できます。