暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

vmware虚拟机配置RAC环境:一块网卡如何配置多个ip?

一森咖记 2019-07-30
2876

【前言】


今天一朋友问了一个问题:vmware环境创建了虚拟机,但只有一个网卡,目前只有一个ip地址(如下图)。为了模拟安装RAC,如何在不增加网卡的前提下,新增一个IP地址。


如下图目前服务器ip196.128.220.173,如何追加一个ip196.128.220.177


【解决方案】

 

这里先介绍下三个概念:物理网卡、子网卡、虚拟VLAN网卡。

eth0   eth0:1  eth0.1三者的关系对应于物理网卡、子网卡、虚拟VLAN网卡。

 

物理网卡:物理网卡这里指的是服务器上实际的网络接口设备,这里上图服务器上为单网卡,物理网卡对应网络接口为eno16777736。

 

子网卡:子网卡在这里并不是实际上的网络接口设备,但可作为网络接口在系统中出现,如eth0:1、eth1:2这种网络接口。它们必须要依赖于物理网卡,虽然可以与物理网卡的网络接口同时在系统中存在并使用不同的IP地址,而且也拥有自己的网络接口配置文件。当所依赖的物理网卡不启用时(Down状态),物理网卡所依附的子网卡也将不能提供网络服务。

 

虚拟VLAN网卡:虚拟VLAN网卡也不是实际上的网络接口设备,也可以作为网络接口在系统中出现,但是与子网卡不同的是,他们没有自己的配置文件。他们只是通过将物理网加入不同的VLAN而生成的VLAN虚拟网卡。如果将一个物理网卡通过vconfig命令添加到多个VLAN当中去的话,就会有多个VLAN虚拟网卡出现,其信息以及相关的VLAN信息都是保存在/proc/net/vlan/config这个临时文件中的,而没有独自的配置文件。它们的网络接口名是eth0.1eth1.2这种名字。

 

以下介绍如何使用ifconfig命令配置子网

 

1. 利用网卡配置静态ip地址(eno16777736为网卡信息

    #ifconfig eno16777736 192.168.220.173 netmask 255.255.255.0 up

     

      eno16777736                //服务器网卡信息
      192.168.220.173            //设置网卡的静态ip地址
      netmask 255.255.255.0 //ip地址的子网掩码
      up //表示立即激活该网卡


      划重点:

      每个服务器网卡信息不一定是eno16777736 ,实际情况应该以ifconfig命令和ip addr命令查看的为准。

       

      2. 动态设置网卡ip子网

        #ifconfig eno16777736:0  192.168.220.177 netmask 255.255.255.0 up
        #ifconfig eno16777736:0 192.168.220.178 netmask 255.255.255.0 up
        ......

        eno16777736:X      //虚拟网络接口,建立在网卡eno16777736上,取值范围0-255

        192.168.220.XXX      增加ip别名,可任意设置

         

        一个问题:

        如果这个时候停电,会有什么情况?实际情况是上述使用ifconfig 设置的子网ip会丢失。

        怎么办?


        解决方案:编写ip别名的网卡配置文件,永久落盘保存


        所有网卡的配置文件都保存在/etc/sysconfig/network-scripts目录中,一个网卡对应一个配置文件,见下图:


        文件ifcfg-eno16777736为本机网卡的配置文件,我们可以通过仿照这个文件的格式来编写其子网ip别名的配置文件ifcfg-eno16777736:0

        [root@ethanyang network-scripts]# cat ifcfg-eno16777736

        TYPE="Ethernet"

        #BOOTPROTO="DHCP"

        BOOTPROTO=none

        DNS1=192.168.220.2

        DEFROUTE="yes"

        IPV4_FAILURE_FATAL="no"

        IPV6INIT="yes"

        IPV6_AUTOCONF="yes"

        IPV6_DEFROUTE="yes"

        IPV6_FAILURE_FATAL="no"

        NAME="eno16777736"

        UUID="27901e50-a9da-4763-809b-cb6f7a772642"

        DEVICE="eno16777736"

        ONBOOT="yes"

        IPADDR=192.168.220.173

        PREFIX=24

        GATEWAY=192.168.220.2

        IPV6_PEERDNS=yes

        IPV6_PEERROUTES=yes


        复制网卡的配置文件ifcfg-eno16777736:0,注意下文标红处修改处内容

        [root@ethanyang network-scripts]# vi ifcfg-eno16777736:0

        TYPE="Ethernet"

        #BOOTPROTO="DHCP"

        BOOTPROTO=none

        DNS1=192.168.220.2

        DEFROUTE="yes"

        IPV4_FAILURE_FATAL="no"

        IPV6INIT="yes"

        IPV6_AUTOCONF="yes"

        IPV6_DEFROUTE="yes"

        IPV6_FAILURE_FATAL="no"

        NAME="eno16777736"

        UUID="27901e50-a9da-4763-809b-cb6f7a772642"

        DEVICE="eno16777736:0"

        ONBOOT="yes"

        IPADDR=192.168.220.177

        PREFIX=24

        GATEWAY=192.168.220.2

        IPV6_PEERDNS=yes

        IPV6_PEERROUTES=yes


        在ifcfg-eno16777736:0中修改标红部分内容后,重启网卡eno16777736

          [root@ethanyang network-scripts]# service network restart
          Restarting network (via systemctl): [ OK ]

          使用ip addr命令查看

          [root@ethanyang network-scripts]# ip a

          1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN qlen 1000

              link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00

              inet 127.0.0.1/8 scope host lo

                 valid_lft forever preferred_lft forever

              inet6 ::1/128 scope host

                 valid_lft forever preferred_lft forever

          2: eno16777736: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000

              link/ether 00:0c:29:68:5d:e8 brd ff:ff:ff:ff:ff:ff

              inet 192.168.220.173/24 brd 192.168.220.255 scope global eno16777736

                 valid_lft forever preferred_lft forever

              inet 192.168.220.177/24 brd 192.168.220.255 scope global secondary eno16777736:0

                 valid_lft forever preferred_lft forever

              inet6 fe80::20c:29ff:fe68:5de8/64 scope link

                 valid_lft forever preferred_lft forever


          上图标黄处看到起子网ip 192.168.220.177已经配置成功。


          至此,通过/etc/sysconfig/network-scripts下的配置文件永久添加子网ip的配置就完成了。



          【结语】

          1.   本文讲述了物理网卡、子网卡、虚拟VLAN网卡的概念。同时,实操了如何通过网卡配置文件的形式,此方式可永久落盘子网配置,重启服务器不会丢失子网;

          2.  使用场景; 可以在vmware中模拟子网,配置RAC的VIP和scan-ip;注意,本文建议在vmware中模拟子网段;实际生产如果配置RAC,不建议这么分配ip;且作者这里也不建议使用虚拟机配置RAC;

          3.  也可以使用动态方式配置实现应用的最简单的高可用性,如应用集群两台,通过动态配置的VIP对外提供服务,如主应用异常,可以直接在备应用服务器启动vip,减少业务中断时间。

           

          【参考】

          https://blog.csdn.net/libaineu2004/article/details/79213824

           

          如果大家觉得此文有帮助,欢迎关注个人微信微信;

          长按识别二维码或微信搜索“一森咖记”


          最后修改时间:2020-05-07 23:38:07
          文章转载自一森咖记,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

          评论