Hadoop MapReduce下一代 - 命令行Mini集群
jopen
10年前
目的:
使用命令行接口运行Mini集群,用户可以使用一个简单的命令启动或者停止一个单节点的Hadoop集群,不需要设置任何环境变量和管理配置文件。这个CLI Mini集群将会启动Yarn/MapReduce和HDFS。
这个案例适合想要快速体验一个真实的Hadoop集群或者测试一个没有java程序的功能。
Hadoop Tarbar
你应该尽可能的使用Hadoop tarball的release版本,当然,你也可以从源代码创建一个tarball:
$mvn clean install -DskipTests $mvn package -pdist -Dtar -DskipTests -Dmaven.javadoc.skip注意:在安装tarball之前需要 protoc 2.5.0被安装
tarball竟可能的安装在hadoop-dist/target/目录。
运行Mini集群:
从root目录解压出tarball,你可以使用下面的命令启动CLI Mini集群:
$ bin/hadoop jar ./share/hadoop/mapreduce/hadoop-mapreduce-client-jobclient-2.4.1-tests.jar minicluster -rmport RM_PORT -jhsport JHS_PORT
在上边命令行的例子中,RM_PORT和JHS_PORT应该被用户选择的端口号替换。如果没有被指定,将会随机分配端口给用户。
通过其他的属性配置,当控制服务启动的时候这儿有一些控制命令参数可以被用户使用。 有效的命令行参数:
$ -D <property=value> Options to pass into configuration object $ -datanodes <arg> 多少datanode节点被启动 (默认为1) $ -format 格式化DFS(默认为false) $ -help 打印帮助信息. $ -jhsport <arg> (default 0--we choose) $ -namenode <arg> NameNode的URL (默认是DFS集群或者一个临时目录) $ -nnport <arg> NameNode port (default 0--we choose) $ -nodemanagers <arg> 多少个NameNodes被启动 (default 1) $ -nodfs 不允许启动一个 mini DFS 集群 $ -nomr Don't start a mini MR cluster $ -rmport <arg> ResourceManager 端口(default 0--we choose) $ -writeConfig <path> 保存配置到指定的文件(path). $ -writeDetails <path> 以json格式写入基本信息到指定的目录(path).
用户可以通过-help参数命令显示了有效列表的参数使用方法。