171.5.3. 示例 3:在运行中的节点上运行 shell 脚本。
from("direct:start"). to("jclouds:compute:aws-ec2" + "?operation=CamelJcloudsRunScript" + "?nodeId=10" + "&user=ubuntu");
from("direct:start").
to("jclouds:compute:aws-ec2" +
"?operation=CamelJcloudsRunScript" +
"?nodeId=10" +
"&user=ubuntu");
上面的示例将检索消息的正文,这应该包含要执行的 shell 脚本。检索脚本后,该脚本将发送到节点,以便在指定用户(如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>
<route>
<from uri="direct:start"/>
<to uri="jclouds:compute:aws-ec2?operation=CamelJcloudsListNodes&?nodeId=10&user=ubuntu"/>
</route>