Hadoop2之在centos安装

参考:http://blog.csdn.net/circyo/article/details/46724335

主要分为两部分:1、安装jdk;2、安装Hadoop
1、安装jdk
● 网上下载jdk,复制到/usr/java目录,然后解压
● 在/etc/profile中添加环境变量

2、安装Hadoop
● 网上下载Hadoop2.7.0,复制到/usr目录,然后解压,并重命名目录为hadoop
● 在hadoop目录中新建tmp目录
● 在/etc/profile中添加环境变量
● 设置hadoop-env.sh和yarn-env.sh中的java环境变量
● 修改core-site.xml、hdfs-site.xml、mapred-site.xml和yarn-site.xml
● 将文件复制到slave服务器上
● 修改Master主机上的slaves文件
● 格式化HDFS文件系统
● 启动hadoop

详细教程如下

http://blog.csdn.net/circyo/article/details/46724335

CentOS7.0安装配置hadoop2.7.0
资源准备
资源下载:
● hadoop-2.7.0.tar.gz 密码:727y
● jdk-8u45-linux-x64.tar.gz 密码:d8bm
● CentOS-7.0-1406-x86_64-DVD.iso 密码:1a71
● virtual box for mac 密码:h9ig
注意事项:
● 如果自己下载资源的话,注意hadoop,jdk,centos都应该是64位或者32位的,以免出现无法预料的错误,上面的资源都是64位的
● 我是在mac下配置的,virtual box是ios x系统的,如果是其它系统的另外寻找资源下载安装
linux 虚拟机配置
系统配置:
● 虚拟机:一个master(Master.Hadoop),两个slave(Slave1.Hadoop, Slave2.Hadoop)
● 网络设置:我使用的是桥接的方式,因为只是实验性安装,我没有设置静态ip
● 内存:每个虚拟机配置1024M内存
● 分区:自动
● 软件选择:最小安装,注意选择开发工具
● 用户设置:密码都设置为:hadoophadoop, 不创建任何用户,操作时使用root直接进行
额外软件安装:
● centos7.0初始化时并没有ifconfig指令,需要使用下面两个指令进行安装:
yum search ifconfg
yum install net-tools.x86_64
完成其它两个虚拟机的安装:
● 两个slave的hostname可以改成Slave1.Hadoop, Slave2.Hadoop,方便区分
安装完后各个虚拟机的ip配置(参考用)
主机ip地址master.hadoop192.168.1.122slave1.hadoop192.168.1.125slave2.hadoop192.168.1.124
配置本地hosts
● 输入指令
vi /etc/hosts

// 将以下数据复制进入各个主机中

192.168.1.122 Master.Hadoop
192.168.1.125 Slave1.Hadoop
192.168.1.124 Slave2.Hadoop
● 使用以下指令对master主机中进行测试,可使用类似指令在slave主机测试
ping Slave1.Hadoop
ping Slave2.Hadoop

配置Master无密码登录所有Salve
以下在Master主机上配置
● 输入以下指令生成ssh
ssh-keygen

// 会生成两个文件,放到默认的/root/.ssh/文件夹中
● 把id_rsa.pub追加到授权的key里面去
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
● 修改文件”authorized_keys”权限
chmod 600 ~/.ssh/authorized_keys

● 设置SSH配置
vi /etc/ssh/sshd_config

// 以下三项修改成以下配置

RSAAuthentication yes # 启用 RSA 认证

PubkeyAuthentication yes # 启用公钥私钥配对认证方式

AuthorizedKeysFile .ssh/authorized_keys # 公钥文件路径(和上面生成的文件同)

● 重启ssh服务
service sshd restart

● 把公钥复制所有的Slave机器上
// scp ~/.ssh/id_rsa.pub 远程用户名@远程服务器IP:~/

scp ~/.ssh/id_rsa.pub root@192.168.1.125:~/
scp ~/.ssh/id_rsa.pub root@192.168.1.124:~/
以下在Slave主机上配置
● 在slave主机上创建.ssh文件夹
mkdir ~/.ssh

// 修改权限
chmod 700 ~/.ssh
● 追加到授权文件”authorized_keys”
cat ~/id_rsa.pub >> ~/.ssh/authorized_keys

// 修改权限
chmod 600 ~/.ssh/authorized_keys
● 删除无用.pub文件
rm –r ~/id_rsa.pub
在master主机下进行测试
ssh 192.168.1.125
ssh 192.168.1.124

// 如果能够分别无密码登陆slave1, slave2主机,则成功配置
进行jdk, hadoop软件安装
jdk安装:
● 在/usr下创建java文件夹
● 使用以下指令从真机传入jdk-8u45-linux-x64.tar.gz文件到虚拟主机中
// 需要在真机中进入文件目录,地址为虚拟主机的ip地址

