CentOS下安装hadoop

用户配置

添加用户

adduser hadoop
passwd hadoop

权限配置

chmod u+w /etc/sudoers
vi /etc/sudoers

root ALL=(ALL) ALL
下添加
hadoop ALL=(ALL) ALL
chmod u-w /etc/sudoers

关闭防火墙

查看防火墙状态

service iptables status

关闭防火墙

service iptables stop

查看防火墙开机启动状态

chkconfig iptables --list

关闭防火墙开机启动

chkconfig iptables off

安装JDK1.7

卸载系统自带OpenJDK

查看目前系统jdk

rpm -qa | grep jdk

得到结果:

java-1.7.0-openjdk-1.7.0.51-2.4.5.5.el7.x86_64
java-1.7.0-openjdk-headless-1.7.0.51-2.4.5.5.el7.x86_64

卸载:

rpm -e --nodeps java-1.7.0-openjdk-1.7.0.51-2.4.5.5.el7.x86_64
rpm -e --nodeps java-1.7.0-openjdk-headless-1.7.0.51-2.4.5.5.el7.x86_64

下载JDK1.7

下载地址: jdk-7u79-linux-x64.tar.gz 下载

上传hadoop文件

使用Filezilla client把jdk-7u79-linux-x64.tar.gz放到CentOS目录/usr/lib/jvm中(史上最简单的上传文件到linux系统方法)

修改权限

sudo chmod u+x jdk-7u79-linux-x64.tar.gz

解压JDK1.7

cd /usr/lib/jvm
sudo tar -zxvf ./jdk-7u79-linux-x64.tar.gz -C /usr/lib/jvm

配置环境

打开profile文件:

sudo gedit /etc/profile

在文件最下边输入:

export JAVA_HOME=/usr/lib/jvm/jdk1.7.0_4579
export JRE_HOME=/usr/lib/jvm/jdk1.7.0_4579/jre
export CLASSPATH=.:$JRE_HOME/lib/tr.jar:$JAVA_HOME/lib:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib:$CLASSPATH
export PATH=$JAVA_HOME/bin:$PATH

使其立刻生效:

source /etc/profile

验证是否成功

java -version

手动设置系统默认JDK

sudo update-alternatives --install /usr/bin/java java /usr/lib/jvm/jdk1.7.0_79/bin/java 300
sudo update-alternatives --install /usr/bin/javac javac /usr/lib/jvm/jdk1.7.0_79/bin/javac 300
sudo update-alternatives --install /usr/bin/jar jar /usr/lib/jvm/jdk1.7.0_79/bin/jar 300
sudo update-alternatives --config java

配置SSH免密码登陆

进入用户的根目录下

ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa
cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys

验证是否安装成功

ssh -version

登陆

ssh localhost

安装Hadoop2.6.0

下载hadoop2.6

hadoop-2.6.0.tar.gz

解压hadoop-2.6.0.tar.gz

进入/usr/local/hadoop

sudo tar -zxvf ./hadoop-2.6.0.tar.gz -C /usr/local
cd /usr/local/
sudo mv ./hadoop-2.6.0/ ./hadoop
sudo chown -R hadoop:hadoop ./hadoop

配置hadoop2.6.0环境

打开profile

sudo gedit /etc/profile

在最下边添加:

# set hadoop path
export HADOOP_HOME=/usr/local/hadoop
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin

使其立刻生效:

source /etc/profile

修改/usr/local/hadoop/etc/hadoop/hadoop-env.sh

export JAVA_HOME=/usr/lib/jvm/jdk1.7.0_79

伪分布式Hadoop2.6.0配置

etc / hadoop / core-site.xml:

<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://localhost:9000</value>
</property>
</configuration>

etc / hadoop / hdfs-site.xml:

<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
</configuration>

启动Hadoop2.6.0

进入hadoop的bin目录

cd /usr/local/hadoop/bin

格式化Hadoop的文件系统HDFS

hdfs namenode -format

进入hadoop的sbin目录

cd /usr/local/hadoop/sbin

启动所有进程

start-all.sh

成功的话,会看到 successfully formatted 的提示,且倒数第5行的提示如下,Exitting with status 0 表示成功,若为 Exitting with status 1 则是出错。若出错(不该如此,请仔细检查之前步骤),可试着加上 sudo, 既 sudo bin/hdfs namenode -format 再试试看。

关闭命令

stop-all.sh

用jps查看启动的进程

Jps
ResourceManager
NameNode
DataNode
SecondaryNameNode
NodeManager

浏览器访问:http://localhost:50070

hadoop进程管理页面http://localhost:8088

问题

WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable

原因是hadoop-2.6.0.tar.gz安装包是在32位机器上编译的,64位的机器加载本地库.so文件时出错,不影响使用。

解决:

1、重新编译源码后将新的lib/native替换到集群中原来的lib/native
2、修改hadoop-env.sh ,增加
export HADOOP_OPTS="-Djava.library.path=$HADOOP_PREFIX/lib:$HADOOP_PREFIX/lib/native"

文档参考:

  1. hadoop 2.6.0单节点-伪分布式模式安装
  2. Hadoop:设置一个节点集群
  3. Hadoop安装教程_单机/伪分布式配置_Hadoop2.6.0/Ubuntu14.04
  4. Hadoop入门基础教程之服务器基础环境搭建

