马士兵hadoop第一课:虚拟机搭建和安装hadoop及启动

马士兵hadoop第二课:hdfs集群集中管理和hadoop文件操作

马士兵hadoop第三课:java开发hdfs

马士兵hadoop第四课:Yarn和Map/Reduce配置启动和原理讲解

马士兵hadoop第五课:java开发Map/Reduce

(一) 需要用到的软件

virtualbox redhat64(centos7) hadoop-2.7.3.jar jdk8 xshell ftp(我用的是FlashFXP)

所需要的软件,最好到官网上去下载,也可以到百度云盘下载:http://pan.baidu.com/s/1nvkDLbV

(二)安装配置虚拟机

将virualbox安装好后,需要新建一个linux版redhat64的虚拟机,我取名叫master;

特别需要注意的地方:

将虚拟机的网络设置为host-only,我因为忘了设置成host-only,导致新建的虚拟机和宿主机怎么都ping不通,浪费了我一些时间。

选中虚拟机-->设置-->网络,设置如下:

虚拟机网络设置

a) 在设置虚拟机网络前,先设置宿主机的VirtualBox Host-Only Network,

打开网络共享中心-->更改适配器设置,然后设置IP和子网掩码

b)  设置虚拟机GATEWAY为192.168.56.1

[root@master ~]# vi /etc/sysconfig/network

#编辑内容如下
NETWORKING=yes
GATEWAY=192.168.56.1

c) 设置虚拟机IP和子网掩码

[root@master ~]# vim /etc/sysconfig/network-sripts/ifcfg-enp0s3

编辑内容如下

TYPE=Ethernet

IPADDR=192.168.56.100

NETMASK=255.255.255.0

d) 修改master主机名

主机名千万不能有下划线【马老师一再强调】

[root@master ~]# hostnamectl set-hostname master

e) 重启master虚拟机网络

[root@master ~]# service network restart

f) 在虚拟机上ping宿主机,在宿主机上ping虚拟机master

[root@master ~]# ping 192.168.56.1
PING 192.168.56.1 (192.168.56.1) 56(84) bytes of data.
64 bytes from 192.168.56.1: icmp_seq=1 ttl=128 time=0.191 ms
64 bytes from 192.168.56.1: icmp_seq=2 ttl=128 time=0.203 ms
C:\Users\Administrator>ping 192.168.56.100

正在 Ping 192.168.56.100 具有 32 字节的数据:

来自 192.168.56.100 的回复: 字节=32 时间<1ms TTL=64

来自 192.168.56.100 的回复: 字节=32 时间<1ms TTL=64

来自 192.168.56.100 的回复: 字节=32 时间<1ms TTL=64

互相ping,测试成功,若不成功,注意防火墙的影响,关闭windows或虚拟机防火墙。

systemctl stop firewalld.service

systemctl disable firewalld.service

(3)安装jdk

将已下载好的jdk-8u91-linux-x64.rpm和hadoop-2.7.3.tar.gz,

通过FlashFXP工具(也可以是其他的ftp工具)上传上去,

用xshell连接master虚拟机。

使用rpm进行安装jdk:

默认安装在 /usr/java下面,执行java看到如下输入,即表示java安装成功:

(4)安装hadoop

tar -xvf hadoop-2.7.3.tar.gz

并将解压后的文件hadoop-2.7.3修改成hadoop,执行mv hadoop-2.7.3 hadoop

(5) 配置hadoop的JAVA_HOME

vim /usr/hadoop/etc/hadoop/hadoop-env.sh

export JAVA_HOME=/usr/java/default

(6) 配置hadoop的环境变量

vim /etc/profile

在profile文件尾部添加内容如下:

export PATH=$PATH:/usr/hadoop/bin:/usr/hadoop/sbin

要想使profile文件生效,还要执行指令

[root@master ~]# source /etc/profile

 (7)修改master的/usr/local/hadoop/etc/hadoop/core-site.xml,指明namenode的信息

<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://master:9000</value>
</property>
</configuration>

