Hadoop集群部署html
1:软件准备java
CentOS-Linux系统:CentOS-7-x86_64-DVD-1511.isonode
VirtualBox虚拟机:VirtualBox-5.1.18-114002-Win.exelinux
xshell远程登陆工具:xshell.exeweb
xftp远程文件传输:xftp.exeshell
hadoop:hadoop-2.7.3.tar.gzvim
jdk8:jdk-8u161-linux-x64.rpmwindows
2:物理架构:假设机房有四台机器搭建一个集群环境,Master(ip:192.168.56.100)、Slave1(ip:192.168.56.101)、Slave2(ip:192.168.56.102)、Slave3(ip:192.168.56.103)。在这里简要介绍一下,至于具体内容,我将在Hadoop的Hdfs文章详细介绍。浏览器
分布式:将不一样地点,不一样功能的,用于不一样数据的多态计算机经过通讯网络链接其余,统一控制,协调完成大规模信息处理的计算机系统。简单说,一块硬盘能够分红两部分:文件索引和文件数据,那么文件索引部署在单独一台服务器上咱们称为Master根节点(NameNode),文件数据部署在Master结点管理的孩子结点被称为Slave结点(DataNode)。服务器
3: VirtulBox虚拟机搭建Linux Centos系统
1).安装virtualbox,安装成功之后显示以下界面,选择新建,至关于添加一台Linux机器。
2.设置机器名称、类型、版本。
3.分配内存,选择默认1G。后期不够可扩容,测试基本够用
4. 建立虚拟硬盘,若是第一次装,不会出现问题.
5. 选择默认,点击下一步
6选择动态分配,须要多少系统分配多少,比起固定大小可能运行的慢一些
7: .选择默认,这样就建立完虚拟机,下面开始配置环境
8: 选中刚刚建立的Linux、点击设置网络,选择以下设置名称
9:解释关于网络的设置与配置。若是须要搭建hadoop集群的,特别要注意。
(1)找到本身电脑的网络设置-->选择更改适配器设置-->在这里会产生一块VirtualBox网卡,也就是提供网络链接的接口。 VirtulBox Host-Only Network (ip:192.168.56.1)
(2) VirtualBox网卡,也就是提供网络链接的接口。
假设Windows是客户端、Linux集群是服务器端?如今咱们须要上传文件,是否是应该客户端与服务器端在同一个局域网下才能访问?
答:固然必须在同一个网络下,就像学校的教务系统,你不连学校的网络你是没办法访问是同样的道理。而为何,咱们能用流量、wifi访问APP、网站呢?是由于那是经过互联网链接的。
Linux机器的ip在哪里设置呢?
答:咱们将经过Linux控制命令修改。
假设Windows的VirtulBox的网卡的ip是192.38.15.1(举例不是真实的),那么Linux机器的ip怎么设置呢?
答:192.38.15.0~255,随便本身设置没有被占用的ip。好比192.38.15.50 51 52 53 54 55 .....
下面是个人VirtulBox网卡的ip
10.添加CentOS系统盘片,启动。
(1)点击下图的按钮选择添加"虚拟光驱"
2)点击右边红色按钮选择"本身CentOs7"的文件路径
3)点击"启动"按钮
4)启动界面以下图默认第二项回车
5)选中文(鼠标移出linux界面,用快捷键ctrl+"→")
6)点击软件选择"基础设施服务器",接着点击开始安装
7)设置帐户密码
8) 等待安装完毕、输入用户名密码登陆成功。
9) 利用VirtualBox登陆,上传文件会比较麻烦,采用Xshell(本身安装)远程登陆。
10)采用Xftp(自行安装)上传文件。
上传hadoop-2.7.3.tar.gz、jdk-8u161-linux-x64.rpm到/usr/local目录下。新手提示:在右边窗口选中/usr/local目录,左边双击压缩包就上传成功了。
11: 配置集群在同一虚拟局域网下通讯
说明:经过上述操做,已经搭建好master(192.168.56.100)这台机器,开始配置虚拟网络环境在同一虚拟机下。(如下都是在linux中的控制命令;其中编辑或插入数据要按键盘上"Insert"按键;)
比较经常使用的命令:先按ese在按shift+q退出编辑,q+!退出编辑不保存,w+q保存编辑后的文件
1)vim /etc/sysconfig/network
2)NETWORKING=yes GATEWAY=192.168.56.1(说明:配置意思是,连上VirtualBox这块网卡)
3)vim /etc/sysconfig/network-scripts/ifcfg-enp0s3
4) IPADDR=192.168.56.100 NETMASK=255.255.255.0 BOOTPROTO=static ONBOOT=yes(说明:配置意思是,设置本身ip)
5)修改主机名:hostnamectl set-hostname master
6)重启网络:service network restart
7)查看ip:ifconfig
8)与windows可否ping通、若ping不一样,关闭防火墙。master:ping 192.168.56.1 windows:ping 192.168.56.100
9)systemctl stop firewalld.service (关闭linux防火墙,此操做必定要执行)
配置hadoop环境
1)解压jdk-8u161-linux-x64.rpm:rpm -ivh /usr/local/jdk-8u91-linux-x64.rpm-->默认安装目录到/usr/java
2)确认jdk是否安装成功。java -version查看是否安装成功。
3)解压hadoop-2.7.3.tar.gz:tar - zxvf /usr/local/hadoop-2.7.3.tar.gz。(在/usr/local目录下解压)
4)修改目录名为hadoop:mv /usr/local/hadoop-2.7.3 hadoop
5)切换目录到hadoop配置文件目录:cd /usr/local/hadoop/etc/hadoop
vim hadoop-env.sh
6)修改export JAVA_HOME 语句为 export JAVA_HOME=/usr/java/default
退出编辑页面:按esc键 输入:wq
7)vim /etc/profile
8)在文件最后追加 export PATH=$PATH:/usr/local/hadoop/bin:/usr/local/hadoop/sbin
9)source /etc/profile
12. 发散思考-更进一步
问题1:如今只是配置了一台master?那slave1、slave2、slave3也这样一台一台配置吗?
答:潜意识里面,确定有解决办法避免。固然,VirtualBox也提供了,复制机器的功能。选中master,右键复制。这样的话,就一台跟master如出一辙的机器就搞定了。咱们只须要修改网络的相关配置便可。注意:搭建集群环境须要本身复制三台。
问题2:如何查看这些linux机器是否在同一个环境下?
答:我从新捋一遍内容。启动四台linux机器(能够右键选择无界面启动)-->利用xshell远程登陆-->选择工具(发送键到所用界面)。依次输入ping 192.168.56.100、192.168.56.101、192.168.56.102、192.168.56.103。
13. 配置以上几台机器集群与启动hadoop
1、为四台机器配置域名。vim /etc/hosts
192.168.56.100 master
192.168.56.101 slave1
192.168.56.102 slave2
192.168.56.103 slave3
2、切换到hadoop配置文件目录 /usr/local/hadoop/etc/hadoop vim core-site.xml
3、修改四台linux机器的core-site.xml,在configuration加入property,name,value属性,指名四台机器谁是master(NameNode)。
<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://master:9000</value>
</property>
<configuration>
4、在master结点机器指名它的子节点有哪些:vim /usr/local/hadoop/etc/hadoop/slaves(其实就是指名子节点的ip, 去除默认的localhost)
slave1
slave2
slave3
5、初始化一下master配置:hdfs namenode -format
6、启动hadoop集群而且用jps查看结点的启动状况(此方法启动,本人在web浏览器上访问查看不到datanode,大家本身试下这种是否能行)
启动master:hadoop-daemon.sh start namenode
启动slave:hadoop-daemon.sh start datanode
我用的启动hadoop命令是在master这台机器上输入:start-all.sh,以后会要求依次输入其它3台密码
14. 查看集群启动状况:利用网页http://192.168.56.100:50070/