scp jdk-8u45-linux-x64.tar.gz root@192.168.1.122:/usr/java
scp jdk-8u45-linux-x64.tar.gz root@192.168.1.125:/usr/java
scp jdk-8u45-linux-x64.tar.gz root@192.168.1.124:/usr/java
● 使用以下指令进行加压
tar zxvf jdk-8u45-linux-x64.tar.gz

// 解压后可以删除掉gz文件
rm jdk-8u45-linux-x64.tar.gz
● 配置jdk环境变量
vi /etc/profile

● 添加Java环境变量

// 将以下数据复制到文件底部

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

export JRE_HOME=/usr/java/jdk1.8.0_45/jre

export CLASSPATH=.: CLASSPATH: JAVA_HOME/lib:$JRE_HOME/lib

export PATH= PATH: JAVA_HOME/bin:$JRE_HOME/bin
● 使配置生效
source /etc/profile
● 验证安装成功
java -version

// 如果出现以下信息,则配置成功
java version “1.8.0_45”
Java(TM) SE Runtime Environment (build 1.8.0_45-b14)
Java HotSpot(TM) 64-Bit Server VM (build 25.45-b02, mixed mode)
Hadoop安装
● 使用以下指令将hadoop-2.7.0.tar.gz文件复制到/usr目录下
scp hadoop-2.7.0.tar.gz root@192.168.1.122:/usr/
● 解压hadoop-2.7.0.tar.gz文件,并重命名
cd /usr
tar zxvf hadoop-2.7.0.tar.gz
mv hadoop-2.7.0 hadoop

// 删除hadoop-2.7.0.tar.gz文件
rm –rf hadoop-2.7.0.tar.gz
● 在”/usr/hadoop”下面创建tmp文件夹
cd /usr/hadoop
mkdir tmp
● 把Hadoop的安装路径添加到”/etc/profile”中
vi /etc/profile

// 将以下数据加入到文件末尾

export HADOOP_INSTALL=/usr/hadoop
export PATH= HADOOPINSTALL/bin: {HADOOP_INSTALL}/sbin PATHexportHADOOPMAPREDHOME= {HADOOP_INSTALL}
export HADOOP_COMMON_HOME= HADOOPINSTALLexportHADOOPHDFSHOME= {HADOOP_INSTALL}
export YARN_HOME= HADOOPINSTALLLexportHADOOPCOMMONLIBNATIVEDIR= {HADOOP_INSTALL}/lib/natvie
export HADOOP_OPTS=”-Djava.library.path= HADOOPINSTALL/lib: {HADOOP_INSTALL}/lib/native”
● 重启”/etc/profile”
source /etc/profile
配置hadoop(先只在Master主机配置,配置完后传入两个Slave主机)
● 设置hadoop-env.sh和yarn-env.sh中的java环境变量
cd /usr/hadoop/etc/hadoop/
vi hadoop-env.sh

// 修改JAVA_HOME
export JAVA_HOME=/usr/java/jdk1.8.0_45
● 配置core-site.xml文件
vi core-site.xml

// 修改文件内容为以下

hadoop.tmp.dir

/usr/hadoop/tmp

A base for other temporary directories.

fs.default.name

hdfs://Master.Hadoop:9000



● 配置hdfs-site.xml文件
vi hdfs-site.xml

// 修改文件内容为以下



dfs.namenode.name.dir
file:///usr/hadoop/dfs/name


dfs.datanode.data.dir
file:///usr/hadoop/dfs/data


dfs.replication
1

<property>
    <name>dfs.nameservices</name>
    <value>hadoop-cluster1</value>
</property>
<property>
    <name>dfs.namenode.secondary.http-address</name>
    <value>Master.Hadoop:50090</value>
</property>
<property>
    <name>dfs.webhdfs.enabled</name>
    <value>true</value>
</property>

● 配置mapred-site.xml文件
vi mapred-site.xml

// 修改文件为以下


mapreduce.framework.name
yarn
true

<property>
    <name>mapreduce.jobtracker.http.address</name>
    <value>Master.Hadoop:50030</value>
</property>
<property>
    <name>mapreduce.jobhistory.address</name>
    <value>Master.Hadoop:10020</value>
</property>
<property>
    <name>mapreduce.jobhistory.webapp.address</name>
    <value>Master.Hadoop:19888</value>
</property>
    <property>
            <name>mapred.job.tracker</name>
            <value>http://Master.Hadoop:9001</value>
    </property>

● 配置yarn-site.xml文件
vi yarn-site.xml

// 修改文件内容为以下

    <property>
            <name>yarn.resourcemanager.hostname</name>
            <value>Master.Hadoop</value>
    </property>

<property>
    <name>yarn.nodemanager.aux-services</name>
    <value>mapreduce_shuffle</value>
