搭建Hadoop开发环境
2017-09-07 本文已影响82人
StrongZhao
搭建Hadoop开发环境
环境
ubuntu 16.04
软件列表
软件 | 版本 | 路径 |
---|---|---|
JAVA JDK | 1.8.0_102 | /usr/local/java |
Hadoop | 2.8.1 | /usr/local/hadoop-2.8.1 |
配置步骤
- 单独创建一个系统用户名Hadoop
-
使用useradd命令创建hadoop用户
sudo useradd hadoop -m -r -s /bin/bash
-
为hadoop用户设置密码
sudo passwd hadoop
-
给予用户系统及管理员权限
sudo vi /etc/sudoers #编辑权限管理文件 #root ALL=(ALL:ALL) ALL 后添加Hadoop权限设置 hadoop ALL=(ALL:ALL) ALL #给予系统权限
-
- 配置SSH服务并设置免密码登录
-
安装ssh服务
sudo apt-get install openssh-server
-
利用ssh-keygen命令生成密钥
#采用rsa密钥类型生成密钥 ssh-keygen -t rsa
ps: ssh-keygen参数说明
-
配置本机ssh无密码登录
#进入.ssh目录下 cd ~/.ssh #把id_rsa.pub文件内容添加到授权文件中 cat id_rsa.pub >> authorized_keys #测试无密码登录 ssh localhost
-
- 安装Java开发环境
-
从官网获取安装包
#不需要验证 wget --no-check-certificate --no-cookies --header "Cookie: oraclelicense=accept-securebackup-cookie" http://download.oracle.com/otn-pub/java/jdk/8u131-b11/d54c1d3a095b4ff2b6607d096fa80163/jdk-8u131-linux-x64.tar.gz
-
解压文件并复制到/usr/local目录下
tar -xvf jdk-8u131-linux-x64.tar.gz sudo cp jdk1.80_131 /usr/local/
-
配置java环境变量
#打开系统环境配置文件 sudo vi /etc/profile #在profile文件最后增加以下内容 export JAVA_HOME=/usr/local/jdk_1.80_131 export PATH= $JAVA_HOME/bin:$PATH export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar #使配置生效 source /etc/profile #检查Java是否已经安装好 java -version
-
- 安装Hadoop
-
从官网获取安装包
wget http://mirrors.hust.edu.cn/apache/hadoop/common/hadoop-2.8.1/hadoop-2.8.1.tar.gz
-
解压安装包并copy到/usr/local目录下
#解压hadoop安装包 tar -xvf hadoop-2.8.1.tar.gz #移动Hadoop文件夹到/usr/local目录下 sudo mv hadoop-2.8.1 /usr/local
-
添加hadoop环境变量
#打开环境配置文件 sudo vi /etc/profile #添加hadoop环境 export HADOOP_HOME=/usr/local/hadoop-2.8.1 export PATH = $HADOOP_HOME/bin:$PATH:$HADOOP_HOME/sbin #检查hadoop环境是否配置正确 source /etc/profile #使配置生效 hadoop version #查看hadoop版本信息
-
配置hadoop配置文件
-
配置hadoop-env.sh文件
#修改hadoop-env.sh JAVA_HOME路径地址 export JAVA_HOME=/usr/local/jdk1.80_131
-
配置core-site.xml
<configuration> <!-- 指定HDFS的namenode的通信地址 --> <property> <name>fs.default.name</name> <value>hdfs://hadoop:9000</value> </property> <!-- 指定hadoop运行时产生文件的存放目录 --> <property> <name>hadoop.tmp.dir</name> <value>file:/usr/local/hadoop-2.8.1/tmp</value> </property> <!--指定文件存储的大小默认64M--> <property> <name>io.file.buffer.size</name> <value>131072</value> </property> </configuration>
-
配置hdfs-site.xml
<configuration> <!-- 配置HDFS分片的数量 --> <property> <name>dfs.replication</name> <value>1</value> </property> <!--配置namenode本地存储路径--> <property> <name>dfs.namenode.name.dir</name> <value>file:/usr/local/hadoop-2.8.1/tmp/dfs/name</value> </property> <!--DataNode在本地文件系统中存放块的路径--> <property> <name>dfs.datanode.data.dir</name> <value>file:/usr/local/hadoop-2.8.1/tmp/dfs/data</value> </property> </configuration>
-
配置yarn-site.xml
<configuration> <!-- reducer取数据的方式是mapreduce_shuffle --> <property> <name>yarn.nodemanager.aux-services</name> <value>mapreduce_shuffle</value> </property> </configuration>
-
配置mapred-site.xml
<configuration> <!-- tracker地址 --> <property> <name>mapred.job.tracker</name> <value>主机IP地址:9001</value> </property> <!-- 通知框架MR使用YARN --> <property> <name>mapreduce.framework.name</name> <value>yarn</value> </property> </configuration>
-
-
格式化集群
hdfs namenode -format
-
启动hadoop
start-all.sh
-
打开浏览器访问50070端口查看hadoop
-