一、集群软件选择及环境部署
1.集群软件选择
软件 | 版本 | 下载地址(尽量是官网) | 安装位置 |
---|---|---|---|
操作系统 | CentOS7 | http://101.96.10.26/isoredirect.centos.org/centos/7/isos/x86_64/CentOS-7-x86_64-DVD-1611.iso | 虚拟机中 |
Java | jdk-8u131-linux-x64.tar.gz | http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html | /usr/local/hadoopenv/java/jdk1.8.0_131 |
Hadoop | hadoop-2.7.3.tar.gz | http://apache.fayea.com/hadoop/common/hadoop-2.7.3/hadoop-2.7.3.tar.gz | /usr/local/hadoopenv/hadoop |
Zookeerper | Zookeeper-3.4.8.tar.gz | http://mirrors.hust.edu.cn/apache/zookeeper/ | /usr/local/hadoopenv/zookeeper |
Hbase | hbase-1.2.6-bin.tar | https://archive.apache.org/dist/hbase/stable/ | /usr/local/hadoopenv/hbase |
2.单机情况下伪分布式模式下集群主机和ip映射
集群角色 | 主机名 | 用户名 | IP |
---|---|---|---|
Master | namenode | hadoop | |
Slave1 | datanode1 | hadoop | |
Slave2 | datanode2 | hadoop |
二、环境设置
1.关闭防火墙
CentOS7安装好后,需要关闭防火墙。CentOS7默认使用firewall作为防火墙,关闭防火墙
systemctl stop firewalld.service #停止防火墙
systemctl disable firewalld.serverice #禁止开机启动
2.关闭SELinux
1)修改selinux文件
SELinux=enforce 修改为 SELinux=disable
2)使配置生效
#setenforce 0
#getenforce
3)关闭不需要的服务
for SERVICES in abrtd acpid auditd avahi-daemon cpuspeed haldaemon mdmonitor messagebus udev-post; do systemctl disable ${SERVICES} ; done
三、网络配置
1.修改主机名
hostname #查看主机名
hostnamectl set-hostname #修改主机名
2.配置虚拟机网络模式
将集群中虚拟机,网络配置成桥接模式
$ip addr #查看ip地址
配置hosts文件
#vim /etc/hosts #编辑hosts文件
在hosts文件中添加 ip与hostname的映射
xxx.xxx.xxx.xxx namenode
xxx.xxx.xxx.xxx datanode1
xxx.xxx.xxx.xxx datanode2
四、SSH免密码登录
1.设置ssh配置文件
为了安全建议只使用密钥登录,去掉默认的密码登录
vim /etc/ssh/sshd_config
修改以下内容
Protocol 2 # 使用SSH2协议
RSAAuthentication yes # 启用 RSA 认证
PubkeyAuthentication yes # 启用公钥私钥配对认证方式
AuthorizedKeysFile .ssh/authorized_keys # 公钥文件路径(和上面生成的文件同)
PasswordAuthentication no # 禁止密码验证登陆(根据需要,不过一般启用了密钥,就不用密码了)重启Linux服务器的ssh服务
service sshd restart
2.生成公私密钥对
对于每台主机,在hadoop用户下执行以下命令
$ssh-keygen -t rsa -P ''
一路回车,生成的私钥id_rsa 和公钥id_rsa.pub默认在~/.ssh/下
将公钥追加到authorized_keys ,确保ssh localhost无密码登陆
修改权限
3.配置节点之间可以ssh登陆
$scp id_rsa.pub hadoop@datanode1:/home/hadoop/
$scp id_rsa.pub hadoop@datanode2:/home/hadoop/
追加密钥