这里需要指明一下,core-site.xml里面的配置需要复制到slave虚拟机上,由于采用的是步骤(9)虚拟机复制,这个信息也已经复制过去了。

(8) 测试hadoop命令是否可以直接执行

任意目录下敲 hadoop,打印如下,表示hadoop的环境变量配置成功

(9) 复制3台虚拟机

关闭master,选中master-->右键-->复制,分别复制出取名为slave1,slave2,slave3的3台虚拟机。

使用无界面启动方式启动4台虚拟机

然后,使用以上步骤(2)中的虚拟机网络配置(b)(c)(d)(e)(f)操作slave1,slave2,slave3,

slave1 设置为IP:192.168.56.101,hostname:slave1

slave1 设置为IP:192.168.56.102,hostname:slave2

slave1 设置为IP:192.168.56.103,hostname:slave3

使用xshell依次登陆上maser,slave1,slave2,slave3四台虚拟机。

要想达到以上截图中的效果,操作:工具-->发送键输入到所有会话;选项卡-->排列-->瓷砖排序。

 (10)搭建集群

在hadoop中,

跑在master机器上的组件/模块/进程有:

namenode,secondarynamenode,resource manager(job tracker),history sever,

跑在slave机器上的有:

datanode,node manager(task tracker)

a) 修改4台机器的/etc/hosts,让他们通过名字认识对方,测试一下互相用名字可以ping通。

192.168.56.100 master
192.168.56.101 slave1
192.168.56.102 slave2
192.168.56.103 slave3

b) 修改master下的/usr/local/hadoop/etc/hadoop/slaves

slave1
slave2
slave3

这样,master就可以知道slave1,2,3对应的IP了。

c) 启动namenode和datanode

master上需要格式化namenode,执行指令:

hadoop namenode -format

启动master上的namenode,在master上执行:

hadoop-daemon.sh start namonode

启动slave上的datanode,在每个slave上执行:

hadoop-daemon.sh start datanode

使用jps查看namenode和datanode的启动情况。

至此,一个master,三个slave的hadoop集群搭建完成并启动成功。

感谢马士兵老师的无私奉献,讲解视频百度云盘地址:http://pan.baidu.com/s/1slU6QrN

原文地址:http://www.cnblogs.com/yucongblog/p/6650822.html

