1、配置虚拟机
三台虚拟机,分别为node1、node2、node3,内存分别为4G、2G、2G,现存最好为(>40G),如下:
2、修改主机名
分别打开三台虚拟机,root用户输入一下命令:
node1虚拟机输入:
hostnamectl set-hostname node1
node2虚拟机输入:
hostnamectl set-hostname node2
node3虚拟机输入:
hostnamectl set-hostname node3
3、验证
输入完成之后,刷新cmd窗口,可以看到主机名发生变化:
4、修改配置文件
(1)图形化界面修改
设置-》网络-》点击-》将ipv4调整为手动-》修改地址、子网掩码、网关、dns
(2)重启网络设置
先开关按钮,再重启网络:
sudo systemctl restart NetworkManager.service
(3)查看修改结果
5、修改主机的host文件
找到C盘下的如下目录:
C:\Windows\System32\drivers\etc
打开第一个hosts文件,在文件末尾输入三台虚拟机的IP地址,然后保存,分别为:
192.168.88.101 node1
192.168.88.102 node2
192.168.88.103 node3
6、finall shell连接
(1)建立连接
因为已经在windows中配置过node1,所以这里主机名只需要输入node1即可,不需要输入IP地址。
(2)关闭防火墙
sudo ufw disable
(3)配置ssh
安装ssh服务器
sudo apt install openssh-server
安装ssh客户端
sudo apt install openssh-client
(4)配置root密码
当你按照(1)中步骤连接时,会不断弹出密码框,这是因为在初始化Ubuntu时,我们只赋予了普通用户密码,并没有给与root用户密码,我们需要在Ubuntu中配置root用户密码:
sudo passwd root
(5)修改配置文件
在root用户下,进入如下配置文件:
vim /etc/ssh/sshd_config
找到PermitRootLogin……这一行:
在这一行的下面添加如下语句:
PermitRootLogin yes
(6)重启ssh服务
systemctl restart sshd
(7)完成链接
7、修改Ubuntu中的hosts文件
(1)进入目录
vim /etc/hosts
(2)加入如下内容
192.168.88.101 node1
192.168.88.102 node2
192.168.88.103 node3
8、为root用户创建ssh免密登录配置
(1)配置
(2)生成密钥
输入如下语句,一路回车即可:
ssh-keygen -t rsa -b 4096
(3)验证
(4)授权免密登录
在node1下执行如下语句,这里以node1中执行为例
·node1到node1免密登录
ssh-copy-id node1
·node1到node2免密登录
ssh-copy-id node2
·node1到node3免密登录
ssh-copy-id node3
9、为普通用户创建ssh免密登录
(1)为三台虚拟机创建hadoop用户
adduser:会自动为创建的用户指定主目录、系统shell版本,会在创建时输入用户密码。
useradd:需要使用参数选项指定上述基本设置,如果不使用任何参数,则创建的用户无密码、无主目录、没有指定shell版本。这里强烈建议使用adduser,否则会在生成密钥时,出现“文件不存在报错”
adduser hadoop
(2)将三台虚拟机切换到hadoop用户
su hadoop
(3)生成密钥
一直回车键即可,记着,三台虚拟机都要再生成一次密钥
ssh-keygen -t rsa -b 4096
(4)授权免密登录
这里请参考8、(4)进行操作
10、配置java的JDK
(1)创建目录
(2)上传文件和解压
安装rz,上传压缩包
解压文件
tar -zxvf jdk-8u391-linux-x64.tar.gz -C /export/server/
验证
(3)创建软连接
ln -s /export/server/jdk1.8.0_391 jdk
(4)修改配置文件
vim /etc/profile
在配置文件中加入:
export JAVA_HOME=/export/server/jdk
export PATH=$PATH:$JAVA_HOME/bin
刷新
source /etc/profile
验证:
(5)删除操作系统自带的java
rm -f /usr/bin/java
(6)将刚刚下载java软连接到usr的bin文件中
ln -s /export/server/jdk/bin/java /usr/bin/java
验证
11、关闭防火墙和SELinux
(1)下载防火墙
apt install firewalld
(2)关闭防火墙
systemctl stop firewalld
systemctl disable firewalld
(3)关闭selinux
在安装selinux之后,输入如下,进入配置文件进行修改
vim /etc/selinux/config
将文件第七行进行如上修改即可
12、修改时区
(1)安装ntp
apt install ntp
(2)更新时区
rm -f /etc/localtime;sudo ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
(3)同步时间
ntpdate -u ntp.aliyun.com
(4)启动ntp
systemctl status ntp
systemctl enable ntp #开机自启
(5)验证是否开机自启动
yang@node1:~$ systemctl is-enabled ntp
enabled