day1_Hadoop集群搭建
需要用到的软件
- VirtualBox 5.1.30(版本之间有所差别)
- hadoop-2.7.3.tar.gz
- CentOS-7-x86_64-DVD-1804.iso
- jdk-8u91-linux-x64.rpm
- FTP传输工具
- 系统:macOS
创建虚拟机
- 类型:Linux
- 版本:Red Hat (64-bit)
虚拟机网络设置
- 将虚拟机的网络设置为
Host-Only
,虚拟机-->设置—>网络 -
注意了解网络地址转换NAT、仅主机(Host-Only)网络、桥接网卡之间的区别
虚拟机网络设置.png
设置虚拟机IP和子网掩码:vim /etc/sysconfig/network-scripts/ifcfg-enp0s3
# 编辑内容如下
TYPE=Ethernet
IPADDR=192.168.56.100
NETMASK=255.255.255.0
设置虚拟机GATEWAY(网关):vi /etc/sysconfig/network
# 编辑内容如下
NETWORKING=yes
GATEWAY=192.168.56.1
修改master主机名:hostnamectl set-hostname master
重启虚拟机网络:service network restart
虚拟机与宿主机互相ping通
- 虚拟机操作:
ping 192.168.56.1
,宿主机的IP是:192.168.56.1
,即GATEWAY - 宿主机操作:
ping 192.168.56.100
防火墙操作(ping不通的情况下可以试试)
-
systemctl stop firewalld.service
systemctl disable firewalld.service
上传hadoop和jdk压缩包至/usr/local
目录
使用rpm
命令进行jdk安装 rpm -ivh jdk-8u91-linux-x64.rpm
- 默认安装在
/usr/java
目录下面 - 输入
java
命令检测是否安装完成
安装hadoop:tar -xvf hadoop-2.7.3.tar.gz
- 解压后当前目录下出现
hadoop-2.7.3
- 改名
mv hadoop-2.7.3 hadoop
配置hadoop的JAVA_HOME
vim /usr/local/hadoop/etc/hadoop/hadoop-env.sh
# 编辑如下内容
export JAVA_HOME=/usr/java/default
配置hadoop的环境变量
vim /etc/profile
# 在profile文件尾部添加内容如下
export PATH=$PATH:/usr/local/hadoop/bin:/usr/local/hadoop/sbin
要使profile文件生效,执行以下命令source /etc/profile
输入hadoop
命令检测是否安装完成
切断master机器的电源:shutdown -h now
复制三台虚拟机:slave1、slave2、slave3
- 改个名字,完全复制
每台复制的虚拟机操作
- 修改主机名:`hostnamectl set-hostname slaveX
- 修改ip地址:
vim /etc/sysconfig/network-scripts/ifcfg-enp0s3
- slave1 设置为IP:192.168.56.101,hostname:slave1
- slave2 设置为IP:192.168.56.102,hostname:slave2
- slave3 设置为IP:192.168.56.103,hostname:slave3
- 重启服务
service network restart
- ping 宿主机:
ping 192.168.56.1
- 可以通过互相的
ping
操作检测是否连通 - 关闭所有机器的防火墙
systemctl stop firewalld.service
systemctl disable firewalld.service
修改vim /usr/local/hadoop/etc/hadoop/core-site.xml
,指明namenode的信息
- master、slave都得配置,指明哪台机器是master
- 该配置若在复制虚拟机前在master上配置,则无需重复操作
<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://master:9000</value>
</property>
</configuration>
修改4台机器的/etc/hosts
,让他们通过名字认识对方,测试一下互相用名字可以ping
通
# 删除以下内容
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
# 添加如下内容
192.168.56.100 master
192.168.56.101 slave1
192.168.56.102 slave2
192.168.56.103 slave3
namenode与datanode是装在一起的,启动的时候要自行进行选择
master操作
- 对存储文件内容的目录进行格式化:
hdfs namenode -format
,选择 Y - 启动namehode:
hadoop-daemon.sh start namenode
- 查看java进程:
jps
slave操作
- 启动datanode:
hadoop-daemon.sh start datanode
网友评论