CentOS下安装hadoop的更多相关文章

  1. CentOS 7安装Hadoop 3.0.0

    最近在学习大数据,需要安装Hadoop,自己弄了好久,最后终于弄好了.网上也有很多文章关于安装Hadoop的,但总会遇到一些问题,所以把在CentOS 7安装Hadoop 3.0.0的整个过程记录下来 ...

  2. CentOS下安装使用start-stop-daemon

    CentOS下安装使用start-stop-daemon 在centos下下了个自启动的服务器脚本 执行的时候发现找不到start-stop-daemon命令 好吧 执行手动编译一下 加上这个命令 w ...

  3. 从零开始学 Java - CentOS 下安装 Tomcat

    生活以痛吻我,我仍报之以歌 昨天晚上看到那个冯大辉老师的微信公众号,「小道消息」上的一篇文章,<生活以痛吻我,我仍报之以歌>.知乎一篇匿名回答,主题为<冯大辉到底是不是技术大牛,一个 ...

  4. CentOS 下安装

    2016年12月5日15:25:58 ----------------------------------- 通常情况下在centos下安装软件就用yum. 关键是,使用yum你要知道安装包的名字是什 ...

  5. [Linux]CentOS下安装和使用tmux

    前天随意点开博客园,看到了一篇关于tmux的文章 Tmux - Linux从业者必备利器,特意还点进去看了.毕竟Linux对于做游戏服务端开发的我来说,太熟悉不过了.不过我就粗略地看了一眼,就关掉了. ...

  6. CentOS下安装JDK7 转载

    转载地址:http://www.cnblogs.com/rilley/archive/2012/02/02/2335395.html CentOS下安装JDK7 下载地址:http://www.ora ...

  7. Centos下安装mysql 总结

    一.MySQL安装 Centos下安装mysql 请点开:http://www.centoscn.com/CentosServer/sql/2013/0817/1285.html 二.MySQL的几个 ...

  8. 在centos下安装django

    这里有一个不错的Django的学习资料.先收藏一下,以备后用.谢谢 http://www.ziqiangxuetang.com/django/django-install.html 在centos下安 ...

  9. centos下安装php环境

    centos下安装php环境 安装apache yum install httpd-devel 启动apache /etc/init.d/httpd start 安装mysql yum install ...

随机推荐

  1. vmware上网的方式

    vmware上网设置 vmware虚拟机上网设置 我的一些心得,如下: 如何使vmware虚拟机中的操作系统能够上网? 第一种情况: 主机使用PPPOE拨号上网 方法一:NAT方式 1.先关闭虚拟机中 ...

  2. 一个表缺失索引发的CPU资源瓶颈案例

    背景 近几日,公司的应用团队反应业务系统突然变慢了,之前是一直比较正常.后与业务部门沟通了解详情,得知最近生意比较好,同时也在做大的促销活动,使得业务数据处理的量出现较大的增长,最终系统在处理时出现瓶 ...

  3. .NET设计模式访问者模式

    一.访问者模式的定义: 表示一个作用于某对象结构中的各元素的操作.它使你可以在不改变各元素类的前提下定义作用于这些元素的新操作. 二.访问者模式的结构和角色: 1.Visitor 抽象访问者角色,为该 ...

  4. Java之多态(二)

    package test05;import test06.Car1;public class DuoTai_Test02 { /**多个对象,一个形态 * Tiger.Lion.Snake → Ani ...

  5. 浏览器的兼容模式下的button中文字垂直方向不居中显示

    <button style="cursor:pointer;vertical-align: middle;" >删除</button> 这时候垂直不居中. ...

  6. android SystemServer.java启动的服务。

    EntropyService:熵(shang)服务,用于产生随机数PowerManagerService:电源管理服务ActivityManagerService:最核心服务之一,Activity管理 ...

  7. 在 Ubuntu 15.04 中使用 ubuntu-make、Eclipse 4.4、Java 8 以及 WTP

    Ubuntu 今天发布新版本了 其实昨天(2015-04-23)我就看到了 Ubuntu 发布新版本的新闻,下班后回家的第一件事就是访问 Ubuntu 的官网,很可惜,没有提供下载.今天(2015-0 ...

  8. C#开源实现MJPEG流传输

    本文为 Dennis Gao 原创技术文章,发表于博客园博客,未经作者本人允许禁止任何形式的转载. 许久以前写了篇文章<基于.NET打造IP智能网络视频监控系统>,记录和介绍了自己几年来积 ...

  9. MapReduce剖析笔记之七:Child子进程处理Map和Reduce任务的主要流程

    在上一节我们分析了TaskTracker如何对JobTracker分配过来的任务进行初始化,并创建各类JVM启动所需的信息,最终创建JVM的整个过程,本节我们继续来看,JVM启动后,执行的是Child ...

  10. dynamic-css 动态 CSS 库,使得你可以借助 MVVM 模式动态生成和更新 css,从 js 事件和 css 选择器的苦海中脱离出来

    dynamic-css 使得你可以借助 MVVM 模式动态生成和更新 css,从而将本插件到来之前,打散.嵌套在 js 中的修改样式的代码剥离出来.比如你要做元素跟随鼠标移动,或者根据滚动条位置的变化 ...