一、准备工作
1.安装虚拟机+操作系统:VMware、CentOS
2.设置基础环境三要素:IP、主机名、映射
3.设置远程连接工具:secureCRT、FileZilla、Notepad++
4.禁用安全系统和防火墙:service iptables、chkconfig iptables
5.卸载系统自带JDK 并配置我们需要的JDK版本:rpm -qa、-e、vi /etc/profile
注意:此处我们只安装一个Linux系统,后面进行克隆生成。速度更快,更方便
8G内存:可每个虚拟机分1G内存 , 8G以上可分2G内存
4G内存:看运气,最多512MB每台
主机名和网络
student01.com 02.com 03.com
----------- HDFS---------
DataNode
NameNode
SecondaryNameNode
----------YARN---------
ResourceManager
NodeManager
JobHistoryServer
-------zookeeper--------
QuorumPeerMain
-------hbase -------------
HMaster
HRegionServer
node1 node2 node3
NameNode DataNode DataNode
ResourceManager NodeManager NodeManager
HMaster HRegionServer HRegionServer
QuorumPeerMain QuorumPeerMain QuorumPeerMain
SecondaryNameNode
JobHistoryServer
node1 node2 node3
NameNode ResourceManager HMaster
QuorumPeerMain QuorumPeerMain QuorumPeerMain
DataNode DataNode DataNode
NodeManager NodeManager NodeManager
HRegionServer HRegionServer HRegionServer
JobHistoryServer SecondaryNameNode
二、完全分布式环境安装部署
1.克隆虚拟机
2.修改主机名
--》vi /etc/sysconfig/network
3.修改网络
3.1 vi /etc/udev/rules.d/70-persistent-net.rules
复制MAC地址( ATTR{address}),,删除eth0,
并将eth1修改为eth0
3.2 vi /etc/sysconfig/network-scripts/ifcfg-eth0
替换eth0的MAC地址(HWADDR=)
重启网络 service network restart
3.4 Linux中修改/etc/hosts
windows:C:\Windows\System32\drivers\etc\hosts
修改好网络映射配置文件
在linux中 /etc/hosts 文件写入所有主机的网络及主机名
3.5 在每一台Linux系统中都写入对方的网络映射信息。
ip地址 主机名
4.SSH免密码登录
步骤
4.1 在客户端主机中生成公/私钥对
ssh-keygen -t rsa
4.2将客户端主机中的公钥分发给服务端主机
ssh-copy-id 服务端主机地址
以上两步需要在三台主机上做相同操作
注意:分发公钥时 也要发给自己
4.3在客户端主机上免密码登录至服务端
ssh 服务端主机地址
5.上传hadoop二进制包到指定位置
5.1解压
tar -zxvf hadoop-2.6.0.tar.gz -C /opt/modules/
5.2配置hadoop-env.sh
export JAVA_HOME=/opt/modules/jdk1.7.0_67
5.3配置mapred-env.sh
export JAVA_HOME=/opt/modules/jdk1.7.0_67
5.4配置yarn-env.sh
export JAVA_HOME=/opt/modules/jdk1.7.0_67
5.5配置slaves
选择node2、node3作为从节点
hadoop02.linux
hadoop03.linux
5.6在HADOOP家目录下创建
mkdir -p data/tmp
5.7配置core-site.xml
5.8配置hdfs-site.xml
5.9配置mapred-site.xml
hadoop配置文件中没有此文件,需要我们手动重命名此文件
cp mapred-site.xml.template mapred-site.xml
5.10 配置yarn-site.xml
5.11分发hadoop到各个节点
scp -r hadoop-2.6.0/ hadoop02.linux:/opt/modules/
scp -r hadoop-2.6.0/ hadoop03.linux:/opt/modules/
5.12格式化namenode
bin/hdfs namenode -format
再次格式化时:删除HADOOP_HOME/data/tmp/下的所有内容,再进行格式化
5.13启动节点
sbin/start-dfs.sh
sbin/start-yarn.sh
sbin/mr-jobhistory-daemon.sh start historyserver
5.14 替换native包
5.15 配置HADOOP_HOME
在node1上配置即可
三、zookeeper完全分布式环境安装配置
1.解压
tar -zxvf zookeeper-3.4.6.tar.gz -C /opt/modules/
2.创建目录
mkdir -p mydata/zkData
3.修改配置文件名称
到conf目录下修改zoo_sample.cfg文件名称为zoo.cfg
4.修改zoo.cfg配置文件
dataDir=/opt/modules/zookeeper-3.4.6/mydata/zkData
添加
server.1=hadoop01.linux:2888:3888
server.2=hadoop02.linux:2888:3888
server.3=hadoop03.linux:2888:3888
5.在zkData目录下创建
vi myid
编辑内容:1
保存并退出
6.分发配置好的zookeeper到各个节点
scp -r zookeeper-3.4.6/ hadoop02.linux:/opt/modules/
scp -r zookeeper-3.4.6/ hadoop03.linux:/opt/modules/
7.修改各个节点上的myid文件
对应第二个节点 便改为 2
对应第三个节点 便改为 3
8.启动zookeeper时 zookeeper会有一个选举的过程,需要等待一小段时间
选出哪个为领导者
哪些又为跟随者
启动命令:bin/zkServer.sh start
查看集群状态命令:
bin/zkServer.sh status
领导者:Mode: leader
跟随者:Mode: follower
四、HBase完全分布式环境搭建
1.上传并解压到指定目录
tar -zxvf hbase-1.0.2-bin.tar.gz -C /opt/modules/
替换hadoop相关jar包
2.配置hbase-env.sh
指定JDK安装路径(which java)
export JAVA_HOME=/opt/modules/jdk1.7.0_67
2.1修改HBASE_MANAGES_ZK为false
--》代表使用我们自己配置的zookeeper
export HBASE_MANAGES_ZK=false
3.conf/hbase-site.xml
4.conf/regionservers
--》指定从节点所在节点
hadoop02.linux
hadoop03.linux
5.将Hbase目录分发到各个节点
scp -r ../hbase-1.0.2/ hadoop02.linux:/opt/modules/
scp -r ../hbase-1.0.2/ hadoop03.linux:/opt/modules/
同步集群时间:hbase集群要求,所有集群节点之间时间不能相差超过30秒
date -s "2017-12-15 09:34:00"
6.启动hbase
全部启动命令:start-hbase.sh
7.配置HBASE_HOME
#HBASE_HOME
export HBASE_HOME=/opt/modules/hbase-1.0.2
export PATH=$PATH:$HBASE_HOME/bin
HDFS :
50070
50090
YARN :
8088
job:
19888
HBase:
16010