第2章 Fuse on Karaf の使用


ここで説明する情報や手順は、Fuse On Karaf について学び、Karaf コンテナーで初めて Fuse アプリケーションをインストール、開発、およびビルドするのに役立ちます。以下を参照してください。

2.1. Fuse on Karaf

Apache Karaf は、OSGi Alliance の OSGi 標準 をベースとしています。OSGi は電気通信業界で開発され、ホットコードスワッピング と呼ばれる機能により、サーバーをシャットダウンする必要がなくすぐにアップグレードできる、ゲートウェイサーバーの開発に使用されました。その後、OSGi コンテナー技術はその他多くの用途に使用され、一般的に Eclipse IDE などのモジュール化されたアプリケーションで使用されます。

このコンテナー技術の特徴は次のとおりです。

  • 特にスタンドアロンモードでの実行に適しています。
  • モジュール化 (OSGi バンドル) の強力なサポート、および高度なクラスローディングサポート。
  • 1 つのコンテナーに複数のバージョンの依存関係を一緒にデプロイできます (ただし、注意して行う必要があります)。
  • ホットコードスワッピングにより、コンテナーをシャットダウンせずにモジュールをアップグレードまたは置き換えできます。これは独自の機能ですが、適切に行うには多大な労力が必要になります。

2.2. Fuse on Karaf のインストール

Red Hat カスタマーポータルから Fuse 7.4 on Karaf の標準インストールパッケージをダウンロードできます。このパッケージは Karaf コンテナーの標準アセンブリーをインストールし、完全な Fuse テクノロジースタックを提供します。

前提条件

手順

  1. ダウンロードした Fuse on Apache Karaf の .zip アーカイブファイルを、ファイルシステム FUSE_INSTALL の任意の場所に展開します。
  2. Fuse ランタイムに管理ユーザーを追加します。

    1. テキストエディターで FUSE_INSTALL/etc/users.properties ファイルを開きます。
    2. #admin = admin で始まる行の最初の # 文字を削除します。
    3. #g\:admingroup で始まる行の最初の # 文字を削除します。
    4. ユーザーエントリーのユーザー名 USERNAME とパスワード PASSWORD をカスタマイズし、以下のようなユーザーエントリーおよび管理グループエントリーにします (連続した行)。

      USERNAME = PASSWORD,_g_:admingroup
      _g_\:admingroup = group,admin,manager,viewer,systembundles,ssh
    5. etc/users.properties ファイルを保存します。
  3. 以下のように、CodeReady Studio インストーラー を実行します。

    java -jar DOWNLOAD_LOCATION/codereadystudio-12.12.0.GA-installer-standalone.jar
  4. インストール中、以下を行います。

    1. 契約条件に同意します。
    2. インストールパスを選択します。
    3. Java 8 JVM を選択します。
    4. Select Platforms and Servers で、Add をクリックして FUSE_INSTALL ディレクトリーの場所を確認し、Fuse on Karaf ランタイムを設定します。
    5. Select Additional Features to InstallRed Hat Fuse Tooling を選択します。
  5. CodeReady Studio が起動します。Searching for runtimes ダイアログが表示されたら OK をクリックして Fuse on Karaf ランタイムを作成します。
  6. (任意手順): コマンドラインから Apache Maven を使用するには、Maven をインストールおよび設定する必要があります。

    注記

    CodeReady Studio のみを使用する場合、CodeReady Studio にはMaven が事前インストールおよび設定されているため、Maven をインストールする必要は厳密的にはありません。しかし、コマンドラインから Maven を呼び出す場合は、インストールを行う必要があります。

2.3. Karaf で初めて Fuse アプリケーションをビルド

次の手順は、Karaf で初めて Fuse アプリケーションをビルドする場合に便利です。

前提条件

