共计 3600 个字符,预计需要花费 9 分钟才能阅读完成。
一、配置步骤如下:
1. 主机环境搭建,这里是使用了 5 台虚拟机,在 Ubuntu 13 系统上进行搭建 Hadoop 环境。
2. 创建 hadoop 用户组以及 hadoop 用户,并给 hadoop 用户分配权限。
3. 免密码登陆,为 5 台主机进行免密码登陆配置。
4. 安装 hadoop 以及 jdk,并配置环境变量。
5.Hadoop 分布式环境参数配置。
二、主机环境搭建:
在虚拟机上安装 5 台虚拟主机并分别安装好 hadoop 系统,然后分别完成以下操作。
1. 设定静态 ip 地址,这里的虚拟机使用的是 NAT 上网模式,配置命令如下:
a) 配置静态地址
sudo gedit /etc/network/interfaces
auto eth0
iface eth0 inet static
address 192.168.182.132
netmask 255.255.255.0
gateway 192.168.182.1
b) 配置网关
sudo gedit /etc/resolv.conf
nameserver 192.168.182.1
c) 重启网络
/etc/init.d/networking restart
2. 修改主机名,打开 hostname 文件,分别将主机名修改为 master,slave1,slave2,slave3,slave4
sudo gedit /etc/hostname
3. 修好主机配置文件,打开 hosts 文件,我的主机配置是这样的:
sudo gedit /etc/hosts
192.168.182.132 master
192.168.182.134 slave1
192.168.182.135 slave2
192.168.182.136 slave3
192.168.182.137 slave4
三、添加用户
1. 创建 hadoop 用户组
sudo addgroup hadoop
2. 创建 hadoop 用户
sudo adduser -ingroup hadoop hadoop
3. 给 hadoop 用户添加权限,打开 /etc/sudoers 文件
sudo gedit /etc/sudoers
按回车键后就会打开 /etc/sudoers 文件了,给 hadoop 用户赋予 root 用户同样的权限
在 root ALL=(ALL:ALL) ALL 下添加 hadoop ALL=(ALL:ALL) ALL
四、配置 master 到 slave 的免密码登陆
1. 安装 ssh 服务
sudo apt-get install ssh openssh-server
2. 配置 master 到 slave 的免密码登陆(这里以 slave1 为例,其他 slave 操作一致)
master 生成 authorized_key
ssh-keygen -t dsa -P ” -f ~/.ssh/id_dsa
cd .ssh/
cat id_dsa.pub >> authorized_keys
slave1 添加 master 的 authorized_key 到本地
scp yss@master:~/.ssh/id_dsa.pub ./master_dsa.pub
cat master_dsa.pub >> authorized_keys
五、安装 hadoop 和 jdk,配置环境变量
hadoop 安装包版本是 2.4.1,jdk 使用的是 1.7.0_65 版本,分别到官网上去下载。
hadoop,jdk 分别解压到 /home/hadoop/hadoop-2.4.1,/home/hadoop/jdk1.7.0_65 目录下,配置环境变量如下:
sudo gedit /etc/profile
HADOOP_HOME=/home/hadoop/hadoop-2.4.1
Java_HOME=/home/hadoop/jdk1.7.0_65
PATH=$JAVA_HOME/bin:$HADOOP_HOME/bin:$PATH
CLASSPATH=.:$JAVA_HOME/lib:$JAVA_HOME/jre/lib:$HADOOP_HOME/lib:$CLASSPATH
export HADOOP_HOME
export JAVA_HOME
export PATH
export CLASSPATH
source /etc/profile
注:配置环境变量应该在最后一步,各个节点都需要单独配置
六、配置 hadoop 环境
core-site.xml
<configuration>
<property>
<name>fs.default.name</name>
<value>hdfs://master:9000</value>
<final>true</final>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/home/hadoop/hadoop-2.4.1/tmp</value>
<description>A base for other temporary directories.</description>
</property>
</configuration>
Hdfs-site.xml
<configuration>
<property>
<name>dfs.name.dir</name>
<value>/home/hadoop/hadoop-2.4.1/name</value>
<final>true</final>
</property>
<property>
<name>dfs.data.dir</name>
<value>/home/hadoop/hadoop-2.4.1/data</value>
<final>true</final>
</property>
<property>
<name>dfs.replication</name>
<value>2</value>
<final>true</final>
</property>
</configuration>
mapred-site.xml
<configuration>
<property>
<name>mapred.job.tracker</name>
<value>192.168.182.132:9001</value>
</property>
</configuration>
注:五、六步骤中都只是配置的 master 节点,master 配置完成后将 /home/hadoop/ 文件夹拷到各个 slave
scp -r ./hadoop slave1:/home
七、启动 Hadoop
1. 格式化 namenode
在 master 节点执行下面命令:
hadoop namenode format
2. 启动服务
进去 master 节点 /home/hadoop/hadoop-2.4.1/sbin 目录,执行如下命令:
./start-all.sh
下面是停止 Hadoop 服务命令:
./stop-all.sh
3. master 有如下进程:
hadoop@master: /home/hadoop/hadoop-2.4.1/sbin $jps
21211 Jps
7421 SecondaryNameNode
7154 NameNode
7968 ResourceManager
4. slave1 有如下进程
hadoop@ slave1: /home/hadoop/hadoop-2.4.1/sbin $jps
3612 NameNode
3723 Jps
3367 DataNode
5. 查看集群状态
http://master:8088/
CentOS 安装和配置 Hadoop2.2.0 http://www.linuxidc.com/Linux/2014-01/94685.htm
Ubuntu 13.04 上搭建 Hadoop 环境 http://www.linuxidc.com/Linux/2013-06/86106.htm
Ubuntu 12.10 +Hadoop 1.2.1 版本集群配置 http://www.linuxidc.com/Linux/2013-09/90600.htm
Ubuntu 上搭建 Hadoop 环境(单机模式 + 伪分布模式)http://www.linuxidc.com/Linux/2013-01/77681.htm
Ubuntu 下 Hadoop 环境的配置 http://www.linuxidc.com/Linux/2012-11/74539.htm
单机版搭建 Hadoop 环境图文教程详解 http://www.linuxidc.com/Linux/2012-02/53927.htm
搭建 Hadoop 环境(在 Winodws 环境下用虚拟机虚拟两个 Ubuntu 系统进行搭建)http://www.linuxidc.com/Linux/2011-12/48894.htm
更多 Hadoop 相关信息见 Hadoop 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=13