赞
踩
系统:centos7.6
前提:四台kvm虚拟机
简述:四台虚拟机分别扮演不同角色,第一台为NameNode master机,第二台为Secondary NameNode ,第三,四台为DataNode Slaver。四台为统一网段192.168.4.0/24
以下ip都是例子具体看自己主机ip,ip a 或ifconfig
1.启动四台虚拟机以第一台为例
virsh start node-1
2.修改四台主机名以第一台为例
hostnamectl set-hostname node-1.tedu.cn
3.通过ssh在宿主机连接四台虚拟机,ssh+ip
ssh 192.168.4.200
ctrl+shift+T开启3个终端连接另外三台
4.检测四台是否能互相ping通,每台主机ip不同按自己情况来ping
ping 192.168.5.140
...
...
...
5.修改hosts文件将ip与主机名绑定,以第一台为例,四台都需要修改
vi /etc/hosts
在末尾添加每台的ip+hostname
6.我们将node-1设为master节点,所以要将ssh连接配置为免密登录,布置ssh信任关系
ssh-keygen
连续按回车三次
将生成的密钥分给4个节点
ssh-copy-id node-1
ssh-copy-id node-2
ssh-copy-id node-3
ssh-copy-id node-4
第一个提示输入yes第二个输入虚拟机密码
测试信任关系是否连接
ssh node-2
输入exit登出
注意看主机名变化
7.在每台虚拟机上关闭防火墙,清除iptables规则链,设置seliunx为disabled
iptables -F
iptables -X
iptables -Z
systemctl stop firewalld
systemctl disable firewalld
8.在每个节点上安装java-1.8.0-openjdk-devel
yum install -y java-1.8.0-openjdk-deve
9.测试每台机子的jdk版本号和jps,每台的jps不同
java -version
jps
10.如果windows上有Hadoop包可以用xftp5传送到宿主机/opt下,如果没有可以直接在宿主机下载
wget http://archive.apache.org/dist/hadoop/common/hadoop-2.7.6/hadoop-2.7.6.tar.gz
在宿主机利用scp发送Hadoop到node-1节点
scp /opt/hadoop-2.7.6.tar.gz root@192.168.4.200:/root/
11.在node-1上安装Hadoop
解压文件
tar -xf hadoop-2.7.6.tar.gz
mv hadoop-2.7.6 /usr/local/hadoop
先修改Hadoop环境变量文件
(1)查看java-openjdk安装位置
rpm -ql java-1.8.0-openjdk
一般为/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.262.b10-0.el7_8.x86_64/jre
(2)修改环境变量文件
cd /etc/hadoop
vi hadoop-env.sh
启动Hadoop
cd /usr/local/hadoop
./bin/hadoop
12.在node-1节点上修改slaves文件,添加DateNode节点node-3,node-4
cd etc/hadoop/
vi slaves
将原来的localhost删除添加node-3,node-4两行
13.修改Hadoop的核心配置文件core-site.xml
vi core-site.xml
在 中添加
<property>
#配置NameNode在哪台机以及端口号,客户端可以通过此地址访问HDFS
<name>fs.defaultFS</name>
<value>hdfs://node-1:9000</value>
</property>
<property>
<name>hadoop.tmp.dir</name> #临时目录其他目录以这为基本目录
<value>/var/hadoop</value> #Hadoop的数据目录,需要创建
</property>
创建数据目录
mkdir /var/hadoop
ssh node-2 mkdir /var/hadoop
ssh node-3 mkdir /var/hadoop
ssh node-4 mkdir /var/hadoop
修改hdfs-site.xml配置文件
在 中添加
<property>
<name>dfs.namenode.http-address</name>
<value>node-1:50070</value>
</property>
<property>
<name>dfs.namenode.secondary.http-address</name>
<value>node-2:50090</value>
</property>
<property>
<name>dfs.replication</name>
<value>2</value>
</property>
14.在每个节点安装rsync同步包
yum install -y rsync
在node-1主节点操作,将node-1上的/usr/local/hadoop/数据同步到其他节点上
rsync -aSH --delete /usr/local/hadoop/ 192.168.4.194:/usr/local/hadoop/ -e "ssh" &
rsync -aSH --delete /usr/local/hadoop/ 192.168.4.187:/usr/local/hadoop/ -e "ssh" &
rsync -aSH --delete /usr/local/hadoop/ 192.168.4.140:/usr/local/hadoop/ -e "ssh" &
在其他节点检测数据是否同步
ls /usr/local/hadoop
15.格式化,在node-1上操作
cd /usr/local/hadoop/
./bin/hadoop namenode -format
./sbin/start-dfs.sh
16.在每个节点上验证角色
jps
会显示所分配的角色
第一台为NameNode master机,第二台为Secondary NameNode ,第三,四台为DataNode
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。