用于分布式系统部署的虚拟机系网络配置那点事儿

意识上传者
• 阅读 1742
日期作者版本备注
2020-04-25dingbinv1.0

1. 用于部署分布式系统的虚拟机网络配置方案

无论是工作还是学习过程中,我们个人计算机中总是不可避免地安装上虚拟机,例如Vmare-workstation。在windows 10 宿主机上安装centos 7 的vmware虚拟机是我们经常采用的一种解决方案。如果说windows 10 宿主机我们经常采用的网络连接方式是自动分配动态ip,那么宿主机上虚拟机我们最经常也是推荐的网络连接方式是:桥接模式:直接连接物理网络,如下图所示:
用于分布式系统部署的虚拟机系网络配置那点事儿

考虑到程序员使用虚拟机centos7系统的一种最常用场景即:部署分布式系统实践。比如zookeeper集群、es集群、pxc集群、etcd集群等等。该场景需要我们将centos7虚拟机系统网络连接方式设置为静态的固定IP,不能动态变化,而且如果宿主机是笔记本电脑被经常带来带去,虚拟机上系统如果是动态获取IP导致IP地址总是变化也不利于分布式系统工作。
综上所述,用于分布式系统部署的vmware虚拟机上centos7系统网络配置方案推荐为:

  • 1)桥接模式:直接连接物理网络;
  • 2)静态固定IP;

2. centos7上设置静态固定IP方法

centos7上设置静态固定IP,即static ip,仅需如下几步操作即可:

1) 切换到root用户
执行: su root,如下图所示:

用于分布式系统部署的虚拟机系网络配置那点事儿

2) 设置主机名
执行: vim /etc/hosts , 打开/etc/hosts文件修改为如下图所示:

用于分布式系统部署的虚拟机系网络配置那点事儿
上图设置了cent7ax/cent7bx/cent7cx3个host name和相应的static ip。

执行: vim /etc/hostname 打开/etc/hostname设置本机的hostname

用于分布式系统部署的虚拟机系网络配置那点事儿
上图所示设置了当前机器的hostname主机名为cent7ax。~~~~

3) 配置/etc/sysconfig/network
执行: vim /etc/sysconfig/network 修改为如下:

用于分布式系统部署的虚拟机系网络配置那点事儿
其中HOSTNAME填写上面设置好的本机的hostname,至于网关gateway填什么,可以参考宿主机的gateway值。windows 10 宿主机上查看gateway方法很简单:
windows键+r快捷键,在弹出的运行窗口中键入cmd,进入到dos命令行窗口,输入ipconfig,即可在输出信息中找出宿主机的网关gateway信息,如下图:
用于分布式系统部署的虚拟机系网络配置那点事儿
上图可见宿主机的网关Gateway是192.168.0.1,子网掩码NetMask是255.255.255.0。因此/etc/sysconfig/network以及后续的配置中涉及网关Gateway和子网掩码NetMask,都建议配置成与宿主机一样的值即可。

4) 配置 /etc/sysconfig/network-scripts/ifcfg-eth0
执行: ll /etc/sysconfig/network-scripts/ifcfg-*,列出所有的设备配置文件,如下图所示:

用于分布式系统部署的虚拟机系网络配置那点事儿

其中,ifcfg-lo是本地回环地址的配置文件,所有计算机都有,不用管它,只需要配置ifcfg-eth0即可。

执行: vim /etc/sysconfig/network-scripts/ifcfg-eth0,修改为如下:

用于分布式系统部署的虚拟机系网络配置那点事儿
上图中GATEWAY和NETMASK只需配置成与宿主机相同即可。
DNS服务器可以配置2个比较推荐用的,如本例中的2个值即可。
BOOTPROTO=static即表示采用静态static ip策略。IP地址IPADDR就是静态IP值,需配置成与/etc/hosts中的一致。

5) 重启network系统服务以刷新网络连接配置
执行: systemctl restart network,然后 ping www.baidu.com,如下图所示:

用于分布式系统部署的虚拟机系网络配置那点事儿
可见能正确ping通www.baidu.com,静态ip网络设置成功。

点赞
收藏
评论区
推荐文章
blmius blmius
3年前
MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1
文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s
Wesley13 Wesley13
3年前
java RSA算法的性能记录
环境JavaHotSpot(TM)64BitServerVM1.7.0\_05x86\_64加密<table<tr<td内容长度</td<tdkeySize</td<td耗时(微秒)</td</tr<tr<td32</td<td512</td<td87</td</tr<tr<td
Stella981 Stella981
3年前
Jira 使用手册
<tablestyle"width:100%;margin:200px0300px0;"<tr<thDate</th<thRevisionversion</th<thDescription</th<thauthor</th</tr<tr<td20180614</td<tdV1.0.0</td
Wesley13 Wesley13
3年前
VBox 启动虚拟机失败
在Vbox(5.0.8版本)启动Ubuntu的虚拟机时,遇到错误信息:NtCreateFile(\\Device\\VBoxDrvStub)failed:0xc000000034STATUS\_OBJECT\_NAME\_NOT\_FOUND(0retries) (rc101)Makesurethekern
Wesley13 Wesley13
3年前
2020软件工程作业03
<styletable{width:100%;/\表格宽度\/margin:auto;/\外边距\/emptycells:show;/\单元格无内容依旧绘制边框\/fontsize:18px;}table,th,td{border:2pxsolidpink;}li{fontsize:1
Stella981 Stella981
3年前
KVM调整cpu和内存
一.修改kvm虚拟机的配置1、virsheditcentos7找到“memory”和“vcpu”标签,将<namecentos7</name<uuid2220a6d1a36a4fbb8523e078b3dfe795</uuid
Wesley13 Wesley13
3年前
mysql设置时区
mysql设置时区mysql\_query("SETtime\_zone'8:00'")ordie('时区设置失败,请联系管理员!');中国在东8区所以加8方法二:selectcount(user\_id)asdevice,CONVERT\_TZ(FROM\_UNIXTIME(reg\_time),'08:00','0
Wesley13 Wesley13
3年前
Java 日期与时间
Java的日期Java没有内置的日期类,但可以导入java.time包,这个包中包含了许多类,可用于处理日期和时间。例如:<table<tbody<tr<thstyle"width:25%"Java类</th<thstyle"width:75%"描述</th</tr<tr<td<code
Wesley13 Wesley13
3年前
MySQL部分从库上面因为大量的临时表tmp_table造成慢查询
背景描述Time:20190124T00:08:14.70572408:00User@Host:@Id:Schema:sentrymetaLast_errno:0Killed:0Query_time:0.315758Lock_
Python进阶者 Python进阶者
1年前
Excel中这日期老是出来00:00:00,怎么用Pandas把这个去除
大家好,我是皮皮。一、前言前几天在Python白银交流群【上海新年人】问了一个Pandas数据筛选的问题。问题如下:这日期老是出来00:00:00,怎么把这个去除。二、实现过程后来【论草莓如何成为冻干莓】给了一个思路和代码如下:pd.toexcel之前把这
美凌格栋栋酱 美凌格栋栋酱
5个月前
Oracle 分组与拼接字符串同时使用
SELECTT.,ROWNUMIDFROM(SELECTT.EMPLID,T.NAME,T.BU,T.REALDEPART,T.FORMATDATE,SUM(T.S0)S0,MAX(UPDATETIME)CREATETIME,LISTAGG(TOCHAR(