虚拟机上安装Hadoop分布式集群

网友投稿 284 2022-11-25

虚拟机上安装Hadoop分布式集群

tips:

1. 用户名root,密码123456

2. 进出虚拟机快捷键:Ctrl+Alt

3. 进入文件  vi + 文件名(vi test.txt)

编辑完成之后,按ESC键 跳到命令模式(命令前面冒号是必要的):

:w   保存文件但不退出vi

:w file 将修改另外保存到file中,不退出vi

:w!   强制保存,不推出vi

:wq  保存文件并退出vi

:wq! 强制保存文件,并退出vi

:q  不保存文件,退出vi

:q! 不保存文件,强制退出vi

:e! 放弃所有修改,从上次保存文件开始再编辑

4. 终止ping命令,ctrl+c

/////////////////////第一步:配master////////////////////////////

固定IP设置:

vi /etc/sysconfig/network-scripts/ifcfg-eth0

master:

IPADDR=192.168.128.130

NETMASK=255.255.255.0

GATEWAY=192.168.128.2

DNS=192.168.128.2

退出vi;

输入命令 service network restart

还要改编辑->虚拟网络编辑器->更改设置(以管理员权限打开)

vmnet0:负责桥接任务。改成桥接,自动连接

vmnet1:负责与物理机即本机通信,

子网:本机IP如果是192.168.0.100,,那么子网就改成192.168.0.0

子网掩码: 255.255.255.0

勾选“将主机虚拟适配器链接到此网络”

勾选“使本地DHCP服务将IP地址分配给虚拟机”

vmnet8,负责与虚拟机通讯,选择NAT模式,

子网:视频里如果master的ip调成192.168.128. 192.168.128.0

子网掩码255.255.255.0

NAT192.168.128.2

DHCP192.168.128.128到192.168.128.254

勾选“将主机虚拟适配器链接到此网络”

勾选“使本地DHCP服务将IP地址分配给虚拟机”

在虚拟机(或xshell)中ping一个网址,如果成功ping通,说明设置成功

//////////////////////////////第二步:克隆////////////////////////////

在master中安装openssh :

命令 yum -y install ntp openssh-clients openssh-server vim

安装完成后,

命令 poweroff

vmware界面->右键master虚拟机->创建完整克隆

进入slave1,修改IP

命令 ifconfig -a

记录 IP地址(inet addr) 和 硬件地址(HWaddr),例如:

eth1

00:0C:29:9A:BE:3D

192.168.128.131

命令 vi /etc/sysconfig/network-scripts/ifcfg-eth0

改相应东西

命令 vi /etc/sysconfig/network

改主机名

重启虚拟机reboot

按照相同的方式改slave2,slave3...

//////////////////////////第三步:SSH////////////////////////////////

SSH保障远程登录的安全性;

通过SSH可以对文件进行加密处理,以后调用节点不需要输入密码。

每台机器上命令  vi /etc/hosts

192.168.128.130 master

192.168.128.131 slave1

192.168.128.132 slave2

192.168.179.130 master

192.168.179.131 slave1

192.168.179.132 slave2

配置公钥/私钥

ssh-keygen -t rsa

ls /root/.ssh/

ssh-copy-id -i /root/.ssh/id_rsa.pub master

ssh-copy-id -i /root/.ssh/id_rsa.pub slave1

ssh-copy-id -i /root/.ssh/id_rsa.pub slave2

测试:master主机命令   ssh slave1

exit

////////////////////////第四步:时间同步//////////////////////

NTP是用来使计算机时间同步化的一种协议,他可以使计算机对其服务器或时钟源做同步化,提供高精准度的时间校正。Hadoop集群对时间要求很高,主节点与各从节点的时间都必须要同步。配置时间同步服务主要是为了进行集群间的时间同步。

(1)安装NTP服务。在各节点

yum -y install ntp

(2)设置假设master节点为NTP服务主节点,那么其配置如下。

vi /etc/ntp.conf

注释掉以server开头的行,并添加

restrict 192.168.128.2 mask 255.255.255.0 nomodify notrap

server 127.127.1.0

fudge 127.127.1.0 stratum 10

//就是要让master作为ntp服务器

在slave1和slave2上均填上  server master

所有节点关闭防火墙:

命令 service iptables stop & chkconfig iptables off

启动master节点的ntp服务:

service ntpd start & chkconfig ntpd on

slave1,slave2和master同步:

ntpdate master

slave1,slave2启动ntp

service ntpd start & chkconfig ntpd on

////////////////////////第五步:安装java/////////////////////

Xshell用“新建文件传输”

将jdk-8u151-linux-x654.rpm文件拖到/opt目录下

master进入/opt目录,执行命令

rpm -ivh jdk-8u151-linux-x64.rpm

master到/usr/java/jdk1.8.0_151/

pwd  查看路径 /usr/java/jdk1.8.0_151

配置环境变量

vi /etc/profile 文件

加入

export JAVA_HOME=/usr/java/jdk1.8.0_151

export PATH=$PATH:$JAVA_HOME/bin

source /etc/profile

java -version

刷新并验证JDK是否配置成功,执行命令"java -version"

/////////////////////第六步:搭建Hadoop//////////////////

**本地模式

没有HDFS,智能测试MR(不是运行再Yarn中,做一个独立的java程序来运行),只需配置etc/hadoop/hadoop-env.sh中的JAVA_HOME

