CentOS7-64bit 编译 Hadoop-2.5.0,并分布式安装
摘要
CentOS7-64bit 编译 Hadoop-2.5.0,并分布式安装
目录[-]
- 1.系统环境说明
- 2.安装前的准备工作
- 2.1 关闭防火墙
- 2.2 检查ssh安装情况,如果没有则安装ssh
- 2.3 安装vim
- 2.4 设置静态ip地址
- 2.5 修改host名称
- 2.6 创建hadoop用户
- 2.7 配置ssh无密钥登录
- 3.安装必须的软件
- 3.1 安装JDK
- ##################################### [100%]
- ##################################### [100%]
- 3.2 安装其他必须软件
- 3.3 安装ant
- 3.4 安装findbugs
- 3.5 安装protobuf
- 4. 编译hadoop源码
- 4.1 maven中央仓库的配置(改成oschina,增加访问速度)
- 4.2 编译完成之后,目录/usr/hadoop-2.5.0-src/hadoop-dist/target/hadoop-2.5.0
- 5. 配置hadoop
- 5.1 基础操作
- 5.2 配置所有slave节点
- 5.3 修改hadoop-env.sh和yarn-env.sh
- 5.4 修改core-site.xml
- 5.5 修改hdfs-site.xml
- 5.6 修改mapred-site.xml
- 5.7 配置yarn-site.xml
- 5.8 格式化namenode
- 5.9 启动hdfs
- 5.10 检查启动情况
1.系统环境说明
CentOS 7.0 x64 版本
192.168.1.7 master
192.168.1.8 slave
192.168.1.9 slave
192.168.1.10 slave
2.安装前的准备工作
2.1 关闭防火墙
# systemctl status firewalld.service --查看防火墙状态 # systemctl stop firewalld.service --关闭防火墙 # systemctl disable firewalld.service --永久关闭防火墙
2.2 检查ssh安装情况,如果没有则安装ssh
# systemctl status sshd.service --查看ssh状态 # yum install openssh-server openssh-clients
2.3 安装vim
# yum -y install vim
2.4 设置静态ip地址
# vim /etc/sysconfig/network-scripts/ifcfg-eno16777736
BOOTPROTO="static"
ONBOOT="yes"
IPADDR0="192.168.1.7"
PREFIX0="255.255.255.0"
GATEWAY0="192.168.1.1"
DNS1="61.147.37.1"
DNS2="101.226.4.6"
2.5 修改host名称
# vim /etc/sysconfig/network
HOSTNAME=master
# vim /etc/hosts
192.168.1.7 master 192.168.1.8 slave1 192.168.1.9 slave2 192.168.1.10 slave3
# hostnamectl set-hostname master (CentOS7 下原有的修改host方法无效了)
2.6 创建hadoop用户
# useradd hadoop --创建用户名为hadoop的用户# passwd hadoop --为用户hadoop设置密码
2.7 配置ssh无密钥登录
———–下面是在master上面的操作
# su hadoop --切换到hadoop用户$ cd ~ --打开用户文件夹 $ ssh-keygen -t rsa -P '' --生成密码对,/home/hadoop/.ssh/id_rsa和/home/hadoop/.ssh/id_rsa.pub $ cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys --把id_rsa.pub追加到授权的key里面去 $ chmod 600 ~/.ssh/authorized_keys --修改权限 $ su --切换到root用户# vim /etc/ssh/sshd_config --修改ssh配置文件RSAAuthentication yes #启用RSA认证PubkeyAuthentication yes #启用公钥私钥配对认证方式AuthorizedKeysFile .ssh/authorized_keys #公钥文件路径 # su hadoop --切换到hadoop用户 $ scp ~/.ssh/id_rsa.pub hadoop@192.168.1.8:~/ --把公钥复制所有的Slave机器上
———-下面是在slave1上面的操作
# su hadoop --切换到hadoop用户$ mkdir ~/.ssh$ chmod 700 ~/.ssh$ cat ~/id_rsa.pub >> ~/.ssh/authorized_keys --追加到授权文件"authorized_keys"$ chmod 600 ~/.ssh/authorized_keys --修改权限$ su --切换回root用户 # vim /etc/ssh/sshd_config --修改ssh配置文件RSAAuthentication yes #启用RSA认证PubkeyAuthentication yes #启用公钥私钥配对认证方式AuthorizedKeysFile .ssh/authorized_keys #公钥文件路径
3.安装必须的软件
3.1 安装JDK
# rpm -ivh jdk-7u67-linux-x64.rpm
Preparing…
##################################### [100%]
1:jdk
##################################### [100%]
Unpacking JAR files…
rt.jar…
jsse.jar…
charsets.jar…
tools.jar…
localedata.jar…
# vim /etc/profileexport JAVA_HOME=/usr/java/jdk1.7.0_67 export PATH=$PATH:$JAVA_HOME/bin # source profile --修改生效
3.2 安装其他必须软件
# yum install maven svn ncurses-devel gcc* lzo-devel zlib-devel autoconf automake libtool cmake openssl-devel
3.3 安装ant
# tar zxvf apache-ant-1.9.4-bin.tar.gz# vim /etc/profileexport ANT_HOME=/usr/local/apache-ant-1.9.4export PATH=$PATH:$ANT_HOME/bin
3.4 安装findbugs
# tar zxvf findbugs-3.0.0.tar.gz# vim /etc/profileexport FINDBUGS_HOME=/usr/local/findbugs-3.0.0export PATH=$PATH:$FINDBUGS_HOME/bin
3.5 安装protobuf
# tar zxvf protobuf-2.5.0.tar.gz(必须是2.5.0版本的,不然编译hadoop的时候报错) # cd protobuf-2.5.0 # ./configure --prefix=/usr/local # make && make install
4. 编译hadoop源码
# tar zxvf hadoop-2.5.0-src.tar.gz # cd hadoop-2.5.0-src # mvn package -Pdist,native,docs -DskipTests -Dtar
4.1 maven中央仓库的配置(改成oschina,增加访问速度)
# vim /usr/share/mavem/conf/settings.xml<mirrors><mirror><id>nexus-osc</id><mirrorOf>*</mirrorOf><name>Nexus osc</name><url>http://maven.oschina.net/content/groups/public/</url></mirror></mirrors><profiles><profile><id>jdk17</id><activation><activeByDefault>true</activeByDefault><jdk>1.7</jdk></activation><properties><maven.compiler.source>1.7</maven.compiler.source><maven.compiler.target>1.7</maven.compiler.target><maven.compiler.compilerVersion>1.7</maven.compiler.compilerVersion></properties> <repositories><repository><id>nexus</id><name>local private nexus</name><url>http://maven.oschina.net/content/groups/public/</url><releases><enabled>true</enabled></releases><snapshots><enabled>false</enabled></snapshots></repository></repositories><pluginRepositories><pluginRepository><id>nexus</id><name>local private nexus</name><url>http://maven.oschina.net/content/groups/public/</url><releases><enabled>true</enabled></releases><snapshots><enabled>false</enabled></snapshots></pluginRepository></pluginRepositories></profile></profiles>
4.2 编译完成之后,目录/usr/hadoop-2.5.0-src/hadoop-dist/target/hadoop-2.5.0
# ./bin/hadoop versionHadoop 2.5.0Subversion Unknown -r Unknown Compiled by root on 2014-09-12T00:47Z Compiled with protoc 2.5.0From source with checksum 423dcd5a752eddd8e45ead6fd5ff9a24 This command was run using /usr/hadoop-2.5.0-src/hadoop-dist/target/hadoop-2.5.0/share/hadoop/common/hadoop-common-2.5.0.jar # file lib//native/*lib//native/libhadoop.a: current ar archivelib//native/libhadooppipes.a: current ar archivelib//native/libhadoop.so: symbolic link to `libhadoop.so.1.0.0'lib//native/libhadoop.so.1.0.0: ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, BuildID[sha1]=0x972b31264a1ce87a12cfbcc331c8355e32d0e774, not strippedlib//native/libhadooputils.a: current ar archivelib//native/libhdfs.a: current ar archivelib//native/libhdfs.so: symbolic link to `libhdfs.so.0.0.0'lib//native/libhdfs.so.0.0.0: ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, BuildID[sha1]=0x200ccf97f44d838239db3347ad5ade435b472cfa, not stripped
5. 配置hadoop
5.1 基础操作
# cp -r /usr/hadoop-2.5.0-src/hadoop-dist/target/hadoop-2.5.0 /opt/hadoop-2.5.0 # chown -R hadoop:hadoop /opt/hadoop-2.5.0 # vi /etc/profileexport HADOOP_HOME=/opt/hadoop-2.5.0export PATH=$PATH:$HADOOP_HOME/bin # su hadoop $ cd /opt/hadoop-2.5.0 $ mkdir -p dfs/name $ mkdir -p dfs/data $ mkdir -p tmp $ cd etc/hadoop
5.2 配置所有slave节点
$ vim slaves slave1 slave2 slave3
5.3 修改hadoop-env.sh和yarn-env.sh
$ vim hadoop-env.sh / vim yarn-env.sh export JAVA_HOME=/usr/java/jdk1.7.0_67
5.4 修改core-site.xml
<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://master:9000</value>
</property>
<property>
<name>io.file.buffer.size</name>
<value>131702</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>file:/opt/hadoop-2.5.0/tmp</value>
</property>
<property>
<name>hadoop.proxyuser.hadoop.hosts</name>
<value></value>
</property>
<property>
<name>hadoop.proxyuser.hadoop.groups</name>
<value></value>
</property>
</configuration>
5.5 修改hdfs-site.xml
<configuration>
<property>
<name>dfs.namenode.name.dir</name>
<value>/opt/hadoop-2.5.0/dfs/name</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>/opt/hadoop-2.5.0/dfs/data</value>
</property>
<property>
<name>dfs.replication</name>
<value>3</value>
</property>
<property>
<name>dfs.namenode.secondary.http-address</name>
<value>master:9001</value>
</property>
<property>
<name>dfs.webhdfs.enabled</name>
<value>true</value>
</property>
</configuration>
5.6 修改mapred-site.xml
# cp mapred-site.xml.template mapred-site.xml
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
<property>
<name>mapreduce.jobhistory.address</name>
<value>master:10020</value>
</property>
<property>
<name>mapreduce.jobhistory.webapp.address</name>
<value>master:19888</value>
</property>
</configuration>
5.7 配置yarn-site.xml
<configuration>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
<property>
<name>yarn.nodemanager.auxservices.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:8031</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>
<property>
<name>yarn.nodemanager.resource.memory-mb</name>
<value>768</value>
</property>
</configuration>
5.8 格式化namenode
$ ./bin/hdfs namenode -format
5.9 启动hdfs
$ ./sbin/start-dfs.sh $ ./sbin/start-yarn.sh
5.10 检查启动情况
http://192.168.1.7:8088http://192.168.1.7:50070
参考 http://www.it165.net/admin/html/201403/2453.html
Hadoop- – 2.2.0 4 64 位源码编译及分布式安装.pdf
转载于:https://www.cnblogs.com/kluan/p/4453163.html
CentOS7-64bit 编译 Hadoop-2.5.0,并分布式安装相关推荐
- hadoop+hive-0.10.0完全分布式安装方法
hadoop+hive-0.10.0完全分布式安装方法 1.jdk版本:jdk-7u60-linux-x64.tar.gz http://www.oracle.com/technetwork/cn/j ...
- centos 7下Hadoop 2.7.2 伪分布式安装
centos 7 下Hadoop 2.7.2 伪分布式安装,安装jdk,免密匙登录,配置mapreduce,配置YARN.详细步骤如下: 1.0 安装JDK 1.1 查看是否安装了openjdk [l ...
- hadoop 2.7.3伪分布式安装
hadoop 2.7.3伪分布式安装 hadoop集群的伪分布式部署由于只需要一台服务器,在测试,开发过程中还是很方便实用的,有必要将搭建伪分布式的过程记录下来,好记性不如烂笔头. hadoop 2. ...
- 64位centos 下编译 hadoop 2.6.0 源码
64位os下为啥要编译hadoop就不解释了,百度一下就能知道原因,下面是步骤: 前提:编译源码所在的机器,必须能上网,否则建议不要尝试了 一. 下载必要的组件 a) 下载hadoop源码 (当前最新 ...
- Centos 6.5 X64 环境下编译 hadoop 2.6.0 --已验证
详细参照源码路径下的BUILDING.txt文件 Centos 6.5 x64 hadoop 2.6.0 jdk 1.7 protobuf-2.5.0 maven-3.0.5 set environm ...
- Hadoop2.6.0完全分布式安装
1.修改主机名称 对master/slave1/slave2同时配置为Master/Slave1/Slave2 master@Master:~$ sudo gedit /etc/hostname 上述 ...
- hadoop2.9.2安装hadoop_pid_dir_Hadoop3.2 +Spark3.0全分布式安装
目前Apache官网已经推出了最新版的Haoop3.2和最新版的Spark3.0,比原来增加了很多新特性.Hadoop的安装主要是为Spark提供HDFS的支持和yarn的调度.那么我们将在本文介绍全 ...
- Hadoop 2.6.0 完全分布式部署安装
一.准备软件环境: hadoop-2.6.0.tar.gz CentOS-5.11-i386 jdk-6u24-linux-i586 Master:hadoop02 192.168.20.12 ...
- hadoop2.6.0 完全分布式安装教程
最近用最新的hadoop2.6.0 版本搭了一个环境 步骤如下: 首先介绍一下软硬件:台式机win8.1,用VMware11.1建了三个Linux centos 6.5 64位的虚拟机.三个虚拟机的用 ...
- Hadoop2.7.0伪分布式安装教程
2019独角兽企业重金招聘Python工程师标准>>> 总是要学点什么是吧,Java学大数据据说很快,就从这面入手了,正好项目在使用可以get一项新技能了,距离全栈工程师又进了一步不 ...
最新文章
- android之android.intent.category.DEFAULT的用途和使用
- Linux下如何生成core dump 文件(解决segment fault段错误的问题)
- [Inside HotSpot] UseParallelGC和UseParallelOldGC的区别
- java核心(十五):List、Set、Map功能分析
- 烟袋斜街-后海,印象已模糊
- a letter and a number(一封信和一个数字)
- ubuntu下查看进程端口
- 安卓注册手机短信验证码验证的案例-02
- AI应用开发基础傻瓜书系列2-神经网络中反向传播与梯度下降的基本概念
- linux 文件乱码_RedHatlinux系统虚机启动后/etc/fstab中的文件系统未能挂载上
- 解决vue2+vue-cli3项目ie兼容问题
- python 1 面向对象基础知识
- 麦子学院深度学习进阶课程题目纲要
- java中括号的匹配_java括号匹配算法
- 北京化工大学计算机考研资料汇总
- 编写程序,从键盘输入 一个 英文字母(有若干行)。如果是大写字母,则输出它对应的小写字母;如果是小写字母,则输出它对应的大写字母。
- OJ题库1015: 计算时间间隔
- java项目-第120期儿童成长博客记录系统-java毕业设计
- 声源分离算法性能评估指标SIR、SDR、SAR
- ssh框架可以使用Ajax,基于Ajax的SSH框架的应用研究