14.3. コンテナーレベルのロック


概要

コンテナーレベルのロッキングによって、より高速なフェイルオーバーのパフォーマンスを提供するためにバンドルをセカンダリーカーネルインスタンスに事前ロードできます。コンテナーレベルのロックは、単純なファイルと JDBC の両方のロックメカニズムでサポートされています。

コンテナーレベルのロックの設定

コンテナーレベルのロッキングを実装するには、プライマリー/セカンダリー設定の各システムの etc/system.properties ファイルに以下を追加します。

例14.7 コンテナーレベルのロック設定

karaf.lock=true
karaf.lock.level=50
karaf.lock.delay=10000

karaf.lock.level プロパティーでは、Red Hat Fuse インスタンスが OSGi コンテナーを起動するために起動プロセスをどこまで実行するかを示します。同等かそれ以下の開始レベルが割り当てられたバンドルも、その Fuse インスタンスで開始されます。

バンドルの開始レベルは、BundleName.jar=level 形式で、etc/startup.properties に指定されます。コアシステムバンドルのレベルは 50 未満ですが、ユーザーバンドルのレベルは 50 を超えています。

表14.1 バンドル開始レベル
開始レベル動作

1

コールドスタンバイインスタンス。コアバンドルはコンテナーにロードされません。セカンダリーインスタンスは、ロックが取得されるまで待ち、サーバーを開始します。

<50

ホットスタンバイインスタンス。コアバンドルがコンテナーにロードされます。セカンダリーインスタンスは、ロックが取得されるまで待ち、ユーザーレベルバンドルを開始します。コンソールは、このレベルで各セカンダリーインスタンスに対してアクセス可能です。

>50

ユーザーバンドルが開始されるため、この設定はお勧めしません。

ポートの競合回避

同じホストでホットスペアを使用する場合は、JMX リモートポートを一意の値に設定してバインドの競合を回避する必要があります。fuse 起動スクリプト (または子インスタンス上の karaf スクリプト) を編集して、以下が含まれるようにすることができます。

DEFAULT_JAVA_OPTS="-server $DEFAULT_JAVA_OPTS -Dcom.sun.management.jmxremote.port=1100 -Dcom.sun.management.jmxremote.authenticate=false"
Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

© 2024 Red Hat, Inc.