马士兵hadoop第一课:虚拟机搭建和安装hadoop及启动(转)的更多相关文章

  1. 虚拟机搭建和安装Hadoop及启动

    马士兵hadoop第一课:虚拟机搭建和安装hadoop及启动 马士兵hadoop第二课:hdfs集群集中管理和hadoop文件操作 马士兵hadoop第三课:java开发hdfs 马士兵hadoop第 ...

  2. Linux系统初学-第一课 虚拟机安装CentOS6.5以及Root密码找回

    Linux系统初学第一课 虚拟机安装CentOS6.5以及Root密码找回 虚拟机安装CentOS6.5 一.安装虚拟机 1-1.安装虚拟机VMware Station,新建虚拟机,选择典型配置. 1 ...

  3. ThinkPHP第一课 环境搭建

    第一课 环境搭建 1.说明: ThinkPHP是一个开源的国产PHP框架,是为了简化企业级应用开发和敏捷WEB应用开发而诞生的. 最早诞生于2006年初.原名FCS.2007年元旦正式更名为Think ...

  4. 1.如何在虚拟机ubuntu上安装hadoop多节点分布式集群

    要想深入的学习hadoop数据分析技术,首要的任务是必须要将hadoop集群环境搭建起来,可以将hadoop简化地想象成一个小软件,通过在各个物理节点上安装这个小软件,然后将其运行起来,就是一个had ...

  5. Hadoop3集群搭建之——安装hadoop,配置环境

    接上篇:Hadoop3集群搭建之——虚拟机安装 下篇:Hadoop3集群搭建之——配置ntp服务 Hadoop3集群搭建之——hive安装 Hadoop3集群搭建之——hbase安装及简单操作 上篇已 ...

  6. ubuntu在虚拟机下的安装 ~~~ Hadoop的安装及配置 ~~~ Hdfs中eclipse的安装

     前言 Hadoop是基于Java语言开发的,具有很好跨平台的特性.Hadoop的所要求系统环境适用于Windows,Linux,Mac系统,我们推荐选择使用Linux或Mac系统.而Linux系统则 ...

  7. hadoop集群环境搭建之安装配置hadoop集群

    在安装hadoop集群之前,需要先进行zookeeper的安装,请参照hadoop集群环境搭建之zookeeper集群的安装部署 1 将hadoop安装包解压到 /itcast/  (如果没有这个目录 ...

  8. Hadoop第一课:Hadoop集群环境搭建

    一. 检查列表 1.1.网络访问 设置电脑IP以及可以访问网络设置:进入etc/sysconfig/network-scripts/,使用命令“ls -all” 查看文件.会看到ifcfg-lo文件然 ...

  9. hadoop第一课

    Hadoop基本概念 在当下的IT领域,大数据很"热",实现大数据场 景的Hadoop系列产品更"热". Hadoop是一个开源的分布式系统基础架构,由 Apa ...

随机推荐

  1. 安全错误使用CORS在IE10与Node和Express及XMLHttpRequest: 网络错误 0x4c7, 操作已被用户取消

    在IE下:VUE项目,后台替换为https请求之后,vue热更新请求挂起,控制台报错:XMLHttpRequest: 网络错误 0x4c7, 操作已被用户取消.但是chrome与Firefox正常 当 ...

  2. Java中的List接口特有的方法

    import java.util.ArrayList; import java.util.List; /* List接口中特有方法: 添加 add(int index, E element) addA ...

  3. 利用Python的pyHook包来进行键盘监听

    最近在实习的时候发现一件很蛋疼的事情,那就是我们组的项目因为有后台进程,所有每次运行完以后后台进程都必须要自己手动关闭,每次编译之前忘记关就会有一大堆编译错误,我就想直接弄个可以快捷键直接关闭算了   ...

  4. iOS与JS相互传值与交互

    JavaScriptCore是webkit的一个重要组成部分,主要是对JS进行解析和提供执行环境.iOS7后苹果在iPhone平台推出,极大的方便了我们对js的操作.我们可以脱离webview直接运行 ...

  5. sql where in字符串问题

    在pycharm中执行 select * from value in(1,2); 会提醒: No statement found under the caret. Execute all statem ...

  6. NOIP模拟赛 篮球比赛1

    篮球比赛1(basketball1.*) Czhou为了提高机房里各种神牛的身体素质,决定在每次训练后举行篮球比赛.为了保持比赛公平,Czhou要将神牛们分成两队.首先神牛们赛前都要排成固定的队伍:然 ...

  7. centos里没有pip命令怎么办?

    刚刚入门python的嘛,然后这个centos也是不是那么熟悉!! pip在centos也没有,所以网上找来资料,3条语句就搞定啦! 1.查看是否安装依赖包,没安装先安装: yum install e ...

  8. destoon 短信发送函数及短信接口修改

    // $DT在common.inc.php中定义, $CACHE = cache_read('module.php'); $DT = $CACHE['dt'];  从缓存里读取网站配置信息. //$d ...

  9. html5音频audio对象处理以及ios微信端自动播放和息屏后唤醒的判断---可供参考(功能都完整实现了,只是细节还没处理的很好)

    // html模版中的 此处结合了weui样式整合的微信手机端片段代码(不可直接粘贴复制进行使用)里面含有一些php的写法,可直接略过..###重点参考js代码### <div> < ...

  10. python可视化动态图表: 关于pyecharts的sankey桑基图绘制

    最近因工作原因,需要处理一些数据,顺便学习一下动态图表的绘制.本质是使具有源头的流动信息能够准确找到其上下级关系和流向. 数据来源是csv文件 导入成为dataframe之后,列为其车辆的各部件供应商 ...