第122章 openshift


OpenShift コンポーネント

Camel 2.14 から利用可能
openshift コンポーネントは、OpenShift アプリケーションを管理するためのコンポーネントです。
Maven ユーザーは、このコンポーネントの以下の依存関係を pom.xml に追加する必要があります。
<dependency>
    <groupId>org.apache.camel</groupId>
    <artifactId>camel-openshift</artifactId>
    <version>x.x.x</version>
    <!-- use the same version as your Camel core version -->
</dependency>

URI 形式

openshift:clientId[?options]
以下の形式で URI にクエリーオプションを追加できます。 ?option=value&option=value&...

オプション

Expand
名前
デフォルト値
説明
domain
null
ドメイン名。指定のない場合は、デフォルトのドメインが使用されます。
username
必須: openshift サーバーにログインするためのユーザー名。
password
必須: openshift サーバーにログインするためのパスワード。
server
openshift サーバーへの URL。指定しない場合、ローカルの openshift 設定ファイル ~/.openshift/express.conf からのデフォルト値が使用されます。それも失敗する場合は、openshift.redhat.com が使用されます。
delay
10s
コンシューマーのみ: アプリケーションの状態変更をポーリングする頻度。デフォルトでは、10 秒ごとにポーリングを行います。
operation
list
プロデューサーのみ: 実行する操作: liststartstoprestart、および ----------|----- などです。statelist 操作は、すべてのアプリケーションに関する情報を json 形式で返します。state 操作は、started、stopped などの状態を返します。他の操作は値を返しません。
Camel 2.16: 以下の操作を追加します。
  • getStandaloneCartridge スタンドアロンカートリッジの表示名を返します。
  • getEmbeddedCartridges インストールされた埋め込みカートリッジの一覧を返します。
  • addEmbeddedCartridge 操作は、ヘッダー CamelOpenShiftEmbeddedCartridgeName のインターフェイス IEmbeddableCartridge で名前を指定して、埋め込み可能なカートリッジの最新バージョンを追加し、カートリッジの表示名を返します。
  • removeEmbeddedCartridge 操作は、ヘッダー CamelOpenShiftEmbeddedCartridgeName のインターフェイス IEmbeddableCartridge でその名前を指定し、カートリッジの表示名を返すことで、埋め込みカートリッジを削除します。
application
プロデューサーのみ: アプリケーション名は startstoprestart、または state を取得します。
mode
プロデューサーのみ: メッセージボディーを pojo または json として出力するかどうか。pojo の場合、メッセージは List<com.openshift.client.IApplication> タイプです。

全アプリケーションの一覧表示

// sending route
from("direct:apps")
    .to("openshift:myClient?username=foo&password=secret&operation=list");
    .to("log:apps");
この場合、すべてのアプリケーションに関する情報が pojo として返されます。json 応答が必要な場合は、mode=json を設定します。

アプリケーションの停止

// stopping the foobar application
from("direct:control")
    .to("openshift:myClient?username=foo&password=secret&operation=stop&application=foobar");
上記の例では、foobar という名前のアプリケーションを停止します。
ギア状態変更のポーリング
コンシューマーは、ギアの状態の変更をポーリングするために使用されます。たとえば、新規ギアの追加/削除、またはライフサイクルの変更時(起動、停止など)などです。
// trigger when state changes on our gears
from("openshift:myClient?username=foo&password=secret&delay=30s")
    .log("Event ${header.CamelOpenShiftEventType} on application ${body.name} changed state to ${header.CamelOpenShiftEventNewState}");
コンシューマーがエクスチェンジを出力すると、本文には com.openshift.client.IApplication がメッセージボディーとして含まれます。また、以下のヘッダーが含まれます。
Expand
ヘッダー
null にすることができます
説明
CamelOpenShiftEventType
いいえ
イベントのタイプは、追加、削除、または変更のいずれかになります。
CamelOpenShiftEventOldState
はい
イベントタイプが変更される場合の古い状態。
CamelOpenShiftEventNewState
いいえ
イベントタイプの新しい状態
Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

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

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

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

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

会社概要

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

Theme

© 2026 Red Hat
トップに戻る