[Big Data]hadoop分布式系统在Linux系统安装
待完善
Hadoop2.6.0部署与应用
一、 环境准备
硬件:3台虚拟机
内存:至少512MB
硬盘:至少20G
操作系统:rhel6.4 64位 最小化安装
|
主机名 |
IP(局域网) |
描述 |
|
Master |
192.168.111.5 |
hdfs主节点,yarn主节点 |
|
slaves1 |
192.168.111.6 |
hdfs数据节点,yarn计算节点 |
|
slaves2 |
192.168.111.7 |
hdfs数据节点,yarn计算节点 |
(1) 安装openssh
在每台虚拟机上安装openssh,最小化虚拟机默认没有安装,自行配置yum安装openssh。3台虚拟机之间需要相互ssh登录
[root@master ~]#yum install openssh* -y
(2) 配置主机名和IP
修改主机名,编辑/etc/sysconfig/network文件
[root@master ~]#vi /etc/sysconfig/network
将主节点计算机名改为master
hostname=master
其他2台类推
hostname=slaves1
hostname=slaves2
然后修改3台虚拟机的IP为在同一个网段的静态IP
[root@master ~]#vi /etc/sysconfig/network-scripts/ifcfg-eth0
内容分别如下
IPADDR=192.168.111.5
IPADDR=192.168.111.6
IPADDR=192.168.111.7
配置hosts文件,方便访问,不用记IP
[root@master ~]# vi /etc/hosts
192.168.111.5 hadoop-master
192.168.111.6 hadoop-slaves1
192.168.111.7 Hadoop-slaves2
然后把/etc/hosts文件分发到其他2台虚拟机上
[root@master ~]# scp /etc/hosts slaves1:/etc/
[root@master ~]# scp /etc/hosts slaves2:/etc/
二、 安装JDK
可以到oracle官网下载jdk
http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
http://download.oracle.com/otn-pub/java/jdk/8u101-b13/jdk-8u101-linux-x64.tar.gz
在每台虚拟机上安装JDK,解压tar.gz包,,把解压的文件夹jdk1.8.0_31移到/usr/java下
[root@master ~]#tar zxvf jdk-8u31-linux-x64.gz
[root@master ~]#mkdir /usr/java
[root@master ~]#mv jdk1.8.0_31 /usr/java
配置环境变量
[root@master ~]#vi /etc/profile
将以下内容添加到/etc/profile的最后面
export JAVA_HOME=/usr/java/jdk1.8.0_31
export PATH=$PATH:$JAVA_HOME/bin
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export JAVA_HOME PATH CLASSPATH
使环境变量生效并验证是否安装成功
[root@master ~]#source /etc/profile
[root@master ~]#java -versison
三、 建立ssh无密登录
3台虚拟机建立专属用户hadoop并为其建立相互信任关系,使其方便自动登录运行命令,密码统一使用hadoop
[root@master ~]#useradd hadoop
[root@master ~]#passwd hadoop
[root@master ~]#su - hadoop
[hadoop@master ~]$Ssh-keygen -t rsa
一直回车就可以生成公钥和私钥,把3台虚拟机的公钥id_rsa.pub文件合并到一个authorized_keys文件上,然后分发到3台虚拟机上,改authorized_keys文件为600权限,使其可以相互登录
在slaves1和slaves2上操作,slaves2对应换编号
[hadoop@slaves1 ~]$cd .ssh
[hadoop@slaves1 ~]$scp id_rsa.pub master:~/.ssh/id_rsa.pub1
在master上操作
[hadoop@master ~]cd .ssh
[hadoop@master ~]cat id_rsa.pub >> authorized_keys
[hadoop@master ~]cat id_rsa.pub1 >> authorized_keys
[hadoop@master ~]cat id_rsa.pub2 >> authorized_keys
[hadoop@master ~]cat authorized_keys #查看是否操作正确
[hadoop@master ~]scp authorized_keys hadoop-master:~/.ssh/
[hadoop@master ~]chmod 600 ~/.ssh/authorized_keys
四、 安装hadoop
在主节点上操作,解压hadoop-2.6.0.tar.gz到hadoop用户家目录,编辑hadoop的配置文件,用hadoop用户操作
Su hadoop
Tar zxvf hadoop-2.6.0.tar.gz
修改hadoop-env.sh和yarn-env.sh文件的JAVA_HOME来指定JDK的路径
vi hadoop-2.6.0/etc/hadoop/hadoop-env.sh
第25行 export JAVA_HOME=/usr/java/jdk1.8.0_31
vi hadoop-2.6.0/etc/hadoop/hadoop-env.sh
第23行 export JAVA_HOME=/usr/java/jdk1.8.0_31
编辑从节点列表文件slaves
vi slaves
指定两台从节点
Hadoop-slvaes1
hadoop-slaves2
编辑core-site.xml,指定主节点的地址和端口
Cd hadoop-2.6.0/etc/hadoop
vi core-site.xml
<configuration> <property> <name>fs.defaultFS</name> <value>hdfs://master:9000</value> </property> </configuration>
复制mapred-site.xml.template为mapred-site.xml,指定mapreduce工作方式
cd hadoop-2.6.0/etc/hadoop
vi mapred-site.xml
<configuration> <property> <name>mapreduce.framework.name</name> <value>yarn</value> </property> </configuration>
编辑yarn-site.xml,指定yran的主节点和端口
vi yarn-site.xml
<configuration> <!-- Site specific YARN configuration properties --> <property> <name>yarn.nodemanager.aux-services</name> <value>mapreduce_shuffle</value> </property> <property> <name>yarn.nodemanager.aux-services.mapreduce.shuffle.class</name> <value>org.apache.hadoop.mapred.ShuffleHandler</value> </property> <property> <name>yarn.resourcemanager.address</name> <value>master:8032</value> </property> <property> <name>yarn.resourcemanager.scheduler.address</name> <value>master:8030</value> </property> <property> <name>yarn.resourcemanager.resource-tracker.address</name> <value>master:8035</value> </property> <property> <name>yarn.resourcemanager.admin.address</name> <value>master:8033</value> </property> <property> <name>yarn.resourcemanager.webapp.address</name> <value>master:8088</value> </property> </configuration>
将hadoop-2.6.0文件夹分发到其他2台虚拟机上
Scp -r hadoop-2.6.0 hadoop-slaves1:~
Scp -r hadoop-2.6.0 hadoop-slaves2:~
编辑环境变量
Vi .baserc
HADOOP_HOME=/home/hadoop/hadoop-2.6.0
PATH=$PATH:$HADOOP_HOME/bin
Export HADOOP_HOME PATH
格式化分布式文件系统
Hadoop namenode -fotmat
在主节点启动
hadoop-2.6.0/sbin/start-all.sh
打开浏览器http://192.168.111.5:8088
如果成功应该看到如下效果
打开浏览器http://192.168.111.5:50070
如果成功可以看到如下效果
五、 运行测试
[Big Data]hadoop分布式系统在Linux系统安装的更多相关文章
- hadoop伪分布式环境搭建之linux系统安装教程
本篇文章是接上一篇<超详细hadoop虚拟机安装教程(附图文步骤)>,上一篇有人问怎么没写hadoop安装.在文章开头就已经说明了,hadoop安装会在后面写到,因为整个系列的文章涉及到每 ...
- LNMP平台搭建---Linux系统安装篇
在互联网网站开发领域,有一个名词,大家一定不陌生,那就是LAMP,经典的Web服务器环境,由Linux+Apache+MySQL+PHP组成,,后来,一个名叫Nginx的Web服务器开源出来了,因其更 ...
- 从Linux系统安装到Web应用启动教程
概述 本文讲述web应用服务器安装配置教程,其中包括:Linux系统安装,Mysql数据库安装配置,Redis安装配置,Tomcat安装配置,MongoDB安装配置,Linux JDK安装使用,Ngi ...
- 阿里云服务器Linux系统安装配置ElasticSearch搜索引擎
近几篇ElasticSearch系列: 1.阿里云服务器Linux系统安装配置ElasticSearch搜索引擎 2.Linux系统中ElasticSearch搜索引擎安装配置Head插件 3.Ela ...
- linux系统安装(上)
1.VMware虚拟机的软件应用 www.vmware.com 2.linux系统安装设置(分区为重点) 3.远程登录管理工具介绍centOS5.5 使用虚拟机的优点 1.不用分区 2.可以完成本机与 ...
- 1.Linux系统安装
Linux系统安装系统分区(磁盘分区) 主要管理:文件和目录分类:主分区:最多有4个 扩展分区:1个扩展分区 和主分区最多4个 存放逻辑分区 逻辑分区:存放数据 格式化:高级格式化(逻辑格式化) 写入 ...
- Linux学习心得之 LVM管理与Linux系统安装
作者:枫雪庭 出处:http://www.cnblogs.com/FengXueTing-px/ 欢迎转载 LVM管理与Linux系统安装 1.前言 2.LVM 简介与术语 3.LVM 使用 4.Li ...
- Linux系统安装时分区的选择(推荐)
Linux系统安装时分区的选择(推荐) 出处:http://www.cnblogs.com/gylei/archive/2011/12/04/2275987.html 前言: 以前初识Linux时, ...
- Vmware安装与VMware下Linux系统安装
源文件地址:http://www.cnblogs.com/lclq/p/5619271.html 1.下载安装VMware,我安装的是VMware 12.VMware从11开始不再支持32位系统,32 ...
随机推荐
- 关于C++中虚函数表存放位置的思考
其实这是我前一段时间思考过的一个问题,是在看<深入探索C++对象模型>这本书的时候我产生的一个疑问,最近在网上又看到类似的帖子,贴出来看看: 我看到了很多有意思的答案,都回答的比较好,下面 ...
- 解读QML之一
http://cache.baiducontent.com/c?m=9d78d513d98002b8599dcb201a17a7374408c6347691c4523f8a9c12d522195646 ...
- Linq List<String>
List<string> _year = new List<string>() { "一月", "二月", "三月" ...
- Win7 “Bluetooth设置”对话框无法打开,及无法查找到设备
方法是在百度上找到的,试用成功. 1.打开开始菜单中的运行选项,然后在对话框中输入services.msc,回车打开服务界面: 2.然后在弹出来的服务窗口中查找到Bluetooth Support S ...
- Echarts自适应浏览器大小
var myChart = echarts.init(document.getElementById('sitesChar')); var option = { title : { text: 'No ...
- 一个经典的PHP验证码类分享
我们通过PHP的GD库图像处理内容,设计一个验证码类Vcode.将该类声明在文件vcode.class.php中,并通过面向对象的特性将一些实现 的细节封装在该类中.只要在创建对象时,为构造方法提供三 ...
- combo扩展:禁止手工改变输入框的值
<!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content ...
- 深入解析FileInputStream和FileOutputStream
http://swiftlet.net/archives/1363 FileInputStream和FileOutputStream类属于字节类,可以操作任意类型的文件.在数据流的处理过程中,有两种情 ...
- js框架——angular.js(2)
1. 模块的利用扩充 模块的名称也可以当做变量使用,例如: <body ng-app> <label><input type="checkbox" n ...
- AndroidGradle --多渠道打包配置(转发)
需求 国内Android app发布一般会有多个渠道,为了跟踪发展情况,通常会为每一个渠道定制一个特别的apk. 一般友盟之类第三方统计的渠道ID定义如下,以wandoujia为例 <meta- ...