1 虚拟机准备

1.1 安装CentOS7

这里安装一台,另外两台克隆即可。

因为安装学习,所以分配配置较小

主机

cpu

内存

硬盘

node1

2

4G

80G

node2

2

2G

80G

node3

2

2G

80G

1.2 配置网络

首先,虚拟机的网络使用NAT方式。一般来说在创建虚拟机的时候默认就是NAT方式,如果不是,在这里检查并修改:

虚拟机hadoop初始化 如何查找hadoop虚拟机ip地址_hadoop

并查看网关IP是多少。VMware默认是x.x.x.2
我习惯修改成了.1,对于本此实验来讲,是192.168.200.1,记住此网关

使用指令ip addr可以查看当前ip地址:

ip addr

修改配置文件:

vi /etc/sysconfig/network-scripts/ifcfg-网卡名	#一般是ens33或eth0
TYPE=Ethernet
BOOTPROTO=static#修改为静态地址
NAME=eth0
DEVICE=eth0
ONBOOT=yes#开启自启
IPADDR=192.168.200.101#IP地址
NETMASK=255.255.255.0#掩码
GATEWAY=192.168.200.1#网关
DNS1=8.8.8.8#DNS可设置多个DNS2、DNS3...

重启网络服务并且测试网络连接:

systemctl restart network
ping www.baidu.com

1.3 关闭防火墙

首先查看防火墙状态:

systemctl stop firewalld#停止服务
systemctl disable firewalld#关闭服务自启
systemctl status firewalld#查看状态。Inactive(dead)表示已经关闭

1.4 克隆虚拟机

直接克隆即可。注意选择“完整克隆”

关键需要修改克隆机的Ip地址:

同样方法修改即可。分别修改克隆机的ip地址为:

192.168.200.102

192.168.200.103

互相ping通即可。

1.5 SecureCRT等三方工具连接虚拟机

输入ip、主机名、密码即可

1.6 修改主机名

查看主机名:

hostname

修改主机名,将主机名改为node1:

vi /etc/hostname #需要重启一下
node1
或者
hostnamectl set-hostname node1 #这种方式不需要重启

三台电脑都要修改主机名,分别修改为node1、node2、node3。

1.7 SSH免密登陆

免密登陆原理:

虚拟机hadoop初始化 如何查找hadoop虚拟机ip地址_虚拟机hadoop初始化_02

这里做node1到三个节点的免密登陆,其他节点到三个节点的免密登陆同理
生成密钥文件,输入指令:

node1#ssh-keygen –t rsa
#一路回车

拷贝密钥指令:

node1#ssh-copy-id 192.168.200.101
输入yes
输入密码
其他两个节点同理
node1#ssh-copy-id 192.168.200.102
node1#ssh-copy-id 192.168.200.103

1.8 修改映射文件

映射文件修改后,三台虚拟机间相互访问就不需要输入对方的ip地址了,只需要输入主机名就可以,这样就大大方便后续的操作了。

修改指令:

vi /etc/hosts
增加三条记录:
192.168.200.101 node1
192.168.200.102 node2
192.168.200.103 node3

复制给其他两台

[root@node1 ~]# scp /etc/hosts root@node2:/etc/hosts
[root@node1 ~]# scp /etc/hosts root@node3:/etc/hosts

1.9 安装JDK

首先,上传jdk包到虚拟机中。在虚拟机的/opt/目录下,新建两个文件夹:

mkdir /opt/{module,software}
#module:放压缩包文件,software:安装路径

使用终端工具将jdk包上传到module文件夹下。
jdk官网下载地址

https://www.oracle.com/java/technologies/javase-jdk8-downloads.html#license-lightbox

最新版

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-v2FJx88L-1587619911429)(大数据Hadoop学习(1)]-虚拟机准备.assets/image-20200423113721093.png)

解压安装包到software文件夹下,解压指令:

[root@node1 module]# tar -zxvf jdk-8u161-linux-x64.tar.gz -C /opt/software/
[root@node1 module]# ls /opt/software/
jdk1.8.0_161

修改环境变量:

[root@node1 module]# vi /etc/profile

在文件末尾加入以下两行

export JAVA_HOME=/opt/software/jdk1.8.0_161
export PATH=$PATH:$JAVA_HOME/bin

让配置文件生效:

[root@node1 module]# source /etc/profile

检查java version:

[root@node1 module]# java -version
java version "1.8.0_161"
Java(TM) SE Runtime Environment (build 1.8.0_161-b12)
Java HotSpot(TM) 64-Bit Server VM (build 25.161-b12, mixed mode)

**注意:三台虚拟机都需要安装Jdk.**因为Hadoop是基于java的。

文件分发;

[root@node2 ~]# mkdir /opt/software
[root@node3 ~]# mkdir /opt/software
[root@node1 module]# cd /opt/software/
[root@node1 software]# scp -r jdk1.8.0_161/ node2:/opt/software/
[root@node1 software]# scp -r jdk1.8.0_161/ node3:/opt/software/

分发配置文件:

[root@node1 software]# scp /etc/profile node2:/etc/profile
[root@node1 software]# scp /etc/profile node3:/etc/profile

在node2和node3上生效该文件。

source /etc/profile

配置文件:

[root@node1 software]# scp /etc/profile node2:/etc/profile
[root@node1 software]# scp /etc/profile node3:/etc/profile

在node2和node3上生效该文件。

source /etc/profile

大数据Hadoop学习(2)-Hadoop分布式集群搭建