你好,游客 登录 注册 搜索
背景:
阅读新闻

CentOS 6.5上搭建Hadoop环境详解

[日期:2016-08-23] 来源:Linux社区  作者:Linux [字体: ]

本文详细记录在开发服务器CentOS 6.5上搭建Hadoop的详细过程。

ssh连接免密码配置

由于配置过程中需要频繁的进行ssh连接到开发服务器执行命令以及通过scp命令向服务器拷贝文件等依赖ssh连接的操作。所以,配置本地环境跟服务器之间的ssh免密码连接可以有效的提升工作效率。

由于我本机已经生成过公钥,所以我只需将已有的公钥拷贝到服务器即可。推荐使用ssh-copy-id命令,简单又不会出错。手动copy 再append的公钥文件尾,容易因为操作问题,造成无法正确识别公钥。

注:如果你没有生成过公钥,可通过ssh-keygen命令生成公钥。走默认配置即可。

在我的mac上,居然还没有安装ssh-copy-id命令。通过brew 命令安装即可。

brew install ssh-copy-id

然后copy公钥到指定主机

ssh-copy-id root@172.20.2.14

其中, root@172.20.2.14改为你需要访问的服务器的 用户名@IP。根据提示输入一次密码。成功后,所有基于ssh的命令你只需要通过用户名@IP 即可直接访问服务器。

下面关于Hadoop的文章您也可能喜欢,不妨看看:

Ubuntu14.04下Hadoop2.4.1单机/伪分布式安装配置教程  http://www.linuxidc.com/Linux/2015-02/113487.htm

CentOS安装和配置Hadoop2.2.0  http://www.linuxidc.com/Linux/2014-01/94685.htm

Ubuntu 13.04上搭建Hadoop环境 http://www.linuxidc.com/Linux/2013-06/86106.htm

Ubuntu 12.10 +Hadoop 1.2.1版本集群配置 http://www.linuxidc.com/Linux/2013-09/90600.htm

Ubuntu上搭建Hadoop环境(单机模式+伪分布模式) http://www.linuxidc.com/Linux/2013-01/77681.htm

Ubuntu下Hadoop环境的配置 http://www.linuxidc.com/Linux/2012-11/74539.htm

单机版搭建Hadoop环境图文教程详解 http://www.linuxidc.com/Linux/2012-02/53927.htm

Hadoop 2.6.0 HA高可用集群配置详解  http://www.linuxidc.com/Linux/2016-08/134180.htm

Ubuntu 16.04安装Hadoop2.6+Spark1.6+开发实例  http://www.linuxidc.com/Linux/2016-08/134101.htm

新用户、用户组创建

为了更好的权限控制,养成良好的Linux使用习惯,我们首先创建一个管理和使用hadoop集群的用户(组)dps-hadoop。这也是hadoop集群管理所需要的环境配置。

groupadd dps-hadoop
useradd -d /home/dps-hadoop -g dps-hadoop dps-hadoop

考虑到难免需要使用sudo提权的情况,给该用户配置到sudo名单下, 修改/etc/sudoers文件。

vim /etc/sudoers

新增一行记录:

dps-hadoop ALL=(ALL) ALL

此后,我们均使用dps-hadoop用户进行操作。

配置本地DNS服务器

之前我介绍了如何用Docker搭建本地的DNS服务器,这里终于派上用处。如果你没有本地DNS服务器,那么你修改/etc/hosts文件也可以。 对于CentOS,临时生效的配置文件在

/etc/resolv.conf

你可以看到该文件开头提示你,该文件是自动生成的。重启网络服务会覆盖,永久配置修改

/etc/sysconfig/network-scripts/ifcfg-eth0

修改其中的

DNS1=172.20.2.24

其中ifcfg-eth0,改为你自己的网卡名即可。

安装JDK

Hadoop是Java开发的,自然需要依赖jre运行。我采用了比较本的方法,现在Oracle官网下载jdk-8u77到本地,再通过scp命令拷贝到服务器的方式。进入jdk所在文件夹执行

scp jdk-8u77-linux-x64.rpm dps-hadoop@172.20.2.14:~/download

其实通过wget也可以下载,但是网上给出的命令

wget --no-cookie --no-check-certificate --header "Cookie: gpw_e24=http%3A%2F%2Fwww.oracle.com%2F" http://download.oracle.com/otn-pub/java/jdk/7u10-b18/jdk-7u10-linux-i586.rpm

我试了多次均未成功。我自己有个笨方法,就是先通过浏览器获取下载获取到真正的下载地址

然后再通过wget下载:

wget http://download.oracle.com/otn-pub/java/jdk/8u77-b03/jdk-8u77-linux-x64.rpm?AuthParam=1460511903_6b2f8345927b3fc4f961fbcaba6a01b3

下载后,你可能需要进行一次重命名,将多余的?AuthParam后缀去掉。

mv jdk-8u77-linux-x64.rpm?AuthParam=1460511903_6b2f8345927b3fc4f961fbcaba6a01b3 jdk-8u77-linux-x64.rpm

最后,安装jdk

rpm -i jdk-8u77-linux-x64.rpm

配置JAVA_HOME

修改dps-hadoop用户自己的环境变量配置文件。

vim ~/.bashrc

注意:网上提到了配置环境变量的方式有很多,粗暴的就是直接配置在/etc/environment/etc/profile等全局配置文件中,对所有用户生效。不推荐这种做法。对于用户级的变量也有两个~/.bash_profile~/.bashrc,区别请自行研究。如果你想通过执行start-dfs.sh等脚本,远程起停hadoop集群,那么请配置在~/.bashrc中,否则hadoop会找不到你配置的环境变量。

例如:Error: JAVA_HOME is not set and could not be found.

添加

export JAVA_HOME="/usr/java/jdk1.8.0_77"

不建议配置到/etc/environment 下,因为会对所有用户生效。

更多详情见请继续阅读下一页的精彩内容http://www.linuxidc.com/Linux/2016-08/134539p2.htm

linux
本文评论   查看全部评论 (0)
表情: 表情 姓名: 字数

       

评论声明
  • 尊重网上道德,遵守中华人民共和国的各项有关法律法规
  • 承担一切因您的行为而直接或间接导致的民事或刑事法律责任
  • 本站管理人员有权保留或删除其管辖留言中的任意内容
  • 本站有权在网站内转载或引用您的评论
  • 参与本评论即表明您已经阅读并接受上述条款