Fork me on GitHub

Hadoop安装(Ubuntu Kylin 14.04)

安装环境:ubuntu kylin 14.04   haoop-1.2.1   hadoop下载地址:http://apache.mesi.com.ar/hadoop/common/hadoop-1.2.1/

1.安装JDK,这里要注意的是:要想在hadoop中使用,则需要在hadoop下输入命令:source  /etc/profile 来实现,然后用java -version 测试看看是否生效了。

2.创建hadoop用户和用户组(切换到root)

创建hadoop用户组   sudo addgroup hadoop

创建hadoop用户      sudo adduser -ingroup hadoop hadoop

给hadoop用户添加权限,打开/etc/sudoers文件;      sudo vim /etc/sudoers

按回车键后就会打开/etc/sudoers文件了,给hadoop用户赋予root用户同样的权限。

在root   ALL=(ALL:ALL)   ALL下添加hadoop   ALL=(ALL:ALL)  ALL,   即:hadoop  ALL=(ALL:ALL) ALL  这样就可以使用sudo了。

3.安装SSH  ssh可以实现远程登录和管理。
    安装openssh-server      sudo apt-get install ssh openssh-server  
    服务启动:sudo /etc/init.d/ssh start
    查看服务启动是否正确:ps -e | grep ssh     
     ssh生成密钥有rsa和dsa两种生成方式,默认情况下采用rsa方式。
    创建ssh-key(切换到hadoop),这里我们采用rsa方式; ssh-keygen -t rsa -P "" 回车后会在~/.ssh/下生成两个文件:id_rsa和id_rsa.pub这两个文件是成对出现的
    进入~/.ssh/目录下,将id_rsa.pub追加到authorized_keys授权文件中,开始是没有authorized_keys文件的;
 注:这里可能会出现一个问题就是授权后,并没有实现无密码登录:那是因为authorized_keys 的权限必须改为600,authorized_keys 在./hadoop/.ssh/
    cd ~/.ssh
    cat id_rsa.pub >> authorized_keys
    登录:ssh localhost 
    退出:exit
  这样就可以实现无密码登录了。

4、解压hadoop源码包

终端下进入hadoop源码包所在目录,使用复制命令把hadoop源码包复制到/home/hadoop下

1 cp hadoop-1.2.1.tar.gz /home/hadoop

然后解压,命令行如下

tar -xzvf *.tar.gz

 

5、配置hadoop的hadoop/conf下的hadoop-env.sh,core-site.xml,mapred-site.xml,hdfs-site.xml

 配置hadoop-1.2.1/conf/hadoop-env.sh,命令行:

1 vim /home/hadoop/hadoop-1.2.1/conf/hadoop-env.sh

找到JAVA_HOME

把前面的#去掉,加上本系统jdk路径,保存退出

配置hadoop-1.2.1/conf/core-site.xml,命令行:

gedit /home/hadoop/hadoop-1.2.1/conf/core-site.xml

在hadoop新建hadoop_tmp目录,原因是http://blog.csdn.net/bychjzh/article/details/7830508

将如下<configuration> </configuration>之间的添加进入,保存退出

复制代码
<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>

<!-- Put site-specific property overrides in this file. -->

<configuration>
        <property>
            <name>fs.default.name</name>
            <value>hdfs://localhost:9000</value>
        </property>
    <property>
          <name>hadoop.tmp.dir</name>
          <value>/home/hadoop/hadoop-1.2.1/hadoop_tmp</value>
         <description>A base for other temporary directories.</description>
    </property>


</configuration>
复制代码

配置hadoop-1.2.1/conf/mapre-site.xml,命令行:

1 vim /home/hadoop/hadoop-1.2.1/conf/mapre-site.xml

将如下<configuration> </configuration>之间的添加进入,保存退出

复制代码
<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>

<!-- Put site-specific property overrides in this file. -->

<configuration>
    <property>
        <name>mapred.job.tracker</name>
        <value>localhost:9001</value>
    </property>
</configuration>
复制代码

配置hadoop-1.2.1/conf/hdfs-site.xml,命令行:

1 vim /home/hadoop/hadoop-1.2.1/conf/hdfs-site.xml

将如下<configuration> </configuration>之间的添加进入,保存退出

复制代码
<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>

<!-- Put site-specific property overrides in this file. -->

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

</configuration>
复制代码

至此hadoop的安装配置已经完毕,稍后的是hadoop的初次运行操作

6、格式化hdfs文件系统

进入hadoop-1.2.1

./bin/hadoop namenode -format

当你看到下图时

恭喜你,hdsf文件系统格式化成功

7、启动hadoop服务

./bin/start-all.sh

出现如下画面

jps

jps是查看java虚拟机运行的java线程

然后出现如下画面

不计jps,有五个hadoop相关线程,恭喜你,hadoop安装配置成功,运行正常。

然后可以退出hadoop。,以后再用时再启动,导入数据

./bin/stop-all.sh 
注:用户不在sudoers文件中的解决方法
posted @ 2015-03-21 19:35  劲风天下  阅读(364)  评论(0编辑  收藏  举报