Hadoop集群搭建-03编译安装hadoop
hadoop的编译和安装是直接在一台机器上搞得,姑且nn1机器。
全程切换到root用户下操作
1.hadoop的一些资源在这里:https://www.lanzous.com/b849710/ 密码:9vui
[hadoop@nn1 zk_op]$ su - root
[root@nn1 ~]# mkdir /tmp/hadoop_c
[root@nn1 ~]# cd /tmp/hadoop_c/
用xshell的rz命令上传源码包到上面的目录。
[root@nn1 hadoop_c]# tar -xzf /tmp/hadoop_c/hadoop-2.7.3-src.tar.gz -C /usr/local/
yum安装一下乱七八糟要用到的软件和插件
yum -y install svn ncurses-devel gcc* lzo-devel zlib-devel autoconf automake libtool cmake openssl-devel bzip2
2.编译安装protobuf,谷歌的通信和存储协议,必须要用
[root@nn1 ~]# tar -zxf protobuf-2.5.0.tar.gz -C /usr/local/
[root@nn1 ~]# cd /usr/local/protobuf-2.5.0
进行编译安装
[root@nn1 protobuf-2.5.0]# ./configure
[root@nn1 protobuf-2.5.0]# make && make install
[root@nn1 protobuf-2.5.0]# protoc --version
3.解压安装ant
[root@nn1 hadoop_c]# tar -xf apache-ant-1.9.9-bin.tar.bz2 -C /usr/local/
4.解压安装findbugs
[root@nn1 hadoop_c]# tar -zxf apache-ant-1.9.9-bin.tar.bz2 -C /usr/local/
5.解压安装maven
因为咱的hadoop在后边是用maven编译的。
[root@nn1 hadoop_c]# tar -zxf apache-maven-3.3.9-bin.tar.gz -C /usr/local/
6.编译安装snappy,谷歌的压缩算法
[root@nn1 hadoop_c]# tar -xzf snappy-1.1.3.tar.gz -C /usr/local/
[root@nn1 hadoop_c]# cd /usr/local/snappy-1.1.3/
[root@nn1 snappy-1.1.3]# ./configure
[root@nn1 snappy-1.1.3]# make && make install
7.确保已经安装jdk8
8.在环境变量中添加hadoop编译所需的各种软件的变量
[root@nn1 snappy-1.1.3]# vim /etc/profile
#set Hadoop_compile
export MAVEN_HOME=/usr/local/apache-maven-3.3.9
export FINDBUGS_HOME=/usr/local/findbugs-3.0.1
export PROTOBUF_HOME=/usr/local/protobuf-2.5.0
export ANT_HOME=/usr/local/apache-ant-1.9.9
export PATH=$PATH:$MAVEN_HOME/bin:$FINDBUGS_HOME/bin:$ANT_HOME/bin
export MAVEN_OPTS="-Xmx2g -XX:MaxMetaspaceSize=512M -XX:ReservedCodeCacheSize=512m"
让环境变量生效:
[root@nn1 snappy-1.1.3]# source /etc/profile
查看maven版本
[root@nn1 snappy-1.1.3]# mvn -v
Apache Maven 3.3.9 (bb52d8502b132ec0a5a3f4c09453c07478323dc5; 2015-11-11T00:41:47+08:00)
Maven home: /usr/local/apache-maven-3.3.9
Java version: 1.8.0_144, vendor: Oracle Corporation
Java home: /usr/java/jdk1.8.0_144/jre
Default locale: zh_CN, platform encoding: UTF-8
OS name: "linux", version: "3.10.0-957.21.3.el7.x86_64", arch: "amd64", family: "unix"
[root@nn1 snappy-1.1.3]#
9.更改maven的settings.xml文件,更改仓库,配置本地仓库位置
[root@nn1 hadoop_c]# cd /usr/local/apache-maven-3.3.9/conf/
[root@nn1 conf]# cp settings.xml settings.xml.bak
[root@nn1 conf]# rm -rf settings.xml
[root@nn1 conf]# cp /tmp/hadoop_c/settings.xml settings.xml
可以直接用上边网盘里弄好的配置文件
主要修改了:
<!-- 本地仓库 -->
<localRepository>/data/maven/repositories</localRepository>
和远程仓库
<mirror>
<id>huaweicloud</id>
<mirrorOf>central</mirrorOf>
<url>https://repo.huaweicloud.com/repository/maven/</url>
</mirror>
<mirror>
<id>nexus-aliyun</id>
<mirrorOf>central</mirrorOf>
<name>Nexus aliyun</name>
<url>http://maven.aliyun.com/nexus/content/groups/public</url>
</mirror>
<mirror>
<id>maven</id>
<name>MavenMirror</name>
<url>http://repo1.maven.org/maven2/</url>
<mirrorOf>central</mirrorOf>
</mirror>
把网盘里的maven离线仓库下载解压成如下路径/data/maven/repositories/各种jar包
下边开始用maven编译hadoop源码
[root@nn1 conf]# cd /usr/local/hadoop-2.7.3-src/
[root@nn1 hadoop-2.7.3-src]# nohup mvn clean package -Pdist,native -DskipTests -Dtar -Dbundle.snappy -Dsnappy.lib=/usr/local/lib > /tmp/hadoop_log 2>&1 &
nohup命令用来让任务在后台运行,这里重定向输出到了日志文件,这里通过查看日志文件来监控安装进程。
[root@nn1 hadoop-2.7.3-src]# tail -f /tmp/hadoop_log
10.编译完成后就会在/usr/local/hadoop-2.7.3-src/hadoop-dist/target/下生成一个tar.gz的包,把这个包cp到我们的home,然后批量发送给其他4台机器。
[root@nn1 ~]# exit
登出
[hadoop@nn1 ~]$ cp /usr/local/hadoop-2.7.3-src/hadoop-dist/target/hadoop-2.7.3.tar.gz ~/
[hadoop@nn1 hadoop_base_op]$ ./scp_all.sh ../hadoop-2.7.3.tar.gz /tmp/
11.把5台机器的tar包批量解压到各自的/usr/local/下
[hadoop@nn1 hadoop_base_op]$ ./ssh_root.sh tar -zxf /tmp/hadoop-2.7.3.tar.gz -C /usr/local/
修改文件用户和权限
[hadoop@nn1 hadoop_base_op]$ ./ssh_all.sh chmod -R 770 /usr/local/hadoop-2.7.3
[hadoop@nn1 hadoop_base_op]$ ./ssh_root.sh ln -s /usr/local/hadoop-2.7.3 /usr/local/hadoop
这时候hadoop就安装结束了,检查一下是否正确安装
[hadoop@s1 ~]$ source /etc/profile
[hadoop@s1 ~]$ hadoop checknative
19/07/22 15:37:25 INFO bzip2.Bzip2Factory: Successfully loaded & initialized native-bzip2 library system-native
19/07/22 15:37:25 INFO zlib.ZlibFactory: Successfully loaded & initialized native-zlib library
Native library checking:
hadoop: true /usr/local/hadoop-2.7.3/lib/native/libhadoop.so.1.0.0
zlib: true /usr/lib64/libz.so.1
snappy: true /usr/local/hadoop-2.7.3/lib/native/libsnappy.so.1
lz4: true revision:99
bzip2: true /usr/lib64/libbz2.so.1
openssl: true /usr/lib64/libcrypto.so
如果提示hadoop是未知命令,那么就要查看环境变量是否正确配置,然后可以重新source一下环境变量。
Hadoop集群搭建-03编译安装hadoop的更多相关文章
- 3.Hadoop集群搭建之Zookeeper安装
前期准备 下载Zookeeper 3.4.5 若无特殊说明,则以下操作均在master节点上进行 1. 解压Zookeeper #直接解压Zookeeper压缩包 tar -zxvf zookeepe ...
- Hadoop集群搭建-05安装配置YARN
Hadoop集群搭建-04安装配置HDFS Hadoop集群搭建-03编译安装hadoop Hadoop集群搭建-02安装配置Zookeeper Hadoop集群搭建-01前期准备 先保证集群5台虚 ...
- Hadoop集群搭建-04安装配置HDFS
Hadoop集群搭建-05安装配置YARN Hadoop集群搭建-04安装配置HDFS Hadoop集群搭建-03编译安装hadoop Hadoop集群搭建-02安装配置Zookeeper Hado ...
- Hadoop集群搭建-02安装配置Zookeeper
Hadoop集群搭建-05安装配置YARN Hadoop集群搭建-04安装配置HDFS Hadoop集群搭建-03编译安装hadoop Hadoop集群搭建-02安装配置Zookeeper Hado ...
- Hadoop集群搭建-01前期准备
Hadoop集群搭建-05安装配置YARN Hadoop集群搭建-04安装配置HDFS Hadoop集群搭建-03编译安装hadoop Hadoop集群搭建-02安装配置Zookeeper Hado ...
- Hadoop集群搭建安装过程(三)(图文详解---尽情点击!!!)
Hadoop集群搭建安装过程(三)(图文详解---尽情点击!!!) 一.JDK的安装 安装位置都在同一位置(/usr/tools/jdk1.8.0_73) jdk的安装在克隆三台机器的时候可以提前安装 ...
- Hadoop集群搭建安装过程(二)(图文详解---尽情点击!!!)
Hadoop集群搭建安装过程(二)(配置SSH免密登录)(图文详解---尽情点击!!!) 一.配置ssh无密码访问 ®生成公钥密钥对 1.在每个节点上分别执行: ssh-keygen -t rsa(一 ...
- Hadoop集群搭建安装过程(一)(图文详解---尽情点击!!!)
Hadoop集群搭建(一)(上篇中讲到了Linux虚拟机的安装) 一.安装所需插件(以hadoop2.6.4为例,如果需要可以到官方网站进行下载:http://hadoop.apache.org) h ...
- Hadoop集群搭建
配置IP,修改主机名,关闭防火墙,配置SSH免密码登录
随机推荐
- SSH 中文乱码解决
在终端执行命令:export LC_ALL=zh_CN.GB2312;export LANG=zh_CN.GB2312是最有效的. 这种方法是临时的,只对当前SSH客户端有效,重启后依然乱码. 1.不 ...
- 7.19T2
小 B 的树 题目背景及题意 小 B 有一颗树,它的形态与 OI 中的树相同,有 n 个节点,n-1 条边,每条边长度为 1 随着时间的流逝这棵树长大了,每条边有 50%的概率长度变为 2 小 B ...
- Linux下MongoDB非正常关闭启动异常解决方法
1.将配置信息写入一个文件中 vim mongo.conf 里面写如下内容: dbpath=/usr/local/mongodb/data/ logpath=/usr/local/mongodb/lo ...
- IDEA2019.1.3的安装和破解
上一篇文章我有写过我会尝试安装IDEA(这玩意儿收费啊!),倘若尝试成功以后都会用它编译,很幸运,我安装成功了,所以今天这篇文章我来写安装和破解方法. IDEA界面: 首先我们访问官方网站:htt ...
- TypeScript 技巧
前言 很早以前就尝试过使用 TypeScript 来进行日常编码,但自己对静态类型语言的了解并不深入,再加上 TypeScript 的类型系统有着一定的复杂度,因此感觉自己并没有发挥好这门语言的优势, ...
- 【redis 学习系列】API的理解与使用(四)
5.集合 集合(set)类型也是用来保存多个字符串元素,但是与列表不一样的是,集合中不允许有重复的元素,并且集合中的元素是无序的,不能通过索引下标获取元素. 如图2-22所示,集合user:1:fol ...
- win10系统配置FTP
FTP是一种远程传输协议,支持这种协议的就是FTP服务器.我们可以在自己的PC机上创建一个.然后通过网页就可以访问FTP服务器下的文件夹. 搭建过程 1.首先需要开启FTP服务.在菜单中打开控制面板. ...
- HashMap简单介绍
哈希表(hash table)也叫散列表,是一种非常重要的数据结构,应用场景及其丰富,许多缓存技术(比如memcached)的核心其实就是在内存中维护一张大的哈希表. 一.什么是哈希表 在讨论哈希表之 ...
- 移动端——link标签
meta标签中提到了部分功能要结合link标签进行使用,link标签主要是存放CSS文件的地方,同时还有一些专属的移动端设置. <meta http-equiv="Content-Ty ...
- Nginx作为静态资源web服务-跨站访问
一.跨域访问 1.什么是跨域? 参看我的另一篇博客(https://www.cnblogs.com/chrdai/p/11280895.html) 2.为什么浏览器禁止跨域访问? 不安全,容易出现CS ...