此文已由作者朱笑笑授权网易云社区发布。
欢迎访问网易云社区,了解更多网易技术产品运营经验。
本文主要参照官网的安装步骤实现了Hadoop伪分布式集群的搭建,希望能够为初识Hadoop的小伙伴带来借鉴意义。
环境:
(1)系统环境:CentOS 7.3.1611 64位
(2)Java版本:OpenJDK 1.8.0
配置Hadoop单节点集群前准备
1、创建hadoop用户:
新建用户用于hadoop使用:
(1)打开终端,输入命令su,回车,输入root的密码以root用户登录,并创建名为hadoop的新用户:
useradd -m Hadoop -s /bin/bash
(2)修改用户密码:
passwd hadoop
(3)为使用方便,给hadoop用户提升权限,否则hadoop用户在使用sudo命令时会报出:hadoop不在sudoers文件中。此事将被报告;
a. 切换到root用户,查看/etc/sudoers文件权限,默认权限为只读
b. 修改/etc/sudoers文件权限为读写权限:chmod 777 /etc/sudoers
c. 修改/etc/sudoers文件内容,执行visudo或者vim /etc/sudoers
如下图,在 root ALL=(ALL) ALL 这行下面增加一行内容:hadoop ALL=(ALL) ALL (当中的间隔为tab,说明:格式为{用户名 网络中的主机=(执行命令的目标用户) 执行的命令范围}),如下图所示:
若要在执行sudo命令时免输入密码,可以将上述添加的内容改为:hadoop ALL=(ALL) NOPASSWD:ALL。
d. 保存退出,恢复/etc/sudoers文件的访问权限为440;
(4)切换至hadoop用户;
2、安装SSH及配置免密码登录
集群和单节点模式都需要使用SSH登陆,一般情况下,CentOS中默认安装了SSH client、SSH server,可以通过以下命令进行检验:
rpm -qa | grep ssh
若已经安装,则返回如下内容,说明已经包含了SSH client和SSH server,无需再安装:
若没有安装SSH client、SSH server,则可以通过yum进行安装:
sudo yum install openssh-clients
sudo yum install openssh-server
测试SSH是否可用,可输入如下命令:
ssh localhost
首次登陆出现如下提示(图中为使用root用户登录,hadoop用户同理),输入yes即可,在用户的主文件夹(/home/用户名)下会生成.ssh目录。然后根据提示输入hadoop用户密码,登陆本机: