我想在amazon实例上使用whirr启动一个实例。但是,当我尝试使用标准化的whirr命令启动集群时,它在我的hadoop集群名称之后的某个目录名称中搜索为"myclutster",该目录名称不存在。有人能帮帮我吗?
kaustubh@hdv-Kaustubh:~/下载$ whirr launch-cluster——config whirrprop.properties无法启动集群。终止所有节点。java.lang.NullPointerException:动作处理程序未找到org.apache.whirr.actions.ScriptBasedClusterAction.safeGetActionHandler (ScriptBasedClusterAction.java: 245)org.apache.whirr.actions.ScriptBasedClusterAction.execute (ScriptBasedClusterAction.java: 100)org.apache.whirr.ClusterController.launchCluster (ClusterController.java: 106)org.apache.whirr.cli.command.LaunchClusterCommand.run (LaunchClusterCommand.java: 63)org.apache.whirr.cli.Main.run (Main.java: 64)org.apache.whirr.cli.Main.main (Main.java: 97)导致:java.lang.NullPointerException:未找到动作处理程序com.google.common.base.Preconditions.checkNotNull (Preconditions.java: 204)org.apache.whirr.HandlerMapFactory ReturnHandlerByRoleOrPrefix.apply美元(HandlerMapFactory.java: 66)org.apache.whirr.HandlerMapFactory ReturnHandlerByRoleOrPrefix.apply美元(HandlerMapFactory.java: 45)com.google.common.collect.ComputingConcurrentHashMap ComputingValueReference.compute美元(ComputingConcurrentHashMap.java: 355)com.google.common.collect.ComputingConcurrentHashMap ComputingSegment.compute美元(ComputingConcurrentHashMap.java: 184)com.google.common.collect.ComputingConcurrentHashMap ComputingSegment.getOrCompute美元(ComputingConcurrentHashMap.java: 153)com.google.common.collect.ComputingConcurrentHashMap.getOrCompute (ComputingConcurrentHashMap.java: 69)com.google.common.collect.ComputingConcurrentHashMap ComputingMapAdapter.get美元(ComputingConcurrentHashMap.java: 393)org.apache.whirr.actions.ScriptBasedClusterAction.safeGetActionHandler (ScriptBasedClusterAction.java: 238)…5如果没有运行的节点,则无法加载集群状态。java.io.FileNotFoundException:/home/kaustubh/./mycluster/instances(没有这样的文件或目录)在java.io.FileInputStream。打开(本机方法)在java.io.FileInputStream。(FileInputStream.java: 120)演示了getinput (Files.java com.google.common.io.Files 1.美元:100)演示了getinput (Files.java com.google.common.io.Files 1.美元:97)演示了getinput (CharStreams.java com.google.common.io.CharStreams 2.美元:91)演示了getinput (CharStreams.java com.google.common.io.CharStreams 2.美元:88)com.google.common.io.CharStreams.readLines (CharStreams.java: 306)com.google.common.io.Files.readLines (Files.java: 580)org.apache.whirr.state.FileClusterStateStore.load (FileClusterStateStore.java: 54)org.apache.whirr.state.ClusterStateStore.tryLoadOrEmpty (ClusterStateStore.java: 58)org.apache.whirr.ClusterController.destroyCluster (ClusterController.java: 143)org.apache.whirr.ClusterController.launchCluster (ClusterController.java: 118)org.apache.whirr.cli.command.LaunchClusterCommand.run (LaunchClusterCommand.java: 63)org.apache.whirr.cli.Main.run (Main.java: 64)org.apache.whirr.cli.Main.main (Main.java: 97)nullpointerexception:未找到动作处理程序使用:whirr launch-cluster [OPTIONS]选项 描述------ -----------——aws-ec2- Spot -price现货实例价格(特定于aws-ec2)选项)——blobstore-cache-container要使用的容器名用于缓存本地文件。如果不是指定的Whirr将创建一个随机的一个,最后取出来会话。——blobstore-credential blob存储凭证——blobstore-identity blob存储标识——blobstore-location-id blob存储位置ID——blobstore-provider blob存储提供程序。例如aws-s3、cloudfiles-us, cloudfiles-uk——client-cidrs以逗号分隔的CIDR块列表。例如208.128.0.0/11,108.128.0.0/11——cluster-name要操作的集群名称。例如hadoopcluster。——cluster-user用户名在所有集群实例上创建。您必须使用此用户才能登录节点。——config注意指定的属性在这个文件中应该都有一个心烦。前缀。——credential云证书。——firewall-rules以逗号分隔的端口列表数字。如8080年,8181年——firewall-rules-role端口列表,以逗号分隔数字。如8080年,8181年。取代'role',使用实际角色名——hardware-id设备使用的硬件类型实例。这必须兼容使用图像ID。hardware-min-ram最小实例内存。例如1024年——identity云身份。——image- ID要使用的图像ID实例。如果没有指定,则a选择普通的Linux映像。——instance-templates要启动的实例数每一组角色。例如:1 hadoop-namenode + hadoop-jobtracker 10hadoop-datanode + hadoop-tasktracker——instance-template -max-percent成功启动的百分比每组角色的失败实例。E。G. 100 hadoop-namenode+hadoop-jobtracker 60 hadoop-datanode + hadoop -Tasktracker是指所有的实例角色hadoop-namenode和hadoop-Jobtracker必须成功启动了,60%的实例必须启动他成功地开始了每一个角色hadoop-datanode和hadoop-tasktracker。——instance-template -minimum-number-of-成功的最小个数实例为每组实例启动实例的角色。例如1 hadoop-namenode+hadoop-jobtracker 6 hadoop-datanode + hadoop -Tasktracker表示一个实例角色hadoop-namenode和hadoop-Jobtracker必须成功启动,并且必须启动6个实例成功启动角色hadoop-datanode和hadoop-tasktracker。——location-id启动实例的位置。如果没有指定,则为任意地点将被选择。——login-user覆盖使用的默认登录用户引导旋转。例如ubuntu或myuser: mypass。——max-startup-retries重试次数未成功启动实例。缺省值为1。——private-key-file RSA私钥文件名用于连接到实例。——provider云提供商的名称。如。aws-ec2, cloudservers-uk——public-key-file用于执行命令的公钥文件名连接到实例。——run- URL -base生成运行URL的基础URL从。将其更改为您自己的主机一组启动脚本。——service-name(可选)服务的名称使用。比如hadoop。state-store使用什么样的存储(local, blob或none)。默认为当地。——state-store- Blob状态存储的Blob名称。有效的仅适用于blob状态存储。默认为"呼呼-"——state-store- Container存放状态的容器。有效的仅适用于blob状态存储。——terminate-all-on-launch-failure是否自动执行集群时终止所有节点由于某些原因,发射失败了。——版本
不存在hadoop-jobtracer(注意缺少k)
这是你需要的Hadoop集群:
whirr.instance-templates=1 hadoop-namenode+hadoop-jobtracker, 1 hadoop-datanode+hadooptasktracker
whirr.hardware-id=m1.small # or larger - t1.micro is not a good choice
还要确保检查recipes/hadoop-ec2。属性查看更多示例。