手順

  1. CodeReady Studio で以下のように新しいプロジェクトを作成します。

    1. File→New→Fuse Integration Project と選択します。
    2. fuse-camel-cbr フィールドに eap-camel を入力します。
    3. Next をクリックします。
    4. Select a Target Environment ペインで以下の設定を選択します。

      • Standalone をデプロイメントプラットフォームとして選択します。
      • Karaf/Fuse on Karaf をランタイム環境として選択し、Runtime (optional) ドロップダウンメニューを使用して Red Had JBoss Middleware> Red Hat Fuse 7+ Runtime サーバーをターゲットランタイムとして選択します。
    5. ターゲットランタイムの選択後、Camel Version が自動的に選択され、フィールドがグレーアウトされます。
    6. Next をクリックします。
    7. Advanced Project Setup ペーンで Beginner→Content Based Router - Blueprint DSL テンプレートを選択します。
    8. Finish をクリックします。
    9. 関連する Fuse Integration パースペクティブを開くように要求された場合は、Yes をクリックします。
    10. CodeReady Studio が必要なアーティファクトをダウンロードし、バックグラウンドでプロジェクトをビルドする間待機します。

      重要

      CodeReady Studio で初めて Fuse プロジェクトをビルドする場合、リモート Maven リポジトリーから依存関係をダウンロードするため、ウィザードがプロジェクトの生成を完了するまで 数分かかることがあります。プロジェクトがバックグラウンドでビルドされている間は、ウィザードを中断したり、CodeReady Studio を閉じたりしないようにしてください。

  2. 以下のように、プロジェクトをサーバーにデプロイします。

    1. サーバーが起動していない場合は、Servers ビュー (Fuse Integration パースペクティブの左下隅) で fuse-karaf-7.4.0.fuse-740028-redhat-00001 Runtime Server サーバーを選択し、緑色の矢印をクリックして起動します。

      注記

      Warning: The authenticity of host 'localhost' can’t be established. というダイアログが表示されたら、Yes をクリックしてサーバーに接続し、Karaf コンソールにアクセスします。

    2. Console ビューに以下のようなメッセージが表示されるまで待機します。

      Karaf started in 1s. Bundle stats: 12 active, 12 total
    3. サーバーが起動した後、Servers ビューに切り替え、サーバーを右クリックしてコンテキストメニューで Add and Remove を選択します。
    4. Add and Remove ダイアログで fuse-camel-cbr プロジェクトを選択し、Add > ボタンをクリックします。
    5. Finish をクリックします。
    6. Terminal ビューに移動し、bundle:list | tail を入力して、プロジェクトの OSGi バンドルが起動したかどうかをチェックします。以下のような出力が表示されるはずです。

      ...
      228 │ Active │  80 │ 1.0.0.201505202023          │ org.osgi:org.osgi.service.j
      232 │ Active │  80 │ 1.0.0.SNAPSHOT              │ Fuse CBR Quickstart
注記

Camel ルートが起動すると、すぐに fuse-camel-cbr プロジェクトにディレクトリー work/cbr/input が作成されます。

  1. Project Explorer ビューで Refresh をクリックし、新たに作成された work/cbr/input ディレクトリーを表示します。
  2. プロジェクトの src/main/data ディレクトリーにあるファイルを work/cbr/input ディレクトリーにコピーします。
  3. しばらく待ってから再度 Project Explorer ビューを更新し、国別に分類された同じファイルが work/cbr/output ディレクトリーにあることを確認します。

    1. work/cbr/output/othersorder1.xml
    2. work/cbr/output/ukorder2.xml および order4.xml
    3. work/cbr/output/usorder3.xml および order5.xml
  4. 以下のようにプロジェクトをアンデプロイします。

    1. Servers ビューで Red Hat Fuse 7+ Runtime Server サーバーを選択します。
    2. サーバーを右クリックし、コンテキストメニューで Add and Remove を選択します。
    3. Add and Remove ダイアログで fuse-camel-cbr プロジェクトを選択し、< Remove ボタンをクリックします。
    4. Finish をクリックします。
Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

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

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

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

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

会社概要

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

© 2024 Red Hat, Inc.