虚拟机网络配置
静态IP的设置及主机名到IP的映射
一、打开虚拟机的设置页面,设置虚拟机桥接模式如图:选择桥接模式(复制物理网络连接可选)
二、桥接模式配置VMware虚拟机网络
1 查看宿主机网络信息:
ipconfig /all
2. 配置CentOS7 ,将主机中对应的信息填入下面对应的位置,静态ip,子网掩码, 默认网关, DNS
vi /etc/sysconfig/network-scripts/ifcfg-eno33
说明: ifcfg-eno33文件每个人可能不同
TYPE=Ethernet
BOOTPROTO=static #修改成static
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
NAME=eno33
UUID=bf5337ab-c044-4af7-9143-12da0d493b89
DEVICE=eno16777736
ONBOOT=yes #修改成yes
PEERDNS=yes
PEERROUTES=yes
IPV6_PEERDNS=yes
IPV6_PEERROUTES=yes
IPADDR=192.168.1.200 # 自定义虚拟机的ip地址(主机是192.168.0.107),必须与主机在同一网段
NETMASK=255.255.255.0 #设置子网掩码,跟宿主一样
GETWAY=192.168.1.1 #默认网关,跟宿主一样
ip地址:设置和宿主机同网段ip
NETMASK:子网掩码和宿主机相同
GATEWAY: 默认网关和宿主机相同
3. 添加网关地址
vi /etc/sysconfig/network
内容如下:
NETWORKING=yes
HOSTNAME=master #名字随便了
GATEWAY=192.168.1.1 #默认网关和宿主机相同
4 重启network
service network restart
5 无法ping通上网,添加如下命令
nmcli con mod ens33 ipv4.dns "114.114.114.114 8.8.8.8"
nmcli con up ens33
systemctl restart network.service
至此,虚拟机的静态IP和上网配置好了
6 主机名到IP的映射
vi /etc/hostname
删除文件中原有内容,添加内容主机名:Master,ESC然后:wq保存退出
使用 vi 编辑器打开 /etc/hosts 文件
vi /etc/hosts
在文件尾部添加内容,格式:IP地址 主机名(中间用空格分隔),保存退出
192.168.1.200 Master
设置完成后,重启网路服务
systemctl restart network
ping master如果ping通即成功。
完成上述配置后,想要无脑复制粘贴配置文档
下面链接有配置文档及附有hadoop,zookeeper,hbase和hugegraph的压缩包
下载地址
三、关闭防火墙及ssh免密登陆
1、首先在每个机器上执行
systemctl stop firewalld.service//关闭防火墙
systemctl disable firewalld.service //设置禁止防火墙开机启动,如果不关闭会导致slave监听不到端口
ssh-keygen -t rsa
一直按回车默认就好
2、将公钥导入到认证文件中
将三个机器上id_rsa.pub的内容合并起来放在authorized_keys,可以用命令按下面的步骤来,也可以分别将三个机器的公钥拷贝出来放在一个文件里,之后分别复制到各自机器的authorized_keys,我用的是下面的命令
2.1 在master上执行
cd ~/.ssh
cat id_rsa.pub>>authorized_keys
可以执行ssh master验证一下
如果不能免密登录,可能是文件权限不对,执行下面的命令,再验证一下
chmod 710 authorized_keys
然后将master的authorized_keys传到slave1上的.ssh目录下
scp -r authorized_keys root@slave1:~/.ssh
注意:这时候不要乱ssh,不注意会忘记将某个主机的公钥没传递过来!!!
2.2 在slave1上执行
cd ~/.ssh
cat id_rsa.pub>>authorized_keys
scp -r authorized_keys root@slave2:~/.ssh
这一步实际是将salve1的id_rsa.pub和master传过来的authorized_keys里的内容合并起来存到authorized_keys,然后将authorized_keys传到slave2机器上
2.3 在slave2上执行
cd ~/.ssh
cat id_rsa.pub>>authorized_keys
scp -r authorized_keys root@master:~/.ssh
scp -r authorized_keys root@slave1:~/.ssh
这一步实际是将salve2的id_rsa.pub和slave1传过来的authorized_keys里的内容合并起来存到authorized_keys,然后将authorized_keys传到master、slave1机器上。
到这里,每台机器上的authorized_keys都含有三台机器的公钥,在每台机器上验证一下是否可以免密ssh登录到三台机器上了。
ssh master
ssh slave1
ssh slave2
如果都不需要输入密码,就代表配置成功!