Centos 7 hadoop2.8.4搭建
在多搭建了几遍之后发现还是挺简单的,如果仅仅搭建hadoop的话,虚拟机用VMware创建。本文中所有操作均使用root用户,并未创建hadoop用户
一 环境配置
1. 首先我们要将Ip设置好
```
# 每个系统上的文件名可能不一致,不过都是ifcfg-en开头的注意一下就行
vi /etc/sysconfig/network-scripts/ifcfg-ens33
# DHCP 动态分配改为static 静态
BOOTPROTO=static
ONBOOT=yes
# IPADDR中X是自己网络的,记得修改,可以在适配器中net8网卡中设置,第4位可以再1-244中任选,并不一定要求是51
IPADDR=192.168.52.51
GATEWAY=192.168.52.2
DNS1=8.8.8.8
DNS2=8.8.4.4
NETMASK=255.255.255.0
vi /etc/resolv.conf
nameserver 8.8.8.8
nameserver 8.8.4.4
service network restart
```
2. 修改主机名,这里我设置的是centos
```
# hostnamectl set-hostname centos
hostnamectl set-hostname 主机名
```
3. 修改IP与主机名关系映射
linux:(虚拟机)
```
vi /etc/hosts
192.168.52.51 centos
192.168.52.52 centos-node1
192.168.52.53 centos-node2
# 后面两行是为了搭建完全分布式准备的,如果只准备搭建伪分布式可不添加
```
windows:(宿主机)
在C:\Windows\System32\drivers\etc路径下找到hosts并添加
192.168.52.51 centos
192.168.52.52 centos-node1
192.168.52.53 centos-node2
同样后面两行是为了搭建完全分布式准备的,如果只准备搭建伪分布式可不添加
4. 关闭防火墙(没连上的话时候多看看,很可能就是防火墙没关)
- 关闭防火墙:systemctl stop firewalld.service
- 禁用防火墙:systemctl disable firewalld.service
- 查看防火墙:systemctl status firewalld.service
-
- 关闭Selinux:vi /etc/selinux /config
- 将SELINUX=enforcing改为SELINUX=disabled
二 安装JDK
1. 卸载现有jdk
查询是否安装java软件:
rpm -qa|grep java
2. 如果安装的版本低于1.7,卸载该jdk:
rpm -e --nodeps 软件包名字
例如:rpm -e --nodeps java-1.8.0-openjdk-1.8.0.102-4.b14.el7.x86_64
3. 在/opt目录下创建一个子文件
mkdir /opt/module
4. 解压jdk到/opt/module目录下
tar -zxvf jdk-8u144-linux-x64.tar.gz -C /opt/module/
5. 配置jdk环境变量
```
vi /etc/profile
export JAVA_HOME=/opt/module/jdk1.8.0_144
export PATH=$PATH:$JAVA_HOME/bin
source /etc/profile
```
6. 测试jdk安装,出现对应的版本号就成功了
```
java -version
```
三伪分布式部署
一 SSH无密码登录
1. 生成公钥和私钥 ssh-keygen -t rsa
2. 拷贝到免密登录的目标机器(也可以写ip地址)
+ ssh-copy-id centos
+ ssh-copy-id centos-node1
+ ssh-copy-id centos-node2
3. 完全分布式:一共执行9遍,每台主机各执行三遍
4. 伪分布式:只需要执行第一个就可以了
5. 测试登录 ssh 主机名(第一次登录的时候需要登录)
二 集群部署规划:
centos | centos-node1 | centos-node2 | |
---|---|---|---|
NameNode | |||
HDFS | SecondaryNameNode | ||
DataNode | DataNode | DataNode | |
YARN | ResourceManager | ||
NodeManager | NodeManager | NodeManager |
三 配置文件
文件目录 /opt/module/hadoop-2.8.4/etc/hadoop/
配置文件中所有主机名1均为主节点主机名称(centos),若没有配置地址映射hosts可用ip代替
core-site.xml
<!-- 指定HDFS中NameNode的地址 -->
<property>
<name