如何在 Apache Brooklyn 的蓝图中使用子网
How to use subnets in blueprints of Apache Brooklyn
我正在尝试在我的蓝图中使用一个子网(在 AWS 中预先创建)运行 它在 Apache Brooklyn 中。
我有以下没有子网的蓝图,它工作正常。 (Ambari 服务器,具有两个 Hadoop 节点的集群)
name: IDA Ambari All Services without Security Group
description: This Application is used to build one Ambari Server and a Cluster of Ambari Agents
origin: vendor
location:
jclouds:aws-ec2:
region: eu-central-1
identity: identity
credential: credential
osFamily: RHEL
osVersionRegex: 6.*
hardwareId: m3.medium
services:
- type: io.brooklyn.ambari.AmbariCluster
brooklyn.config:
initialSize: 2
install.version: 2.1.0
services:
- FALCON
在我添加子网的新名称时(以下蓝图的最后几行),Apache Brooklyn 中的部署失败。
name: IDA Ambari All Services without Security Group
description: This Application is used to build one Ambari Server and a Cluster of Ambari Agents
origin: vendor
location:
jclouds:aws-ec2:
region: eu-central-1
identity: identity
credential: credential
osFamily: RHEL
osVersionRegex: 6.*
hardwareId: m3.medium
services:
- type: io.brooklyn.ambari.AmbariCluster
brooklyn.config:
initialSize: 2
install.version: 2.1.0
services:
- FALCON
provisioning.properties:
networkName: subnet-003dfb7b
我想问题出在蓝图中jclouds的配置上。但是我不知道。
错误:
在节点中
start failed with error: java.lang.IllegalStateException: Node in
cluster DynamicClusterImpl{id=tEESwAU9} failed: 2 of 2 parallel child
tasks failed, 2 errors including: Error invoking start at
AmbariAgentImpl{id=AS9jZ9AC}: org.jclouds.compute.RunNodesException:
error running 1 node
group(brooklyn-gaho-root-ida-ambar-xydd-ambariagent-as9j-as9j)
location(eu-central-1) image(ami-6cd3ee71) size(m3.medium)
options({inboundPorts=[22, 2], scriptPresent=true,
userMetadata={Name=brooklyn-gaho-root-ida-ambar-xydd-ambariagent-as9j-as9j-jn19,
brooklyn-user=root, brooklyn-app-id=XYDdTpTx, brooklyn-app-name=IDA
Ambari All Services without Security Group,
brooklyn-entity-id=AS9jZ9AC, brooklyn-entity-name=AmbariAgent:AS9j,
brooklyn-server-creation-date=2015-08-10-1421},
userDataCksum=2f4a740b, subnetId=subnet-003dfb7b}) Execution failures:
0 error[s] Node failures: 1) NoSuchElementException on node
eu-central-1/i-4af7818b: java.util.NoSuchElementException: could not
connect to any ip address port 22 on node {id=eu-central-1/i-4af7818b,
providerId=i-4af7818b, location={scope=ZONE, id=eu-central-1b,
description=eu-central-1b, parent=eu-central-1, iso3166Codes=[DE-HE]},
group=brooklyn-gaho-root-ida-ambar-xydd-ambariagent-as9j-as9j,
imageId=eu-central-1/ami-6cd3ee71, os={family=rhel, arch=hvm,
version=6.6,
description=411009282317/RightImage_RHEL_6.6_x64_v14.2.1_HVM_EBS,
is64Bit=true}, status=RUNNING[running], loginPort=22,
hostname=ip-172-31-17-195, privateAddresses=[172.31.17.195],
publicAddresses=[52.28.233.226], hardware={id=m3.medium,
providerId=m3.medium, processors=[{cores=1.0, speed=3.0}], ram=3840,
volumes=[{type=LOCAL, size=4.0, device=/dev/sdb, bootDevice=false,
durable=false}, {id=vol-e940020b, type=SAN, device=/dev/sda1,
bootDevice=true, durable=true}], hypervisor=xen,
supportsImage=Predicates.and(Predicates.alwaysTrue(),Predicates.or(requiresVirtualizationType(hvm),requiresVirtualizationType(paravirtual)),Predicates.alwaysTrue(),Predicates.alwaysTrue())},
loginUser=root} at
org.jclouds.compute.util.ConcurrentOpenSocketFinder.findOpenSocketOnNode(ConcurrentOpenSocketFinder.java:107)
at
org.jclouds.compute.functions.CreateSshClientOncePortIsListeningOnNode.apply(CreateSshClientOncePortIsListeningOnNode.java:66)
at
org.jclouds.compute.functions.CreateSshClientOncePortIsListeningOnNode.apply(CreateSshClientOncePortIsListeningOnNode.java:40)
at
org.jclouds.compute.callables.SudoAwareInitManager.init(SudoAwareInitManager.java:67)
at
org.jclouds.compute.callables.RunScriptOnNodeAsInitScriptUsingSsh.init(RunScriptOnNodeAsInitScriptUsingSsh.java:64)
at
org.jclouds.compute.callables.RunScriptOnNodeAsInitScriptUsingSshAndBlockUntilComplete.init(RunScriptOnNodeAsInitScriptUsingSshAndBlockUntilComplete.java:77)
at
org.jclouds.compute.callables.RunScriptOnNodeAsInitScriptUsingSshAndBlockUntilComplete.init(RunScriptOnNodeAsInitScriptUsingSshAndBlockUntilComplete.java:38)
at
org.jclouds.compute.strategy.InitializeRunScriptOnNodeOrPlaceInBadMap.call(InitializeRunScriptOnNodeOrPlaceInBadMap.java:61)
at
org.jclouds.compute.strategy.InitializeRunScriptOnNodeOrPlaceInBadMap.call(InitializeRunScriptOnNodeOrPlaceInBadMap.java:34)
at
org.jclouds.compute.strategy.CustomizeNodeAndAddToGoodMapOrPutExceptionIntoBadMap.call(CustomizeNodeAndAddToGoodMapOrPutExceptionIntoBadMap.java:119)
at
org.jclouds.compute.strategy.CustomizeNodeAndAddToGoodMapOrPutExceptionIntoBadMap.call(CustomizeNodeAndAddToGoodMapOrPutExceptionIntoBadMap.java:49)
at java.util.concurrent.FutureTask.run(FutureTask.java:262) at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:745) 1 error[s] Failure running
task starting 2 nodes (parallel) (OnIRxglV): 2 of 2 parallel child
tasks failed, 2 errors including: Error invoking start at
AmbariAgentImpl{id=AS9jZ9AC}: org.jclouds.compute.RunNodesException:
error running 1 node
group(brooklyn-gaho-root-ida-ambar-xydd-ambariagent-as9j-as9j)
location(eu-central-1) image(ami-6cd3ee71) size(m3.medium)
options({inboundPorts=[22, 2], scriptPresent=true,
userMetadata={Name=brooklyn-gaho-root-ida-ambar-xydd-ambariagent-as9j-as9j-jn19,
brooklyn-user=root, brooklyn-app-id=XYDdTpTx, brooklyn-app-name=IDA
Ambari All Services without Security Group,
brooklyn-entity-id=AS9jZ9AC, brooklyn-entity-name=AmbariAgent:AS9j,
brooklyn-server-creation-date=2015-08-10-1421},
userDataCksum=2f4a740b, subnetId=subnet-003dfb7b}) Execution failures:
0 error[s] Node failures: 1) NoSuchElementException on node
eu-central-1/i-4af7818b: java.util.NoSuchElementException: could not
connect to any ip address port 22 on node {id=eu-central-1/i-4af7818b,
providerId=i-4af7818b, location={scope=ZONE, id=eu-central-1b,
description=eu-central-1b, parent=eu-central-1, iso3166Codes=[DE-HE]},
group=brooklyn-gaho-root-ida-ambar-xydd-ambariagent-as9j-as9j,
imageId=eu-central-1/ami-6cd3ee71, os={family=rhel, arch=hvm,
version=6.6,
description=411009282317/RightImage_RHEL_6.6_x64_v14.2.1_HVM_EBS,
is64Bit=true}, status=RUNNING[running], loginPort=22,
hostname=ip-172-31-17-195, privateAddresses=[172.31.17.195],
publicAddresses=[52.28.233.226], hardware={id=m3.medium,
providerId=m3.medium, processors=[{cores=1.0, speed=3.0}], ram=3840,
volumes=[{type=LOCAL, size=4.0, device=/dev/sdb, bootDevice=false,
durable=false}, {id=vol-e940020b, type=SAN, device=/dev/sda1,
bootDevice=true, durable=true}], hypervisor=xen,
supportsImage=Predicates.and(Predicates.alwaysTrue(),Predicates.or(requiresVirtualizationType(hvm),requiresVirtualizationType(paravirtual)),Predicates.alwaysTrue(),Predicates.alwaysTrue())},
loginUser=root} at
org.jclouds.compute.util.ConcurrentOpenSocketFinder.findOpenSocketOnNode(ConcurrentOpenSocketFinder.java:107)
at
org.jclouds.compute.functions.CreateSshClientOncePortIsListeningOnNode.apply(CreateSshClientOncePortIsListeningOnNode.java:66)
at
org.jclouds.compute.functions.CreateSshClientOncePortIsListeningOnNode.apply(CreateSshClientOncePortIsListeningOnNode.java:40)
at
org.jclouds.compute.callables.SudoAwareInitManager.init(SudoAwareInitManager.java:67)
at
org.jclouds.compute.callables.RunScriptOnNodeAsInitScriptUsingSsh.init(RunScriptOnNodeAsInitScriptUsingSsh.java:64)
at
org.jclouds.compute.callables.RunScriptOnNodeAsInitScriptUsingSshAndBlockUntilComplete.init(RunScriptOnNodeAsInitScriptUsingSshAndBlockUntilComplete.java:77)
at
org.jclouds.compute.callables.RunScriptOnNodeAsInitScriptUsingSshAndBlockUntilComplete.init(RunScriptOnNodeAsInitScriptUsingSshAndBlockUntilComplete.java:38)
at
org.jclouds.compute.strategy.InitializeRunScriptOnNodeOrPlaceInBadMap.call(InitializeRunScriptOnNodeOrPlaceInBadMap.java:61)
at
org.jclouds.compute.strategy.InitializeRunScriptOnNodeOrPlaceInBadMap.call(InitializeRunScriptOnNodeOrPlaceInBadMap.java:34)
at
org.jclouds.compute.strategy.CustomizeNodeAndAddToGoodMapOrPutExceptionIntoBadMap.call(CustomizeNodeAndAddToGoodMapOrPutExceptionIntoBadMap.java:119)
at
org.jclouds.compute.strategy.CustomizeNodeAndAddToGoodMapOrPutExceptionIntoBadMap.call(CustomizeNodeAndAddToGoodMapOrPutExceptionIntoBadMap.java:49)
at java.util.concurrent.FutureTask.run(FutureTask.java:262) at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:745) 1 error[s]
在 Ambari 服务器中
start failed with error: java.lang.IllegalStateException: Node in
cluster DynamicClusterImpl{id=tEESwAU9} failed: 2 of 2 parallel child
tasks failed, 2 errors including: Error invoking start at
AmbariAgentImpl{id=AS9jZ9AC}: org.jclouds.compute.RunNodesException:
error running 1 node
group(brooklyn-gaho-root-ida-ambar-xydd-ambariagent-as9j-as9j)
location(eu-central-1) image(ami-6cd3ee71) size(m3.medium)
options({inboundPorts=[22, 2], scriptPresent=true,
userMetadata={Name=brooklyn-gaho-root-ida-ambar-xydd-ambariagent-as9j-as9j-jn19,
brooklyn-user=root, brooklyn-app-id=XYDdTpTx, brooklyn-app-name=IDA
Ambari All Services without Security Group,
brooklyn-entity-id=AS9jZ9AC, brooklyn-entity-name=AmbariAgent:AS9j,
brooklyn-server-creation-date=2015-08-10-1421},
userDataCksum=2f4a740b, subnetId=subnet-003dfb7b}) Execution failures:
0 error[s] Node failures: 1) NoSuchElementException on node
eu-central-1/i-4af7818b: java.util.NoSuchElementException: could not
connect to any ip address port 22 on node {id=eu-central-1/i-4af7818b,
providerId=i-4af7818b, location={scope=ZONE, id=eu-central-1b,
description=eu-central-1b, parent=eu-central-1, iso3166Codes=[DE-HE]},
group=brooklyn-gaho-root-ida-ambar-xydd-ambariagent-as9j-as9j,
imageId=eu-central-1/ami-6cd3ee71, os={family=rhel, arch=hvm,
version=6.6,
description=411009282317/RightImage_RHEL_6.6_x64_v14.2.1_HVM_EBS,
is64Bit=true}, status=RUNNING[running], loginPort=22,
hostname=ip-172-31-17-195, privateAddresses=[172.31.17.195],
publicAddresses=[52.28.233.226], hardware={id=m3.medium,
providerId=m3.medium, processors=[{cores=1.0, speed=3.0}], ram=3840,
volumes=[{type=LOCAL, size=4.0, device=/dev/sdb, bootDevice=false,
durable=false}, {id=vol-e940020b, type=SAN, device=/dev/sda1,
bootDevice=true, durable=true}], hypervisor=xen,
supportsImage=Predicates.and(Predicates.alwaysTrue(),Predicates.or(requiresVirtualizationType(hvm),requiresVirtualizationType(paravirtual)),Predicates.alwaysTrue(),Predicates.alwaysTrue())},
loginUser=root} at
org.jclouds.compute.util.ConcurrentOpenSocketFinder.findOpenSocketOnNode(ConcurrentOpenSocketFinder.java:107)
at
org.jclouds.compute.functions.CreateSshClientOncePortIsListeningOnNode.apply(CreateSshClientOncePortIsListeningOnNode.java:66)
at
org.jclouds.compute.functions.CreateSshClientOncePortIsListeningOnNode.apply(CreateSshClientOncePortIsListeningOnNode.java:40)
at
org.jclouds.compute.callables.SudoAwareInitManager.init(SudoAwareInitManager.java:67)
at
org.jclouds.compute.callables.RunScriptOnNodeAsInitScriptUsingSsh.init(RunScriptOnNodeAsInitScriptUsingSsh.java:64)
at
org.jclouds.compute.callables.RunScriptOnNodeAsInitScriptUsingSshAndBlockUntilComplete.init(RunScriptOnNodeAsInitScriptUsingSshAndBlockUntilComplete.java:77)
at
org.jclouds.compute.callables.RunScriptOnNodeAsInitScriptUsingSshAndBlockUntilComplete.init(RunScriptOnNodeAsInitScriptUsingSshAndBlockUntilComplete.java:38)
at
org.jclouds.compute.strategy.InitializeRunScriptOnNodeOrPlaceInBadMap.call(InitializeRunScriptOnNodeOrPlaceInBadMap.java:61)
at
org.jclouds.compute.strategy.InitializeRunScriptOnNodeOrPlaceInBadMap.call(InitializeRunScriptOnNodeOrPlaceInBadMap.java:34)
at
org.jclouds.compute.strategy.CustomizeNodeAndAddToGoodMapOrPutExceptionIntoBadMap.call(CustomizeNodeAndAddToGoodMapOrPutExceptionIntoBadMap.java:119)
at
org.jclouds.compute.strategy.CustomizeNodeAndAddToGoodMapOrPutExceptionIntoBadMap.call(CustomizeNodeAndAddToGoodMapOrPutExceptionIntoBadMap.java:49)
at java.util.concurrent.FutureTask.run(FutureTask.java:262) at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:745) 1 error[s] Failure running
task starting 2 nodes (parallel) (OnIRxglV): 2 of 2 parallel child
tasks failed, 2 errors including: Error invoking start at
AmbariAgentImpl{id=AS9jZ9AC}: org.jclouds.compute.RunNodesException:
error running 1 node
group(brooklyn-gaho-root-ida-ambar-xydd-ambariagent-as9j-as9j)
location(eu-central-1) image(ami-6cd3ee71) size(m3.medium)
options({inboundPorts=[22, 2], scriptPresent=true,
userMetadata={Name=brooklyn-gaho-root-ida-ambar-xydd-ambariagent-as9j-as9j-jn19,
brooklyn-user=root, brooklyn-app-id=XYDdTpTx, brooklyn-app-name=IDA
Ambari All Services without Security Group,
brooklyn-entity-id=AS9jZ9AC, brooklyn-entity-name=AmbariAgent:AS9j,
brooklyn-server-creation-date=2015-08-10-1421},
userDataCksum=2f4a740b, subnetId=subnet-003dfb7b}) Execution failures:
0 error[s] Node failures: 1) NoSuchElementException on node
eu-central-1/i-4af7818b: java.util.NoSuchElementException: could not
connect to any ip address port 22 on node {id=eu-central-1/i-4af7818b,
providerId=i-4af7818b, location={scope=ZONE, id=eu-central-1b,
description=eu-central-1b, parent=eu-central-1, iso3166Codes=[DE-HE]},
group=brooklyn-gaho-root-ida-ambar-xydd-ambariagent-as9j-as9j,
imageId=eu-central-1/ami-6cd3ee71, os={family=rhel, arch=hvm,
version=6.6,
description=411009282317/RightImage_RHEL_6.6_x64_v14.2.1_HVM_EBS,
is64Bit=true}, status=RUNNING[running], loginPort=22,
hostname=ip-172-31-17-195, privateAddresses=[172.31.17.195],
publicAddresses=[52.28.233.226], hardware={id=m3.medium,
providerId=m3.medium, processors=[{cores=1.0, speed=3.0}], ram=3840,
volumes=[{type=LOCAL, size=4.0, device=/dev/sdb, bootDevice=false,
durable=false}, {id=vol-e940020b, type=SAN, device=/dev/sda1,
bootDevice=true, durable=true}], hypervisor=xen,
supportsImage=Predicates.and(Predicates.alwaysTrue(),Predicates.or(requiresVirtualizationType(hvm),requiresVirtualizationType(paravirtual)),Predicates.alwaysTrue(),Predicates.alwaysTrue())},
loginUser=root} at
org.jclouds.compute.util.ConcurrentOpenSocketFinder.findOpenSocketOnNode(ConcurrentOpenSocketFinder.java:107)
at
org.jclouds.compute.functions.CreateSshClientOncePortIsListeningOnNode.apply(CreateSshClientOncePortIsListeningOnNode.java:66)
at
org.jclouds.compute.functions.CreateSshClientOncePortIsListeningOnNode.apply(CreateSshClientOncePortIsListeningOnNode.java:40)
at
org.jclouds.compute.callables.SudoAwareInitManager.init(SudoAwareInitManager.java:67)
at
org.jclouds.compute.callables.RunScriptOnNodeAsInitScriptUsingSsh.init(RunScriptOnNodeAsInitScriptUsingSsh.java:64)
at
org.jclouds.compute.callables.RunScriptOnNodeAsInitScriptUsingSshAndBlockUntilComplete.init(RunScriptOnNodeAsInitScriptUsingSshAndBlockUntilComplete.java:77)
at
org.jclouds.compute.callables.RunScriptOnNodeAsInitScriptUsingSshAndBlockUntilComplete.init(RunScriptOnNodeAsInitScriptUsingSshAndBlockUntilComplete.java:38)
at
org.jclouds.compute.strategy.InitializeRunScriptOnNodeOrPlaceInBadMap.call(InitializeRunScriptOnNodeOrPlaceInBadMap.java:61)
at
org.jclouds.compute.strategy.InitializeRunScriptOnNodeOrPlaceInBadMap.call(InitializeRunScriptOnNodeOrPlaceInBadMap.java:34)
at
org.jclouds.compute.strategy.CustomizeNodeAndAddToGoodMapOrPutExceptionIntoBadMap.call(CustomizeNodeAndAddToGoodMapOrPutExceptionIntoBadMap.java:119)
at
org.jclouds.compute.strategy.CustomizeNodeAndAddToGoodMapOrPutExceptionIntoBadMap.call(CustomizeNodeAndAddToGoodMapOrPutExceptionIntoBadMap.java:49)
at java.util.concurrent.FutureTask.run(FutureTask.java:262) at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:745) 1 error[s]
有什么想法吗??
堆栈跟踪有点密集,但在中间我们可以看到:
could not connect to any ip address port 22 on node
这表明 jclouds 正在尝试连接到新节点,但无法连接。
最可能的原因是实例没有正确配置的安全组。
jclouds 有一个错误,如果给定子网 ID,它会阻止它创建安全组:请参阅 JCLOUDS-987: AWS EC2: if specifying subnet ID, security groups are not created。
您可以通过提前创建一个打开所需端口的安全组来解决此问题 - 这将是端口 22,加上实体(在本例中为 Ambari)所需的任何端口。然后使用蓝图中布鲁克林的 templateOptions
属性 将其传递给 jclouds。
例如:
name: IDA Ambari All Services with explicit Security Group
description: This Application is used to build one Ambari Server and a Cluster of Ambari Agents
origin: vendor
location:
jclouds:aws-ec2:
region: eu-central-1
identity: identity
credential: credential
osFamily: RHEL
osVersionRegex: 6.*
hardwareId: m3.medium
services:
- type: io.brooklyn.ambari.AmbariCluster
brooklyn.config:
initialSize: 2
install.version: 2.1.0
services:
- FALCON
provisioning.properties:
networkName: subnet-003dfb7b
templateOptions:
securityGroupIds: sg-12345678
我正在尝试在我的蓝图中使用一个子网(在 AWS 中预先创建)运行 它在 Apache Brooklyn 中。
我有以下没有子网的蓝图,它工作正常。 (Ambari 服务器,具有两个 Hadoop 节点的集群)
name: IDA Ambari All Services without Security Group
description: This Application is used to build one Ambari Server and a Cluster of Ambari Agents
origin: vendor
location:
jclouds:aws-ec2:
region: eu-central-1
identity: identity
credential: credential
osFamily: RHEL
osVersionRegex: 6.*
hardwareId: m3.medium
services:
- type: io.brooklyn.ambari.AmbariCluster
brooklyn.config:
initialSize: 2
install.version: 2.1.0
services:
- FALCON
在我添加子网的新名称时(以下蓝图的最后几行),Apache Brooklyn 中的部署失败。
name: IDA Ambari All Services without Security Group
description: This Application is used to build one Ambari Server and a Cluster of Ambari Agents
origin: vendor
location:
jclouds:aws-ec2:
region: eu-central-1
identity: identity
credential: credential
osFamily: RHEL
osVersionRegex: 6.*
hardwareId: m3.medium
services:
- type: io.brooklyn.ambari.AmbariCluster
brooklyn.config:
initialSize: 2
install.version: 2.1.0
services:
- FALCON
provisioning.properties:
networkName: subnet-003dfb7b
我想问题出在蓝图中jclouds的配置上。但是我不知道。
错误:
在节点中
start failed with error: java.lang.IllegalStateException: Node in cluster DynamicClusterImpl{id=tEESwAU9} failed: 2 of 2 parallel child tasks failed, 2 errors including: Error invoking start at AmbariAgentImpl{id=AS9jZ9AC}: org.jclouds.compute.RunNodesException: error running 1 node group(brooklyn-gaho-root-ida-ambar-xydd-ambariagent-as9j-as9j) location(eu-central-1) image(ami-6cd3ee71) size(m3.medium) options({inboundPorts=[22, 2], scriptPresent=true, userMetadata={Name=brooklyn-gaho-root-ida-ambar-xydd-ambariagent-as9j-as9j-jn19, brooklyn-user=root, brooklyn-app-id=XYDdTpTx, brooklyn-app-name=IDA Ambari All Services without Security Group, brooklyn-entity-id=AS9jZ9AC, brooklyn-entity-name=AmbariAgent:AS9j, brooklyn-server-creation-date=2015-08-10-1421}, userDataCksum=2f4a740b, subnetId=subnet-003dfb7b}) Execution failures: 0 error[s] Node failures: 1) NoSuchElementException on node eu-central-1/i-4af7818b: java.util.NoSuchElementException: could not connect to any ip address port 22 on node {id=eu-central-1/i-4af7818b, providerId=i-4af7818b, location={scope=ZONE, id=eu-central-1b, description=eu-central-1b, parent=eu-central-1, iso3166Codes=[DE-HE]}, group=brooklyn-gaho-root-ida-ambar-xydd-ambariagent-as9j-as9j, imageId=eu-central-1/ami-6cd3ee71, os={family=rhel, arch=hvm, version=6.6, description=411009282317/RightImage_RHEL_6.6_x64_v14.2.1_HVM_EBS, is64Bit=true}, status=RUNNING[running], loginPort=22, hostname=ip-172-31-17-195, privateAddresses=[172.31.17.195], publicAddresses=[52.28.233.226], hardware={id=m3.medium, providerId=m3.medium, processors=[{cores=1.0, speed=3.0}], ram=3840, volumes=[{type=LOCAL, size=4.0, device=/dev/sdb, bootDevice=false, durable=false}, {id=vol-e940020b, type=SAN, device=/dev/sda1, bootDevice=true, durable=true}], hypervisor=xen, supportsImage=Predicates.and(Predicates.alwaysTrue(),Predicates.or(requiresVirtualizationType(hvm),requiresVirtualizationType(paravirtual)),Predicates.alwaysTrue(),Predicates.alwaysTrue())}, loginUser=root} at org.jclouds.compute.util.ConcurrentOpenSocketFinder.findOpenSocketOnNode(ConcurrentOpenSocketFinder.java:107) at org.jclouds.compute.functions.CreateSshClientOncePortIsListeningOnNode.apply(CreateSshClientOncePortIsListeningOnNode.java:66) at org.jclouds.compute.functions.CreateSshClientOncePortIsListeningOnNode.apply(CreateSshClientOncePortIsListeningOnNode.java:40) at org.jclouds.compute.callables.SudoAwareInitManager.init(SudoAwareInitManager.java:67) at org.jclouds.compute.callables.RunScriptOnNodeAsInitScriptUsingSsh.init(RunScriptOnNodeAsInitScriptUsingSsh.java:64) at org.jclouds.compute.callables.RunScriptOnNodeAsInitScriptUsingSshAndBlockUntilComplete.init(RunScriptOnNodeAsInitScriptUsingSshAndBlockUntilComplete.java:77) at org.jclouds.compute.callables.RunScriptOnNodeAsInitScriptUsingSshAndBlockUntilComplete.init(RunScriptOnNodeAsInitScriptUsingSshAndBlockUntilComplete.java:38) at org.jclouds.compute.strategy.InitializeRunScriptOnNodeOrPlaceInBadMap.call(InitializeRunScriptOnNodeOrPlaceInBadMap.java:61) at org.jclouds.compute.strategy.InitializeRunScriptOnNodeOrPlaceInBadMap.call(InitializeRunScriptOnNodeOrPlaceInBadMap.java:34) at org.jclouds.compute.strategy.CustomizeNodeAndAddToGoodMapOrPutExceptionIntoBadMap.call(CustomizeNodeAndAddToGoodMapOrPutExceptionIntoBadMap.java:119) at org.jclouds.compute.strategy.CustomizeNodeAndAddToGoodMapOrPutExceptionIntoBadMap.call(CustomizeNodeAndAddToGoodMapOrPutExceptionIntoBadMap.java:49) at java.util.concurrent.FutureTask.run(FutureTask.java:262) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) at java.lang.Thread.run(Thread.java:745) 1 error[s] Failure running task starting 2 nodes (parallel) (OnIRxglV): 2 of 2 parallel child tasks failed, 2 errors including: Error invoking start at AmbariAgentImpl{id=AS9jZ9AC}: org.jclouds.compute.RunNodesException: error running 1 node group(brooklyn-gaho-root-ida-ambar-xydd-ambariagent-as9j-as9j) location(eu-central-1) image(ami-6cd3ee71) size(m3.medium) options({inboundPorts=[22, 2], scriptPresent=true, userMetadata={Name=brooklyn-gaho-root-ida-ambar-xydd-ambariagent-as9j-as9j-jn19, brooklyn-user=root, brooklyn-app-id=XYDdTpTx, brooklyn-app-name=IDA Ambari All Services without Security Group, brooklyn-entity-id=AS9jZ9AC, brooklyn-entity-name=AmbariAgent:AS9j, brooklyn-server-creation-date=2015-08-10-1421}, userDataCksum=2f4a740b, subnetId=subnet-003dfb7b}) Execution failures: 0 error[s] Node failures: 1) NoSuchElementException on node eu-central-1/i-4af7818b: java.util.NoSuchElementException: could not connect to any ip address port 22 on node {id=eu-central-1/i-4af7818b, providerId=i-4af7818b, location={scope=ZONE, id=eu-central-1b, description=eu-central-1b, parent=eu-central-1, iso3166Codes=[DE-HE]}, group=brooklyn-gaho-root-ida-ambar-xydd-ambariagent-as9j-as9j, imageId=eu-central-1/ami-6cd3ee71, os={family=rhel, arch=hvm, version=6.6, description=411009282317/RightImage_RHEL_6.6_x64_v14.2.1_HVM_EBS, is64Bit=true}, status=RUNNING[running], loginPort=22, hostname=ip-172-31-17-195, privateAddresses=[172.31.17.195], publicAddresses=[52.28.233.226], hardware={id=m3.medium, providerId=m3.medium, processors=[{cores=1.0, speed=3.0}], ram=3840, volumes=[{type=LOCAL, size=4.0, device=/dev/sdb, bootDevice=false, durable=false}, {id=vol-e940020b, type=SAN, device=/dev/sda1, bootDevice=true, durable=true}], hypervisor=xen, supportsImage=Predicates.and(Predicates.alwaysTrue(),Predicates.or(requiresVirtualizationType(hvm),requiresVirtualizationType(paravirtual)),Predicates.alwaysTrue(),Predicates.alwaysTrue())}, loginUser=root} at org.jclouds.compute.util.ConcurrentOpenSocketFinder.findOpenSocketOnNode(ConcurrentOpenSocketFinder.java:107) at org.jclouds.compute.functions.CreateSshClientOncePortIsListeningOnNode.apply(CreateSshClientOncePortIsListeningOnNode.java:66) at org.jclouds.compute.functions.CreateSshClientOncePortIsListeningOnNode.apply(CreateSshClientOncePortIsListeningOnNode.java:40) at org.jclouds.compute.callables.SudoAwareInitManager.init(SudoAwareInitManager.java:67) at org.jclouds.compute.callables.RunScriptOnNodeAsInitScriptUsingSsh.init(RunScriptOnNodeAsInitScriptUsingSsh.java:64) at org.jclouds.compute.callables.RunScriptOnNodeAsInitScriptUsingSshAndBlockUntilComplete.init(RunScriptOnNodeAsInitScriptUsingSshAndBlockUntilComplete.java:77) at org.jclouds.compute.callables.RunScriptOnNodeAsInitScriptUsingSshAndBlockUntilComplete.init(RunScriptOnNodeAsInitScriptUsingSshAndBlockUntilComplete.java:38) at org.jclouds.compute.strategy.InitializeRunScriptOnNodeOrPlaceInBadMap.call(InitializeRunScriptOnNodeOrPlaceInBadMap.java:61) at org.jclouds.compute.strategy.InitializeRunScriptOnNodeOrPlaceInBadMap.call(InitializeRunScriptOnNodeOrPlaceInBadMap.java:34) at org.jclouds.compute.strategy.CustomizeNodeAndAddToGoodMapOrPutExceptionIntoBadMap.call(CustomizeNodeAndAddToGoodMapOrPutExceptionIntoBadMap.java:119) at org.jclouds.compute.strategy.CustomizeNodeAndAddToGoodMapOrPutExceptionIntoBadMap.call(CustomizeNodeAndAddToGoodMapOrPutExceptionIntoBadMap.java:49) at java.util.concurrent.FutureTask.run(FutureTask.java:262) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) at java.lang.Thread.run(Thread.java:745) 1 error[s]
在 Ambari 服务器中
start failed with error: java.lang.IllegalStateException: Node in cluster DynamicClusterImpl{id=tEESwAU9} failed: 2 of 2 parallel child tasks failed, 2 errors including: Error invoking start at AmbariAgentImpl{id=AS9jZ9AC}: org.jclouds.compute.RunNodesException: error running 1 node group(brooklyn-gaho-root-ida-ambar-xydd-ambariagent-as9j-as9j) location(eu-central-1) image(ami-6cd3ee71) size(m3.medium) options({inboundPorts=[22, 2], scriptPresent=true, userMetadata={Name=brooklyn-gaho-root-ida-ambar-xydd-ambariagent-as9j-as9j-jn19, brooklyn-user=root, brooklyn-app-id=XYDdTpTx, brooklyn-app-name=IDA Ambari All Services without Security Group, brooklyn-entity-id=AS9jZ9AC, brooklyn-entity-name=AmbariAgent:AS9j, brooklyn-server-creation-date=2015-08-10-1421}, userDataCksum=2f4a740b, subnetId=subnet-003dfb7b}) Execution failures: 0 error[s] Node failures: 1) NoSuchElementException on node eu-central-1/i-4af7818b: java.util.NoSuchElementException: could not connect to any ip address port 22 on node {id=eu-central-1/i-4af7818b, providerId=i-4af7818b, location={scope=ZONE, id=eu-central-1b, description=eu-central-1b, parent=eu-central-1, iso3166Codes=[DE-HE]}, group=brooklyn-gaho-root-ida-ambar-xydd-ambariagent-as9j-as9j, imageId=eu-central-1/ami-6cd3ee71, os={family=rhel, arch=hvm, version=6.6, description=411009282317/RightImage_RHEL_6.6_x64_v14.2.1_HVM_EBS, is64Bit=true}, status=RUNNING[running], loginPort=22, hostname=ip-172-31-17-195, privateAddresses=[172.31.17.195], publicAddresses=[52.28.233.226], hardware={id=m3.medium, providerId=m3.medium, processors=[{cores=1.0, speed=3.0}], ram=3840, volumes=[{type=LOCAL, size=4.0, device=/dev/sdb, bootDevice=false, durable=false}, {id=vol-e940020b, type=SAN, device=/dev/sda1, bootDevice=true, durable=true}], hypervisor=xen, supportsImage=Predicates.and(Predicates.alwaysTrue(),Predicates.or(requiresVirtualizationType(hvm),requiresVirtualizationType(paravirtual)),Predicates.alwaysTrue(),Predicates.alwaysTrue())}, loginUser=root} at org.jclouds.compute.util.ConcurrentOpenSocketFinder.findOpenSocketOnNode(ConcurrentOpenSocketFinder.java:107) at org.jclouds.compute.functions.CreateSshClientOncePortIsListeningOnNode.apply(CreateSshClientOncePortIsListeningOnNode.java:66) at org.jclouds.compute.functions.CreateSshClientOncePortIsListeningOnNode.apply(CreateSshClientOncePortIsListeningOnNode.java:40) at org.jclouds.compute.callables.SudoAwareInitManager.init(SudoAwareInitManager.java:67) at org.jclouds.compute.callables.RunScriptOnNodeAsInitScriptUsingSsh.init(RunScriptOnNodeAsInitScriptUsingSsh.java:64) at org.jclouds.compute.callables.RunScriptOnNodeAsInitScriptUsingSshAndBlockUntilComplete.init(RunScriptOnNodeAsInitScriptUsingSshAndBlockUntilComplete.java:77) at org.jclouds.compute.callables.RunScriptOnNodeAsInitScriptUsingSshAndBlockUntilComplete.init(RunScriptOnNodeAsInitScriptUsingSshAndBlockUntilComplete.java:38) at org.jclouds.compute.strategy.InitializeRunScriptOnNodeOrPlaceInBadMap.call(InitializeRunScriptOnNodeOrPlaceInBadMap.java:61) at org.jclouds.compute.strategy.InitializeRunScriptOnNodeOrPlaceInBadMap.call(InitializeRunScriptOnNodeOrPlaceInBadMap.java:34) at org.jclouds.compute.strategy.CustomizeNodeAndAddToGoodMapOrPutExceptionIntoBadMap.call(CustomizeNodeAndAddToGoodMapOrPutExceptionIntoBadMap.java:119) at org.jclouds.compute.strategy.CustomizeNodeAndAddToGoodMapOrPutExceptionIntoBadMap.call(CustomizeNodeAndAddToGoodMapOrPutExceptionIntoBadMap.java:49) at java.util.concurrent.FutureTask.run(FutureTask.java:262) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) at java.lang.Thread.run(Thread.java:745) 1 error[s] Failure running task starting 2 nodes (parallel) (OnIRxglV): 2 of 2 parallel child tasks failed, 2 errors including: Error invoking start at AmbariAgentImpl{id=AS9jZ9AC}: org.jclouds.compute.RunNodesException: error running 1 node group(brooklyn-gaho-root-ida-ambar-xydd-ambariagent-as9j-as9j) location(eu-central-1) image(ami-6cd3ee71) size(m3.medium) options({inboundPorts=[22, 2], scriptPresent=true, userMetadata={Name=brooklyn-gaho-root-ida-ambar-xydd-ambariagent-as9j-as9j-jn19, brooklyn-user=root, brooklyn-app-id=XYDdTpTx, brooklyn-app-name=IDA Ambari All Services without Security Group, brooklyn-entity-id=AS9jZ9AC, brooklyn-entity-name=AmbariAgent:AS9j, brooklyn-server-creation-date=2015-08-10-1421}, userDataCksum=2f4a740b, subnetId=subnet-003dfb7b}) Execution failures: 0 error[s] Node failures: 1) NoSuchElementException on node eu-central-1/i-4af7818b: java.util.NoSuchElementException: could not connect to any ip address port 22 on node {id=eu-central-1/i-4af7818b, providerId=i-4af7818b, location={scope=ZONE, id=eu-central-1b, description=eu-central-1b, parent=eu-central-1, iso3166Codes=[DE-HE]}, group=brooklyn-gaho-root-ida-ambar-xydd-ambariagent-as9j-as9j, imageId=eu-central-1/ami-6cd3ee71, os={family=rhel, arch=hvm, version=6.6, description=411009282317/RightImage_RHEL_6.6_x64_v14.2.1_HVM_EBS, is64Bit=true}, status=RUNNING[running], loginPort=22, hostname=ip-172-31-17-195, privateAddresses=[172.31.17.195], publicAddresses=[52.28.233.226], hardware={id=m3.medium, providerId=m3.medium, processors=[{cores=1.0, speed=3.0}], ram=3840, volumes=[{type=LOCAL, size=4.0, device=/dev/sdb, bootDevice=false, durable=false}, {id=vol-e940020b, type=SAN, device=/dev/sda1, bootDevice=true, durable=true}], hypervisor=xen, supportsImage=Predicates.and(Predicates.alwaysTrue(),Predicates.or(requiresVirtualizationType(hvm),requiresVirtualizationType(paravirtual)),Predicates.alwaysTrue(),Predicates.alwaysTrue())}, loginUser=root} at org.jclouds.compute.util.ConcurrentOpenSocketFinder.findOpenSocketOnNode(ConcurrentOpenSocketFinder.java:107) at org.jclouds.compute.functions.CreateSshClientOncePortIsListeningOnNode.apply(CreateSshClientOncePortIsListeningOnNode.java:66) at org.jclouds.compute.functions.CreateSshClientOncePortIsListeningOnNode.apply(CreateSshClientOncePortIsListeningOnNode.java:40) at org.jclouds.compute.callables.SudoAwareInitManager.init(SudoAwareInitManager.java:67) at org.jclouds.compute.callables.RunScriptOnNodeAsInitScriptUsingSsh.init(RunScriptOnNodeAsInitScriptUsingSsh.java:64) at org.jclouds.compute.callables.RunScriptOnNodeAsInitScriptUsingSshAndBlockUntilComplete.init(RunScriptOnNodeAsInitScriptUsingSshAndBlockUntilComplete.java:77) at org.jclouds.compute.callables.RunScriptOnNodeAsInitScriptUsingSshAndBlockUntilComplete.init(RunScriptOnNodeAsInitScriptUsingSshAndBlockUntilComplete.java:38) at org.jclouds.compute.strategy.InitializeRunScriptOnNodeOrPlaceInBadMap.call(InitializeRunScriptOnNodeOrPlaceInBadMap.java:61) at org.jclouds.compute.strategy.InitializeRunScriptOnNodeOrPlaceInBadMap.call(InitializeRunScriptOnNodeOrPlaceInBadMap.java:34) at org.jclouds.compute.strategy.CustomizeNodeAndAddToGoodMapOrPutExceptionIntoBadMap.call(CustomizeNodeAndAddToGoodMapOrPutExceptionIntoBadMap.java:119) at org.jclouds.compute.strategy.CustomizeNodeAndAddToGoodMapOrPutExceptionIntoBadMap.call(CustomizeNodeAndAddToGoodMapOrPutExceptionIntoBadMap.java:49) at java.util.concurrent.FutureTask.run(FutureTask.java:262) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) at java.lang.Thread.run(Thread.java:745) 1 error[s]
有什么想法吗??
堆栈跟踪有点密集,但在中间我们可以看到:
could not connect to any ip address port 22 on node
这表明 jclouds 正在尝试连接到新节点,但无法连接。
最可能的原因是实例没有正确配置的安全组。
jclouds 有一个错误,如果给定子网 ID,它会阻止它创建安全组:请参阅 JCLOUDS-987: AWS EC2: if specifying subnet ID, security groups are not created。
您可以通过提前创建一个打开所需端口的安全组来解决此问题 - 这将是端口 22,加上实体(在本例中为 Ambari)所需的任何端口。然后使用蓝图中布鲁克林的 templateOptions
属性 将其传递给 jclouds。
例如:
name: IDA Ambari All Services with explicit Security Group
description: This Application is used to build one Ambari Server and a Cluster of Ambari Agents
origin: vendor
location:
jclouds:aws-ec2:
region: eu-central-1
identity: identity
credential: credential
osFamily: RHEL
osVersionRegex: 6.*
hardwareId: m3.medium
services:
- type: io.brooklyn.ambari.AmbariCluster
brooklyn.config:
initialSize: 2
install.version: 2.1.0
services:
- FALCON
provisioning.properties:
networkName: subnet-003dfb7b
templateOptions:
securityGroupIds: sg-12345678