副问题[/!--empirenews.page--]
起首筹备三台客户机(hadoop102,hadoop103,hadoop104),封锁防火墙,修改为静态ip和ip地点映射
设置集群
编写集群分发剧本
- 建设一个长途同步的剧本xsync,并放到当前用户下新建的bin目次下,设置到PATH中,使得此剧本在任何目次下都可以执行
- 剧本实现
- [kocdaniel@hadoop102 ~]$ mkdir bin
- [kocdaniel@hadoop102 ~]$ cd bin/
- [kocdaniel@hadoop102 bin]$ vim xsync
在文件中编写如下剧本代码
- #!/bin/bash
- #1 获取输入参数个数,假如没有参数,直接退出
- pcount=$#
- if((pcount==0)); then
- echo no args;
- exit;
- fi
-
- #2 获取文件名称
- p1=$1
- fname=`basename $p1`
- echo fname=$fname
-
- #3 获取上级目次到绝对路径 –P指向现实物理地点,防备软毗连
- pdir=`cd -P $(dirname $p1); pwd`
- echo pdir=$pdir
-
- #4 获取当前用户名称
- user=`whoami`
-
- #5 轮回
- for((host=103; host<105; host++)); do
- echo ------------------- hadoop$host --------------
- rsync -rvl $pdir/$fname $user@hadoop$host:$pdir
- done
- 修改剧本xsync具有执行权限,并挪用剧本,将剧本复制到103和104节点
- [kocdaniel@hadoop102 bin]$ chmod 777 xsync
- [kocdaniel@hadoop102 bin]$ xsync /home/atguigu/bin
集群设置
1.集群陈设筹划
因为计较机设置有限,只能行使三台假造机,事变情形中按照必要筹划集群
2.设置集群
切换到hadoop安装目次/etc/hadoop/
- [kocdaniel@hadoop102 hadoop]$ vim core-site.xml
- # 在文件中写入如下内容
- <!-- 指定HDFS中NameNode的地点 -->
- <property>
- <name>fs.defaultFS</name>
- <value>hdfs://hadoop102:9000</value>
- </property>
-
- <!-- 指定Hadoop运行时发生文件的存储目次 -->
- <property>
- <name>hadoop.tmp.dir</name>
- <value>/opt/module/hadoop-2.7.2/data/tmp</value>
- </property>
设置hadoop-env.sh
- [kocdaniel@hadoop102 hadoop]$ vim hadoop-env.sh
- export JAVA_HOME=/opt/module/jdk1.8.0_144
export JAVA_HOME=/opt/module/jdk1.8.0_144
留意:我们已经在/etc/profile文件中设置了JAVA_HOME,这里为什么还必要设置JAVA_HOME?
答:由于Hadoop运行是保卫历程(保卫历程是一个在靠山运行而且不受任何终端节制的历程。--摘自百度百科)),正是由于它靠山运行,不接管任何终端节制,以是它读取不到我们设置好的情形变量,以是这里必要单独设置一下。
- [kocdaniel@hadoop102 hadoop]$ vim hdfs-site.xml
- # 写入如下设置
- <!-- 设置副本数目为3,默认也为3,以是这个也可以删掉 -->
- <property>
- <name>dfs.replication</name>
- <value>3</value>
- </property>
-
- <!-- 指定Hadoop帮助名称节点主机设置 -->
- <property>
- <name>dfs.namenode.secondary.http-address</name>
- <value>hadoop104:50090</value>
- </property>
(编辑:河北网)
【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!
|