一、Hadoop完全分布式集群搭建部署
centos版本:CentOS-7-x86_64-Minimal-1810.iso
准备的安装包:
jdk-8u181-linux-x64.tar.gz
hadoop-2.9.2.tar.gz
1、配置静态IP
搭建之前,先配置好1台centos服务器
登录以后,输入vi /etc/sysconfig/network-scripts/ifcfg-ens33
配置网络
修改 BOOTPROTO=static ONBOOT=yes
添加 IPADDR=设置IP地址
GATEWAY=网关
NETMASK=255.255.255.0
DNS1=网关(和GATEWAY一样)114.114.114.114 或(8.8.8.8)
说明:DNS1的114为国内电信、移动联通的解析服务,8的话为Google的,访问国外较多就推荐换8
完了后重启网卡:service network restart
验证:可以ip addr
验证下ens33的ip,还有ping www.baidu.com
一下,没报错就ok
2、关闭防火墙
搭建和学习阶段,需要关闭下防火墙,以下是关于防火墙一些命令:
启动: systemctl start firewalld
关闭: systemctl stop firewalld
查看状态: systemctl status firewalld
开机禁用 : systemctl disable firewalld
开机启用 : systemctl enable firewalld
3、修改hostname 及 hosts映射
让3台机器vi /etc/hostname
让里面内容分别为hadoop01,hadoop02,hadoop03
然后所有的主机hosts文件均配置 vi /etc/hosts
添加以下内容:
192.168.26.11 hadoop01
192.168.26.12 hadoop02
192.168.26.13 hadoop03
主机名修改了重启即会更新
4、创建Hadoop账号
创建名hadoop的账号 useradd hadoop
给hadoop账号设置密码 passwd hadoop
给sudoers文件赋予写权限 chmod +w /etc/sudoers
打开sudoers文件并编辑 vi /etc/sudoers
在sudoers文件中添加 :
hadoop ALL=(ALL) All
或 hadoop ALL=(root)NOPASSWD:ALL
保存退出,取消sudoers文件写权限 chmod -w /etc/sudoers
然后克隆2台虚拟机,选择完整克隆,克隆完成后修改ip和主机名
5、配置SSH
每台节点(也就是服务器)切换root用户,如果在则不用切换:su root
输入ssh-keygen
生成私钥和公钥(效果等价ssh-keygen -t rsa
命令),然后一直回车
然后cd ~/.ssh
在hadoop01使用:
追加公钥内容cat id_rsa.pub >> authorized_keys
远程拷贝scp authorized_keys root@hadoop02:~/.ssh
在hadoop02使用:
追加公钥内容cat id_rsa.pub >> authorized_keys
远程拷贝scp authorized_keys root@hadoop03:~/.ssh
在hadoop03使用:
追加公钥内容cat id_rsa.pub >> authorized_keys
把id_rsa.pub文件远程拷贝其他节点scp authorized_keys root@hadoop01:~/.ssh
然后再拷贝一次scp authorized_keys root@hadoop02:~/.ssh
验证配置成功:可以在hadoop01节点或(hadoop02\hadoop03)输入ssh hadoop01
切换节点,第一次可以需要密码,后面不用密码就成功了,然后可以输入exit
退出这个节点
6、安装jdk
(先安装配置好1台,后远程拷贝到其他2台)
每台节点创建2个目录,使用mkdir -p /data/packs和mkdir /software
存放安装包和软件
把下载好的安装包放到第1台节点的/data/packs目录,使用命令:
tar zxvf /data/packs/jdk-8u181-linux-x64.tar.gz -C /software/
然后重命名一下mv /software/jdk1.8.0_181/ /software/java
vi /etc/profile
添加到环境变量
添加以下内容:
export JAVA_HOME=/software/java
export PATH=$PATH:$JAVA_HOME/bin:$JAVA_HOME/sbin
环境变量同时添加bin和sbin目录是个好习惯,因为有些执行文件是bin或sbin目录下, 这样就不用特意去看目录了
激活环境变量. /etc/profile
(等价于source /etc/profile
)
验证java安装成功:java -version
7、修改时区
各个节点的时间如果不同步,会出现启动异常,或其他原因。这里将时间统一设置为Shanghai时区。命令如下:
验证每个节点运行时间:uptime
或date
cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
会提示cp: overwrite /etc/localtime'? 输入
yes`
修改为中国的东八区
sudo vi /etc/sysconfig/clock
添加以下内容
ZONE="Asia/Shanghai"
UTC=false
ARC=false
输入reboot
重启每台节点后,再次验证下节点运行时间
8、安装Hadoop
(先安装配置好1台,后远程拷贝到其他2台)
把Hadoop安装包放/data/packs目录下,然后
输入tar zxvf /data/packs/hadoop-2.9.2.tar.gz -C /software/
重