上一篇:Ubuntu18.04下安装配置java环境(jdk8)(Hadoop之旅2)https://blog.csdn.net/qq_26373925/article/details/97413978
本文主要内容:
0.克隆虚拟机
1.配置ssh免密登录
- 之前我们已经在虚拟机(
master
)上配置好了java环境,现在开始将master
克隆为虚拟机node1
和node2
0.克隆虚拟机
将虚拟机关机,在vmware左侧库
中右击我们的master
虚拟机(vmware里的名字随便都行
),然后在管理
选项卡中找到克隆
选择创建完整克隆
设置名称(注:此处的虚拟机名称跟我们虚拟机的hostname没有半毛钱关系
),单击完成,然后喝个咖啡等着就行了
克隆好一台之后再克隆一台,这样我们就拥有了三台虚拟机
首先将三台虚拟机全部启动
- 在每台虚拟机上打开
Terminal
(控制台),输入hostname
,你会发现,三台机器的hostname
都是master
每台机器都不能重名,那么现在修改hostname
吧
修改每台机器上的hostname文件
sudo vi /etc/hostname
或 sudo gedit /etc/hostname
机器1本来就是:
master
,故不用修改
机器2修改为:node1
机器3修改为:node2
- 这并不会立即生效,需要重启机器,
sudo reboot
重启后可以直观的在控制台看到主机名发生了变化
0.1配置hosts及hostname
配置ssh前做这些准备
- 三台虚拟机都有不一样的ip,现在需要查询每台机器的ip地址
方法1、
安装net-tools
,sudo apt install net-tools
接着在控制台输入ifconfig -a
,找到第一个inet 192.168.x.xxx
,此乃本机的ip地址,将其记录
当然,
ubuntu
系统上也有更方便的查询方法、
- 在设置里找到网络,点一下齿轮按钮
找到IPv4地址
,这就是此虚拟机的ip地址(这张图片是我以前截的,所以ip跟之前用ifconfig
查的不一样↓)
修改每台机器上的hosts
文件
sudo vi /etc/hosts
或 sudo gedit /etc/hosts
将已经存在的127.0.1.1 master
删除,并在其后添加以下内容
192.168.1.110 master
192.168.1.111 node1
192.168.1.113 node2
也就是每台机器查询到的ip地址及对应的主机名
保存
1.配置ssh免密登录
这一步相当于让几台机器可以在不用密码的情况下相互访问,对于集群而言这是必须的
在
master
上生成公钥和密钥对
打开控制台,输入ssh-keygen -t rsa
,然后一路回车
将密钥加入到公钥中
输入cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
将公钥复制到
node1
、node2
在master
上分别执行
ssh-copy-id node1
ssh-copy-id node2
注:使用此命令前须保证
hosts
文件配置正确
遇到询问(yes/no)
时输入yes
并回车;遇到询问password
输入登录密码即可
成功后,将出现以下内容
Number of key(s) added: 1
Now try logging into the machine, with: "ssh 'node1'"
and check to make sure that only the key(s) you wanted were added.
成功配置一台机器,可以用ssh node1
来测试
- 出现
Welcome to Ubuntu 18.04.2 LTS (GNU/Linux 4.18.0-15-generic x86_64)
字样,表明你已从master
上登录到了node1
上
查询一下hostname
就可以直观的看到了,输入exit
可退出node1
,回到master
也可以测试node2
的链接,ssh node2
至此,免密登录配置成功
下一篇文章:Ubuntu18.04下安装配置hadoop-3.1.2完全分布式集群(Hadoop之旅4)
https://blog.csdn.net/qq_26373925/article/details/97415018