</property>
<property>
    <name>yarn.resourcemanager.address</name>
    <value>Master.Hadoop:8032</value>
</property>
<property>
    <name>yarn.resourcemanager.scheduler.address</name>
    <value>Master.Hadoop:8030</value>
</property>
<property>
    <name>yarn.resourcemanager.resource-tracker.address</name>
    <value>Master.Hadoop:8031</value>
</property>
<property>
    <name>yarn.resourcemanager.admin.address</name>
    <value>Master.Hadoop:8033</value>
</property>
<property>
    <name>yarn.resourcemanager.webapp.address</name>
    <value>Master.Hadoop:8088</value>
</property>

配置Hadoop的集群
● 将Master中配置好的hadoop传入两个Slave中
scp -r /usr/hadoop root@192.168.1.125:/usr/
scp -r /usr/hadoop root@192.168.1.124:/usr/
● 修改Master主机上的slaves文件
cd /usr/hadoop/etc/hadoop
vi slaves

// 将文件内容修改为
Slave1.Hadoop
Slave2.Hadoop

● 格式化HDFS文件系统
// 在Master主机上输入以下指令
hadoop namenode -format
● 启动hadoop

// 关闭机器防火墙
service iptables stop

cd /usr/hadoop/sbin
./start-all.sh

// 更推荐的运行方式:
cd /usr/hadoop/sbin
./start-dfs.sh
./start-yarn.sh

应该输出以下信息:

Starting namenodes on [Master.Hadoop]
Master.Hadoop: starting namenode, logging to /usr/hadoop/logs/hadoop-root-namenode-localhost.localdomain.out
Slave2.Hadoop: starting datanode, logging to /usr/hadoop/logs/hadoop-root-datanode-Slave2.Hadoop.out
Slave1.Hadoop: starting datanode, logging to /usr/hadoop/logs/hadoop-root-datanode-Slave1.Hadoop.out

starting yarn daemons
starting resourcemanager, logging to /usr/hadoop/logs/yarn-root-resourcemanager-localhost.localdomain.out
Slave1.Hadoop: starting nodemanager, logging to /usr/hadoop/logs/yarn-root-nodemanager-Slave1.Hadoop.out
Slave2.Hadoop: starting nodemanager, logging to /usr/hadoop/logs/yarn-root-nodemanager-Slave2.Hadoop.out

● 验证hadoop
// 1. 直接在Master或Slave输入指令:
jps

// 应该输出以下信息(端口号仅供参考)
Master:
3930 ResourceManager
4506 Jps
3693 NameNode

Slave:
2792 NodeManager
2920 Jps
2701 DataNode

// 2. 输入以下指令
hadoop dfsadmin -report

// 应该输出以下信息:
Configured Capacity: 14382268416 (13.39 GB)
Present Capacity: 10538565632 (9.81 GB)
DFS Remaining: 10538557440 (9.81 GB)
DFS Used: 8192 (8 KB)
DFS Used%: 0.00%
Under replicated blocks: 0
Blocks with corrupt replicas: 0
Missing blocks: 0
Missing blocks (with replication factor 1): 0


Live datanodes (2):

Name: 192.168.1.124:50010 (Slave2.Hadoop)
Hostname: Slave2.Hadoop
Decommission Status : Normal
Configured Capacity: 7191134208 (6.70 GB)
DFS Used: 4096 (4 KB)
Non DFS Used: 1921933312 (1.79 GB)
DFS Remaining: 5269196800 (4.91 GB)
DFS Used%: 0.00%
DFS Remaining%: 73.27%
Configured Cache Capacity: 0 (0 B)
Cache Used: 0 (0 B)
Cache Remaining: 0 (0 B)
Cache Used%: 100.00%
Cache Remaining%: 0.00%
Xceivers: 1
Last contact: Thu Jul 02 10:45:04 CST 2015

Name: 192.168.1.125:50010 (Slave1.Hadoop)
Hostname: Slave1.Hadoop
Decommission Status : Normal
Configured Capacity: 7191134208 (6.70 GB)
DFS Used: 4096 (4 KB)
Non DFS Used: 1921769472 (1.79 GB)
DFS Remaining: 5269360640 (4.91 GB)
DFS Used%: 0.00%
DFS Remaining%: 73.28%
Configured Cache Capacity: 0 (0 B)
Cache Used: 0 (0 B)
Cache Remaining: 0 (0 B)
Cache Used%: 100.00%
Cache Remaining%: 0.00%
Xceivers: 1
● 访问网页
// CentOS7中iptables这个服务的配置文件没有了,采用了新的firewalld
// 输入以下指令后,可以在真机浏览器上访问hadoop网页
systemctl stop firewalld

// 输入以下网页,进入hadoop管理首页
http://192.168.1.122:50070/dfshealth.html#tab-overview

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值