1.Hadoop集群的搭建的准备 关闭防火墙 centos防火墙操作
[cnetos 6.5之前的版本]
$>sudo service firewalld stop //停止服务
$>sudo service firewalld start //启动服务
$>sudo service firewalld status //查看状态
[centos7]
$>sudo systemctl enable firewalld.service //"开机启动"启用
$>sudo systemctl disable firewalld.service //"开机自启"禁用
$>sudo systemctl start firewalld.service //启动防火墙
$>sudo systemctl stop firewalld.service //停止防火墙
$>sudo systemctl status firewalld.service //查看防火墙状态
[开机自启]
$>sudo chkconfig firewalld on //"开启自启"启用
$>sudo chkconfig firewalld off //"开启自启"禁用
1.1前期准备:a.修改主机名
修改为s10:hostnamectl set-hostname s10 使用hostname查看一下是否修改成功 b./etc/hosts
127.0.0.1 localhost
192.168.200.10 s10
192.168.200.11 s11
192.168.200.12 s12
1.2首先克隆出3台cliet(centos7)右键centos-7-->管理->克隆-> ... -> 完整克隆 1.3按照1.1的方式修改每一台client的主机名已经hosts,已经ip地址/etc/sysconfig/network-scripts下的如下文件
然后使用vim 修改箭头所指向的文件,修改如下 1.4重启网络服务
$>sudo service network restart 1.5使用ifconfig查看是否当前网址
1.6依次修改每一台client 1.7使用ping 主机名或是(IP地址)查看是3台机器是否处在同一个网段 2.准备完全分布式主机的ssh 2.1.删除所有主机上的/home/zpx/.ssh/*
2.2.在s10主机上生成密钥对
$>ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa
2.3.将s10的公钥文件id_rsa.pub远程复制到s11,s12主机上。
并放置/home/zpx/.ssh/authorized_keys
$>scp id_rsa.pub zpx@s10:/home/zpx/.ssh/authorized_keys
$>scp id_rsa.pub zpx@s11:/home/zpx/.ssh/authorized_keys
$>scp id_rsa.pub zpx@s12:/home/centos/.ssh/authorized_keys 2.4.ssh 主机名 测试是否成功(一般第一次需要我们登录验证) 3.Hadoop完全分布式搭建 我们使用节点s10作为namenode,使用s10,s11,s12作为datenode,使用是s10作为resourcemanager。 目录/home/zpx/soft/hadoop-2.7.3/etc/hadoop 3.1 core-site.xml <?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://s10/</value>
</property>
<!--- 配置新的本地目录,如果不配置,在默认情况下保存数据,每次开机都会直接删除掉 -->
<property>
<name>hadoop.tmp.dir</name>
<value>/home/zpx/hadoop</value>
</property>
</configuration>3.2 hdfs-site.xml <?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
<property>
<name>dfs.replication</name>
<value>3</value>
</property>
</configuration> 3.3 mapred-site.xml
不变
3.4.yarn-site.xml
<?xml version="1.0"?>
<configuration>
<property>
<name>yarn.resourcemanager.hostname</name>
<value>s10</value>
</property>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
</configuration> 3.5 slaves s10 s11 s12 4.分发配置 $>cd /home/zpx/soft/hadoop-2.7.3/etc
$>scp -r hadoop zpx@s11:/home/zpx/soft/hadoop-2.7.3/etc/
$>scp -r hadoop zpx@s12:/home/zpx/soft/hadoop-2.7.3/etc/ 5删除临时目录文件(如果不删除,datanode有可能起不来)
$>cd /tmp
$>rm -rf *
$>ssh s11 rm -rf /tmp/*
$>ssh s12 rm -rf /tmp/*
6.删除hadoop日志
$>cd /home/zpx/soft/hadoop-2.7.3/logs
$>rm -rf *
$>ssh s11 rm -rf /soft/hadoop/logs/*
$>ssh s12 rm -rf /soft/hadoop/logs/* 7.格式化hdfs $>hadoop namenode -format
8.启动hadoop进程
$>start-all.sh
至此,我们的hadoop集群已经搭建完成 我们使用jps看一下各个节点的进程
在网址上输入ip地址:50070查看一下
hadoop的端口
-----------------
50070 //namenode http port
50075 //datanode http port
50090 //secondarynamenode http port
8020 //namenode rpc port
50010 //datanode rpc port
hadoop四大模块
-------------------
common
hdfs //namenode + datanode + secondarynamenode
mapred
yarn //resourcemanager + nodemanager
启动脚本
-------------------
1.start-all.sh //启动所有进程
2.stop-all.sh //停止所有进程
3.start-dfs.sh //
4.start-yarn.sh
[hdfs] start-dfs.sh stop-dfs.sh
namenode ,datanode ,secondarynamenode
[yarn] start-yarn.sh stop-yarn.sh
resourcemanager ,nodemanager
虚拟机的网络配置(选择nat模式)
问题总结:如果在搭建集群的过程中,发现某一个进程没有启动,比如说是s11下的datanode进程没有启动,一定要去看日志,看s11下的与datanode的日志,看出现了什么问题,比方说端口被占用一类的,不然hadoop的配置比较繁多,出了问题不好找。
|