171.5. コンピュート使用状況のサンプル
以下は、java dsl および spring/blueprint xml での jclouds コンピュートプロデューサーの使用を示すいくつかの例です。
171.5.1. 例 1: 利用可能なイメージを一覧表示します。
from("jclouds:compute:aws-ec2" + "&operation=CamelJCloudsListImages") .to("direct:next");
これにより、本文内にイメージのリストを含むメッセージが作成されます。xml を使用して同じことを行うこともできます。
<route> <from uri="jclouds:compute:aws-ec2?operation=CamelJCloudsListImages"/> <to uri="direct:next"/> </route>
171.5.2. 例 2: 新しいノードを作成します。
from("direct:start"). to("jclouds:compute:aws-ec2" + "?operation=CamelJcloudsCreateNode" + "&imageId=AMI_XXXXX" + "&locationId=XXXXX" + "&group=myGroup");
これにより、クラウドプロバイダーに新しいノードが作成されます。この場合の出力メッセージは、新しく作成されたノードに関する情報 (IP、ホスト名など) を含む一連のメタデータになります。これは、Spring xml を使用した場合と同じです。
<route> <from uri="direct:start"/> <to uri="jclouds:compute:aws-ec2?operation=CamelJcloudsCreateNode&imageId=AMI_XXXXX&locationId=XXXXX&group=myGroup"/> </route>
171.5.3. 例 3: 実行中のノードでシェルスクリプトを実行します。
from("direct:start"). to("jclouds:compute:aws-ec2" + "?operation=CamelJcloudsRunScript" + "?nodeId=10" + "&user=ubuntu");
上記のサンプルは、実行されるシェルスクリプトを含むと予想される in メッセージのボディーを取得します。スクリプトが取得されると、指定されたユーザー (ubuntu の場合) の下で実行するためにノードに送信されます。ターゲットノードは、その nodeId を使用して指定されます。nodeId は、ノードの作成時に、結果のメタデータの一部になるか、または LIST_NODES 操作を実行することによって取得できます。
注記 これには、コンポーネントに渡されるコンピュートサービスが、適切な jclouds ssh 対応モジュール (jsch または sshj など) で初期化される必要があります。
これは、Spring xml を使用した場合と同じです。
<route> <from uri="direct:start"/> <to uri="jclouds:compute:aws-ec2?operation=CamelJcloudsListNodes&?nodeId=10&user=ubuntu"/> </route>
171.5.4. 関連情報
jclouds について詳しく知りたい場合は、興味深いリソースのリストをご覧ください。
Jclouds コンピュート wiki Compute wiki