前言

之前一直使用flatdhcp方式,后来发现一个头疼的问题,就是一个环境中可能本身已经存在一个DHCP SERVER了,就会导致虚拟机偶尔分配到了外面的IP而无法使用,所以决定配置下flat网络看看效果

步骤

网卡配置

使用flatmanager,网桥就需要自己手动来配置了,
CENTOS7里用的那个NETWORK-MANAGER实在是烦人,所以我把它去掉了,还是用network吧,
[root@workserver ~]# systemctl stop NetworkManager.service
[root@workserver ~]# systemctl disable NetworkManager.service
[root@workserver ~]# systemctl start network

配置如下:
[root@host210 ~]# cat /etc/sysconfig/network-scripts/ifcfg-有线连接_2

HWADDR=0C:C4:7A:4B:85:24
TYPE=Ethernet
BOOTPROTO=none
IPADDR=10.1.81.210
PREFIX=22
GATEWAY=10.1.80.254
DNS1=211.167.230.100
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_PEERDNS=yes
IPV6_PEERROUTES=yes
IPV6_FAILURE_FATAL=no
NAME="有线连接 2"
UUID=8ae6846b-bf2e-42a0-8791-e606fa419861
ONBOOT=yes
BRIDGE=br100

br100配置

[root@host210 ~]# cat /etc/sysconfig/network-scripts/ifcfg-br100
DEVICE="br100"
BOOTPROTO="static"
IPADDR="10.1.81.210"
NETMASK="255.255.252.0"
DNS1="211.167.230.100"
HOSTNAME="host210.zero"
IPV6INIT="no"
NAME="br100"
NM_CONTROLLED="no"
ONBOOT="yes"
DELAY="0"
TYPE="Bridge"
GATEWAY="10.1.80.254"

修改nova.conf

network_manager=nova.network.manager.FlatManager
flat_injected=true
查资料发现有两种提供METADATA方式,通过drive或者METADATA SERVER,由于网络很烦人,所以用DRIVE方式吧
force_config_drive=always
injected_network_template=/usr/share/nova/interfaces.template

/usr/share/nova/interfaces.template内容如下:

{% for interface in interfaces %}
auto {{ interface.name }}
iface {{ interface.name }} inet static
  address {{ interface.address }}
  netmask {{ interface.netmask }}
  broadcast {{ interface.broadcast }}
  gateway {{ interface.gateway }}
  dns-nameservers {{ interface.dns }}
{% endfor %}

create network

nova network-create demo-net --bridge br100 --multi-host F   --fixed-range-v4 10.10.0.0/24 --allowed-start 10.10.0.4 --allowed-end 10.10.0.7 --gateway 10.10.0.254 --dns1 10.10.0.254

cloudbase 设置:

[DEFAULT]
username=Admin
groups=Administrators
config_drive_raw_hhd=true
config_drive_cdrom=true
config_drive_vfat=true
bsdtar_path=C:\Program Files\Cloudbase Solutions\Cloudbase-Init\bin\bsdtar.exe
mtools_path=C:\Program Files\Cloudbase Solutions\Cloudbase-Init\bin\
verbose=true
debug=true
logdir=C:\Program Files\Cloudbase Solutions\Cloudbase-Init\log\
logfile=cloudbase-init.log
default_log_levels=comtypes=INFO,suds=INFO,iso8601=WARN
logging_serial_port_settings=COM1,115200,N,8
mtu_use_dhcp_config=true
ntp_use_dhcp_config=true
metadata_services=cloudbaseinit.metadata.services.configdrive.ConfigDriveService
plugins=cloudbaseinit.plugins.common.mtu.MTUPlugin,
        cloudbaseinit.plugins.common.sethostname.SetHostNamePlugin,
    cloudbaseinit.plugins.common.networkconfig.NetworkConfigPlugin

local_scripts_path=C:\Program Files\Cloudbase Solutions\Cloudbase-Init\LocalScripts\
allow_reboot=false

效果

重新建虚拟机,看到了驱动盘
这里写图片描述
打开可以看到信息
这里写图片描述
打开metadata信息

    "uuid": "d2970089-b06c-4382-8a83-534878e691ee", "availability_zone": "nova", "hostname": "w3.novalocal", "launch_index": 0, "network_config": {"content_path": "/content/0000", "name": "network_config"}, "name": "W3"}

打开content/0000有网络信息

但是又发现cloudbase似乎不是很稳定,有时候能设置网络成功,有时候不成功,搞不清楚为什么,还需要继续研究

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