[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 ...
随机推荐
- TFS 创建分支
1 2 3 4
- 查找List中的最大最小值
以下实例演示了如何使用 Collections 类的 max() 和 min() 方法来获取List中最大最小值: import java.util.*; public class Main { pu ...
- CodeForces 719B Anatoly and Cockroaches 思维锻炼题
题目大意:有一排蟑螂,只有r和b两种颜色,你可以交换任意两只蟑螂的位置,或涂改一个蟑螂的颜色,使其变成r和b交互排列的形式.问做少的操作次数. 题目思路:更改后的队列只有两种形式:长度为n以r开头:长 ...
- shell注意事项
以下基于bash 1.shell只有变量和数组?,数组() 2.( (表达式1,表达式2…) ) 3.[ expr ] 实际上是bash 中 test 命令的简写.即所有的 [ expr ] 等于 t ...
- json-c代码示例
#include <stdio.h> #include <string.h> #include <json.h> int main(int argc,char ** ...
- USB鼠标线序
鼠标线断了,找了个废弃的手机充电线接上,特记录线序如下: 红————白 白————橙绿————绿黑————蓝
- socket常见几种异常
第1个异常是 java.net.BindException:Address already in use: JVM_Bind. 该异常发生在服务器端进行newServerSocket(port)(po ...
- UVALive 4031 Integer Transmission(贪心 + DP)
分析:求出最大值和最小值比较简单,使用贪心法,求最小值的时候我们让所有的0尽可能的向后延迟就可以了,求最大值则相反. 关键在于求出可以组合出的数字个数. 这就是组合数学版的dp了,我们让dp[i][j ...
- Ubuntu下安装使用MongoDB
安装 官网下载: https://www.mongodb.org/ 解压解包 重命名为mongodb 移动到/usr/local/目录下 创建连个软连接 ln -s /usr/local/mongo ...
- springMVC如何访问静态文件
在进行Spring MVC的配置时,通常我们会配置一个dispatcher servlet用于处理对应的URL.配置如下:<servlet><servlet-name>mvc- ...