**伪分布式

再单机上,模拟一个分布式环境,具备Hadoop的所有功能,只需一台机器

**完全分布式

全分布式模式用于生产,至少需要三台机器,其中一台伟主节点,配置Namenode, secondarynamenode ,resourcemanager,另外两台配置DataNode,NodeManager

**HA 高可用模式

在完全分布式基础上利用Zookeeper实现Namenode 和ResourceManager主从备份

**hadoop 目录结构

bin 基本脚本

etc 配置文件

include库包

lib库包

libexec

LICENSE.TXT

logs 日志文件

NOTICE.TXT

README.TXT

sbin 启动/关闭的脚本

share 编译后jar包,hadoop文档

**修改hadoop基础配置文件

common模块   -->core-site.xml

HDFS模块    -->hdfs-site.xml

MapReduce模块   -->mapred-site.xml

Yarn模块  -->yarn-site.xml

具体睦州

1. 通过xmanager的Xftp上传hadoop-2.6.5.tar.gz文件到/opt目录

2. 解压缩hadoop-2.6.5.tar.gz 文件

tar -zxf hadoop-2.6.5.tar.gz -C /usr/local

解压后即可,看到/usr/local/hadoop-2.6.5文件夹

3. 配置Hadoop

进入目录:

cd /usr/local/hadoop-2.6.5/etc/hadoop/

依次修改下面的文件:

4.1 core-site.xml(在/usr/local/hadoop-2.6.5/etc/hadoop/中)

fs.defaultFS

hdfs://master:8020

hadoop.tmp.dir

/var/log/hadoop/tmp

4.2 hadoop-env.sh (在/usr/local/hadoop-2.6.5/etc/hadoop/中)

export JAVA_HOME=/usr/java/jdk1.8.0_151

4.3 hdfs-site.xml (在/usr/local/hadoop-2.6.5/etc/hadoop/中)

dfs.namenode.name.dir

file:///data/hadoop/hdfs/name

dfs.datanode.data.dir

file:///data/hadoop/hdfs/data

dfs.namenode.secondary.mapred-site.xml(在/usr/local/hadoop-2.6.5/etc/hadoop/中先从模板复制创建 cp mapred-site.xml.template mapred-site.xml)

mapreduce.framework.name

yarn

mapreduce.jobhistory.address

master:10020

mapreduce.jobhistory.webapp.address

master:19888

4.5 yarn-site.xml(在/usr/local/hadoop-2.6.5/etc/hadoop/中)

yarn.resourcemanager.hostname

master

yarn.resourcemanager.address

${yarn.resourcemanager.hostname}:8032

yarn.resourcemanager.scheduler.address

${yarn.resourcemanager.hostname}:8030

yarn.resourcemanager.webapp.address

${yarn.resourcemanager.hostname}:8088

yarn.resourcemanager.webapp.for job history server

yarn.nodemanager.vmem-check-enabled

false

yarn.nodemanager.aux-services

mapreduce_shuffle

yarn.nodemanager.aux-services.mapreduce.shuffle.class

org.apache.hadoop.mapred.ShuffleHandler

yarn.nodemanager.resource.memory-mb

2048

yarn.scheduler.minimum-allocation-mb

512

yarn.scheduler.maximum-allocation-mb

4096

mapreduce.map.memory.mb

2048

mapreduce.reduce.memory.mb

2048

yarn.nodemanager.resource.cpu-vcores

1

4.6 yarn-env.sh (在/usr/local/hadoop-2.6.5/etc/hadoop/中)

export JAVA_HOME=/usr/java/jdk1.8.0_151

4.7 slaves (在/usr/local/hadoop-2.6.5/etc/hadoop/中)

删除localhost,添加:

slave1

slave2

slave3

4.8 拷贝hadoop安装文件到集群slave节点

在master任何目录

scp -r /usr/local/hadoop-2.6.5 slave1:/usr/local

scp -r /usr/local/hadoop-2.6.5 slave2:/usr/local

...

5.在/etc/profile添加Hadoop路径

export HADOOP_HOME=/usr/local/hadoop-2.6.5

export PATH=$HADOOP_HOME/bin:$PATH

在所有机器上执行

source /etc/profile

使修改生效

6. 格式化NameNode

进入目录

cd /usr/local/hadoop-2.6.5/bin

对namenode执行格式化(只需在master的 上面执行)

./hdfs namenode -format

//参考 6.Centos6.8虚拟机配置Hadoop2.6

////////////////////第七步: 查看集群监控/////////////////////////

1.启动HDFS集群

master上执行命令

cd /usr/local/hadoop-2.6.5/sbin/

./start-yarn.sh  启动YARN

./start-dfs.sh 启动HDFS

./mr-jobhistory-daemon.sh start historyserver

2.在windows系统设置IP映射

cat /etc/hosts

复制

192.168.128.130 master

192.168.128.131 slave1

192.168.128.132 slave2

到C:\Windows\System32\drivers\etc中去

3.访问8082

http://master:50070/dfshealth.jsp

4.访问8088

http://master:8088/cluster

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:马斯克的心灵感应和永生能成真吗?专家驳斥不可能的
下一篇:dfrobot四路电机驱动板简介
相关文章

 发表评论

暂时没有评论,来抢沙发吧~