由于资源限制,我们只能在6台服务器上进行搭建,虽然ResourceManager是高可用的,但是我们也只能创建一台ResourceManager节点用于节省资源。
下面是各服务器节点中启动的服务和应该运行的进程的分析:
我们本次模拟的环境是在无网络的状态下进行的,所以需要下载hadoop的linux压缩包,首先将下载好的安装包解压缩,这里我解压到/herry目录下(注意:需要配置的文件都在hadoop目录下的etc/hadoop)。
这些工作做完之后就要进行配置文件的修改了。
1、配置hdfs
将hadoop添加到环境变量中
vim /etc/profile
进入到hadoop的配置文件目录下
cd /herry/hadoop-2.4.1/etc/hadoop/
标注的为需要修改的配置文件。
2、修改core-site.xml:
3、修改hdfs-site.xml
sshfence
shell(/bin/true)
4、修改mapred-site.xml
5、修改yarn-site.xml
6、修改slaves(slaves是指定子节点的位置,因为要在centos04上启动HDFS、在centos05启动yarn,所以centos04上的slaves文件指定的是datanode的位置,centos06上的slaves文件指定的是nodemanager的位置)
sentos01
centos02
centos03
7、配置ssh免登陆
ssh-keygen -t rsa (得到公钥和私钥)
ssh-copy-id xxxxx (将公钥发送至目标节点)
8、将配置好的hadoop拷贝到其他节点
scp -r /herry/ xxxxxxx:/ (将herry目录拷贝到目标节点的根目录下)
第一次启动集群(严格按照下面步骤):
1、启动zookpeeper集群(sentos01、centos02、centos03)
./zkServer.sh start
2、启动journalnode(只需要在centos04上启动即可,注意:是调用的hadoop-daemons.sh这个脚本,注意是复数s的那个脚本)
sbin/hadoop-daemons.sh start journalnode
3、格式化hdfs(在centos04上执行)
hdfs namenode -format
格式化后会在根据core-site.xml中的hadoop.tmp.dir配置生成个文件,这里我配置的是/herry/hadoop-2.4.1/tmp,然后将/herry/hadoop-2.4.1/tmp拷贝到centos05的/herry/hadoop-2.4.1/tmp下。
scp -r tmp/ itcast05:/herry/hadoop-2.4.1/
4、格式化zk(在centos04上执行即可)
hdfs zkfc -formatZK
5、启动HDFS(在centos04上执行即可)
sbin/start-dfs.sh
6、启动yarn(在centos06上执行即可)
sbin/start-yarn.sh
这样我们的hadoop集群就搭建好了
mr-jobhistory-daemon.sh start historyserver 启动JobHistoryServer