Openstack组件部署 — Overview和前期环境准备
Openstack组建部署 — Environment of Controller Node
Openstack组件部署 — Keystone功能介绍与认证实现流程
Openstack组件部署 — Keystone Install & Create service entity and API endpoints
Openstack组件部署 — keystone(domain, projects, users, and roles)
Openstack组件实现原理 — Keystone认证功能
Openstack组建部署 — Glance Install
Openstack组件实现原理 — Glance架构(V1/V2)
Openstack组件部署 — Nova overview
Openstack组件部署 — Nova_安装和配置Controller Node
Openstack组件部署 — Nova_Install and configure a compute node
Openstack组件实现原理 — Nova 体系结构
Openstack组件部署 — Netwotking service组件介绍与网络基本概念
Openstack Neutron的特性:
在配置OpenStack Networking service之前,需要在Controller Node上创建一个neutron数据库,service credentials(服务凭证)和API Endpoints。
《UPDATE》2016/08/13
以 root 用户身份登陆到数据库:
mysql -u root -pfanguiju
创建neutron
数据库:
MariaDB [(none)]> CREATE DATABASE neutron;
对neutron
数据库授予恰当的访问权限:
创建数据库用户neutron,并授予neutron用户对neutron数据库的完全控制权限。
MariaDB [(none)]> GRANT ALL PRIVILEGES ON neutron.* TO 'neutron'@'localhost' IDENTIFIED BY 'fanguiju';
MariaDB [(none)]> GRANT ALL PRIVILEGES ON neutron.* TO 'neutron'@'%' IDENTIFIED BY 'fanguiju';
退出数据库
在Keystone认证服务中创建Neutron的认证信息。
Source the admin credentials to gain access to admin-only CLI commands
[root@controller ~]# source admin-openrc
创建neutron
用户:
[root@controller ~]# openstack user create --domain default --password-prompt neutron
User Password:
Repeat User Password:
+-----------+----------------------------------+
| Field | Value |
+-----------+----------------------------------+
| domain_id | 011fbf8c04f1479ab1a4e49b019b22d1 |
| enabled | True |
| id | af866a410eea43be9cce09c713c472f3 |
| name | neutron |
+-----------+----------------------------------+
添加admin
角色到serivce
Project下的neutron
用户:
openstack role add --project service --user neutron admin
注:此命令执行后没有Output
创建neutron
服务实体:
服务实体会保存到Keystone的服务目录中。
[root@controller ~]# openstack service create --name neutron --description "OpenStack Networking" network
+-------------+----------------------------------+
| Field | Value |
+-------------+----------------------------------+
| description | OpenStack Networking |
| enabled | True |
| id | 6d7e168e87b3462594b7146365bb24e6 |
| name | neutron |
| type | network |
+-------------+----------------------------------+
API Endpoints记录了服务自身的URL,是其他服务寻找并访问到自身服务的路径。
[root@controller ~]# openstack endpoint create --region RegionOne network public http://controller.jmilk.com:9696
+--------------+----------------------------------+
| Field | Value |
+--------------+----------------------------------+
| enabled | True |
| id | 409e4b571aff45a0b12b6ca528a6a9d7 |
| interface | public |
| region | RegionOne |
| region_id | RegionOne |
| service_id | 6d7e168e87b3462594b7146365bb24e6 |
| service_name | neutron |
| service_type | network |
| url | http://controller:9696 |
+--------------+----------------------------------+
[root@controller ~]# openstack endpoint create --region RegionOne network internal http://controller.jmilk.com:9696
+--------------+----------------------------------+
| Field | Value |
+--------------+----------------------------------+
| enabled | True |
| id | 0be147b09f26404792fffc7683dd98d3 |
| interface | internal |
| region | RegionOne |
| region_id | RegionOne |
| service_id | 6d7e168e87b3462594b7146365bb24e6 |
| service_name | neutron |
| service_type | network |
| url | http://controller:9696 |
+--------------+----------------------------------+
[root@controller ~]# openstack endpoint create --region RegionOne network admin http://controller.jmilk.com:9696
+--------------+----------------------------------+
| Field | Value |
+--------------+----------------------------------+
| enabled | True |
| id | ebc9e373eba9414bbbfd4fb7d7579b96 |
| interface | admin |
| region | RegionOne |
| region_id | RegionOne |
| service_id | 6d7e168e87b3462594b7146365bb24e6 |
| service_name | neutron |
| service_type | network |
| url | http://controller:9696 |
+--------------+----------------------------------+
网络拓扑示例
我们可以选择使用上面图中表示的网络拓扑。这跟之前部署中使用的网络拓扑有所出入,为了节省计算机资源(太卡了 :( !!!) ,所以我们可以考虑将Neutron Node集成到Controller Node中。当然如果这样的话,我们需要多Controller Node的网络设备做一些调整,例如:增加一块连接到公网的网卡,和修改hostname <==> IP的解析。
Openstack提供了两种网络服务选项:
admin
用户或者其它特权用户可以管理提供者网络。demo
或非特权用也可以管理自服务网络,包括管理路由器。路由器能够实现自服务网络和提供者网络之间的互通。同时,浮动IP地址实现了从Internet外部网络访问虚拟机实例的功能。yum install openstack-neutron openstack-neutron-ml2 openstack-neutron-linuxbridge python-neutronclient ebtables ipset -y
编辑/etc/neutron/neutron.conf
文件:
vim /etc/neutron/neutron.conf
[database]
部分,配置Neutron的数据库访问[database]
connection = mysql://neutron:[email protected]/neutron
[DEFAULT]
部分,启用Layer 2 (ML2)插件模块、路由服务、重叠IP地址功能:[DEFAULT]
core_plugin = ml2
service_plugins = router
allow_overlapping_ips = True
[DEFAULT]
和 [oslo_messaging_rabbit]
部分,配置RabbitMQ消息队列访问:[DEFAULT]
rpc_backend = rabbit
[oslo_messaging_rabbit]
rabbit_host = controller.jmilk.com
rabbit_userid = openstack
rabbit_password = fanguiju
注意:配置选项rabbit_host
的参数值必须能够解析成Controller Node的IP。
[DEFAULT]
和[keystone_authtoken]
部分,配置Keystone认证服务访问:《UPDATE》2016/08/13
[DEFAULT]
auth_strategy = keystone
[keystone_authtoken]
auth_uri = http://controller.jmilk.com:5000
auth_url = http://controller.jmilk.com:35357
memcached_servers = controller.jmilk.com:11211
auth_type = password
project_domain_name = default
user_domain_name = default
project_name = service
username = neutron
password = fanguiju
注意:在[keystone_authtoken]配置节点中注释或者删除其他选项
[DEFAULT]
和[nova]
部分,配置当网络拓扑结构发生变化时通知Compute Service:[DEFAULT]
notify_nova_on_port_status_changes = True
notify_nova_on_port_data_changes = True
nova_url = http://controller.jmilk.com:8774/v2
[nova]
auth_url = http://controller.jmilk.com:35357
auth_plugin = password
project_domain_id = default
user_domain_id = default
region_name = RegionOne
project_name = service
username = nova
password = fanguiju
[oslo_concurrency]
部分,配置并发锁路径:[oslo_concurrency]
lock_path = /var/lib/neutron/tmp
[DEFAULT]
部分启用详细日志:[DEFAULT]
verbose = True
ML2插件使用Linux桥接机制为虚拟机实例创建layer-2(桥接/交换)虚拟网络基础设施。
编辑/etc/neutron/plugins/ml2/ml2_conf.ini
文件
vim /etc/neutron/plugins/ml2/ml2_conf.ini
[ml2]
部分,启用Flat,VLAN和VXLAN网络 :[ml2]
type_drivers = flat,vlan,vxlan
[ml2]
部分,启用VXLAN项目(Private私有)网络:[ml2]
tenant_network_types = vxlan
[ml2]
部分,启用Linux bridge(桥接)和layer-2 population mechanisms:[ml2]
mechanism_drivers = linuxbridge,l2population
注意:Linux bridge代理只支持VXLAN网络。
[ml2]
部分,启用端口安全扩展驱动:[ml2]
extension_drivers = port_security
[ml2_type_flat]
部分,配置Public Flat提供网络:[ml2_type_flat]
flat_networks = provider
[ml2_type_vxlan]
部分,配置VXLAN网络隧道标识范围:[ml2_type_vxlan]
vni_ranges = 1:1000
[securitygroup]
部分,启用ipset增加安全组的方便性:[securitygroup]
enable_ipset = True
Linux桥接代理为虚拟机实例创建包括Private私有网络的VXLAN隧道和处理安全组的layer-2(桥接/交换)虚拟网络设施。
编辑/etc/neutron/plugins/ml2/linuxbridge_agent.ini
文件
vim /etc/neutron/plugins/ml2/linuxbridge_agent.ini
[linux_bridge]
部分,映射Public公共虚拟网络到公共物理网络接口:[linux_bridge]
physical_interface_mappings = provider:PUBLIC_INTERFACE_NAME
Replace PROVIDER_INTERFACE_NAME
with the name of the underlying provider physical network interface
将PUBLIC_INTERFACE_NAME
替换为物理公共网络接口(连接到外网的物理网卡)。
Example:
执行ifconfig
查看连接到外网的物理网卡,如果在VMWare的环境中没有设定这一张网卡,可以直接添加一张桥接的网卡。文中实验使用了eth1
作为连接到外网的网卡。
[linux_bridge]
physical_interface_mappings = provider:eth1
[vxlan]
部分,启用VXLAN覆盖网络功能,配置处理覆盖网络(handles overlay networks)的物理网络接口的IP地址,并启用layer-2。[vxlan]
enable_vxlan = True
local_ip = OVERLAY_INTERFACE_IP_ADDRESS
l2_population = True
Note:
Replace OVERLAY_INTERFACE_IP_ADDRESS
with the IP address of the underlying physical network interface that handles overlay networks. The example architecture uses the management interface to tunnel traffic to the other nodes. Therefore, replace OVERLAY_INTERFACE_IP_ADDRESS
with each node’s own management IP address.
Example:
[vxlan]
enable_vxlan = True
local_ip = 172.16.0.10
l2_population = True
192.168.1.107为物理网卡eth1的IP。
[agent]
部分,启用ARP欺骗防护:[agent]
prevent_arp_spoofing = True
[securitygroup]
部分,启用安全组并配置Linux bridge iptables防火墙驱动:[securitygroup]
enable_security_group = True
firewall_driver = neutron.agent.linux.iptables_firewall.IptablesFirewallDriver
The Layer-3 (L3) agent provides routing and NAT services for virtual networks.
Layer-3(L3)代理提供了路由功能和虚拟网络的NAT service(网络地址转换)。
编辑 /etc/neutron/l3_agent.ini 文件
vim /etc/neutron/l3_agent.ini
[DEFAULT]
部分,配置Linux桥接网络驱动和外部网络桥接[DEFAULT]
interface_driver = neutron.agent.linux.interface.BridgeInterfaceDriver
external_network_bridge =
注意:external_network_bridge
选项缺少参数值,这样就可以在一个代理上启用多个外部网络。
[DEFAULT]
部分启用详细日志[DEFAULT]
verbose = True
The DHCP agent provides DHCP services for virtual networks.
DHCP代理为虚拟网络提供了DHCP service。
编辑/etc/neutron/dhcp_agent.ini
文件
vim /etc/neutron/dhcp_agent.ini
[DEFAULT]
部分,配置Linux桥接网卡(interface)驱动,Dnsmasq DHCP
驱动并启用隔离元数据功能,这样在公共网络上的虚拟机实例就可以通过网络访问元数据:[DEFAULT]
interface_driver = neutron.agent.linux.interface.BridgeInterfaceDriver
dhcp_driver = neutron.agent.linux.dhcp.Dnsmasq
enable_isolated_metadata = True
[DEFAULT]
部分启用详细日志[DEFAULT]
verbose = True
[DEFAULT]
部分,启用 dnsmasq 配置文件:[DEFAULT]
dnsmasq_config_file = /etc/neutron/dnsmasq-neutron.conf
创建并编辑 /etc/neutron/dnsmasq-neutron.conf 文件启用DHCP MTU选项 (26) 并配置为 1450 bytes:
vim /etc/neutron/dnsmasq-neutron.conf
dhcp-option-force=26,1450
The metadata agent provides configuration information such as credentials to instances.
元数据代理提供了例如虚拟机凭证之类的配置信息
编辑/etc/neutron/metadata_agent.ini
文件
vim /etc/neutron/metadata_agent.ini
[DEFAULT]
部分,配置元数据主机[DEFAULT]
nova_metadata_ip = controller.jmilk.com
[DEFAULT]
部分,配置元数据代理共享密码:[DEFAULT]
metadata_proxy_shared_secret = fanguiju
[DEFAULT]
部分启用详细日志[DEFAULT]
verbose = True
编辑/etc/nova/nova.conf
文件
vim /etc/nova/nova.conf
- 在[neutron]
部分,配置访问参数,启用元数据代理和配置密码:
[neutron]
url = http://controller.jmilk.com:9696
auth_url = http://controller.jmilk.com:35357
auth_plugin = password
project_domain_id = default
user_domain_id = default
region_name = RegionOne
project_name = service
username = neutron
password = fanguiju
service_metadata_proxy = True
metadata_proxy_shared_secret = fanguiju
注意:[neutron]:metadata_proxy_shared_secret
== [DEFAULT]:metadata_proxy_shared_secret
Step1. 网络服务初始化脚本需要一个超链接/etc/neutron/plugin.ini
指向ML2插件配置文件/etc/neutron/plugins/ml2/ml2_conf.ini
。如果超链接不存在,使用下面的命令创建它:
ln -s /etc/neutron/plugins/ml2/ml2_conf.ini /etc/neutron/plugin.ini
Step2. 同步数据库
[root@controller ~]# su -s /bin/sh -c "neutron-db-manage --config-file /etc/neutron/neutron.conf \
> --config-file /etc/neutron/plugins/ml2/ml2_conf.ini upgrade head" neutron
No handlers could be found for logger "oslo_config.cfg"
INFO [alembic.runtime.migration] Context impl MySQLImpl.
INFO [alembic.runtime.migration] Will assume non-transactional DDL.
Running upgrade for neutron ...
INFO [alembic.runtime.migration] Context impl MySQLImpl.
INFO [alembic.runtime.migration] Will assume non-transactional DDL.
INFO [alembic.runtime.migration] Running upgrade -> kilo, kilo_initial
INFO [alembic.runtime.migration] Running upgrade kilo -> 354db87e3225, nsxv_vdr_metadata.py
INFO [alembic.runtime.migration] Running upgrade 354db87e3225 -> 599c6a226151, neutrodb_ipam
INFO [alembic.runtime.migration] Running upgrade 599c6a226151 -> 52c5312f6baf, Initial operations in support of address scopes
INFO [alembic.runtime.migration] Running upgrade 52c5312f6baf -> 313373c0ffee, Flavor framework
INFO [alembic.runtime.migration] Running upgrade 313373c0ffee -> 8675309a5c4f, network_rbac
INFO [alembic.runtime.migration] Running upgrade 8675309a5c4f -> 45f955889773, quota_usage
INFO [alembic.runtime.migration] Running upgrade 45f955889773 -> 26c371498592, subnetpool hash
INFO [alembic.runtime.migration] Running upgrade 26c371498592 -> 1c844d1677f7, add order to dnsnameservers
INFO [alembic.runtime.migration] Running upgrade 1c844d1677f7 -> 1b4c6e320f79, address scope support in subnetpool
INFO [alembic.runtime.migration] Running upgrade 1b4c6e320f79 -> 48153cb5f051, qos db changes
INFO [alembic.runtime.migration] Running upgrade 48153cb5f051 -> 9859ac9c136, quota_reservations
INFO [alembic.runtime.migration] Running upgrade 9859ac9c136 -> 34af2b5c5a59, Add dns_name to Port
INFO [alembic.runtime.migration] Running upgrade 34af2b5c5a59 -> 59cb5b6cf4d, Add availability zone
INFO [alembic.runtime.migration] Running upgrade 59cb5b6cf4d -> 13cfb89f881a, add is_default to subnetpool
INFO [alembic.runtime.migration] Running upgrade 13cfb89f881a -> 32e5974ada25, Add standard attribute table
INFO [alembic.runtime.migration] Running upgrade 32e5974ada25 -> ec7fcfbf72ee, Add network availability zone
INFO [alembic.runtime.migration] Running upgrade ec7fcfbf72ee -> dce3ec7a25c9, Add router availability zone
INFO [alembic.runtime.migration] Running upgrade dce3ec7a25c9 -> c3a73f615e4, Add ip_version to AddressScope
INFO [alembic.runtime.migration] Running upgrade c3a73f615e4 -> 659bf3d90664, Add tables and attributes to support external DNS integration
INFO [alembic.runtime.migration] Running upgrade 659bf3d90664 -> 1df244e556f5, add_unique_ha_router_agent_port_bindings
INFO [alembic.runtime.migration] Running upgrade 1df244e556f5 -> 19f26505c74f, Auto Allocated Topology - aka Get-Me-A-Network
INFO [alembic.runtime.migration] Running upgrade 19f26505c74f -> 15be73214821, add dynamic routing model data
INFO [alembic.runtime.migration] Running upgrade 15be73214821 -> b4caf27aae4, add_bgp_dragent_model_data
INFO [alembic.runtime.migration] Running upgrade b4caf27aae4 -> 15e43b934f81, rbac_qos_policy
INFO [alembic.runtime.migration] Running upgrade 15e43b934f81 -> 31ed664953e6, Add resource_versions row to agent table
INFO [alembic.runtime.migration] Running upgrade 31ed664953e6 -> 2f9e956e7532, tag support
INFO [alembic.runtime.migration] Running upgrade 2f9e956e7532 -> 3894bccad37f, add_timestamp_to_base_resources
INFO [alembic.runtime.migration] Running upgrade 3894bccad37f -> 0e66c5227a8a, Add desc to standard attr table
INFO [alembic.runtime.migration] Running upgrade kilo -> 30018084ec99, Initial no-op Liberty contract rule.
INFO [alembic.runtime.migration] Running upgrade 30018084ec99, 8675309a5c4f -> 4ffceebfada, network_rbac
INFO [alembic.runtime.migration] Running upgrade 4ffceebfada -> 5498d17be016, Drop legacy OVS and LB plugin tables
INFO [alembic.runtime.migration] Running upgrade 5498d17be016 -> 2a16083502f3, Metaplugin removal
INFO [alembic.runtime.migration] Running upgrade 2a16083502f3 -> 2e5352a0ad4d, Add missing foreign keys
INFO [alembic.runtime.migration] Running upgrade 2e5352a0ad4d -> 11926bcfe72d, add geneve ml2 type driver
INFO [alembic.runtime.migration] Running upgrade 11926bcfe72d -> 4af11ca47297, Drop cisco monolithic tables
INFO [alembic.runtime.migration] Running upgrade 4af11ca47297 -> 1b294093239c, Drop embrane plugin table
INFO [alembic.runtime.migration] Running upgrade 1b294093239c, 32e5974ada25 -> 8a6d8bdae39, standardattributes migration
INFO [alembic.runtime.migration] Running upgrade 8a6d8bdae39 -> 2b4c2465d44b, DVR sheduling refactoring
INFO [alembic.runtime.migration] Running upgrade 2b4c2465d44b -> e3278ee65050, Drop NEC plugin tables
INFO [alembic.runtime.migration] Running upgrade e3278ee65050, 15e43b934f81 -> c6c112992c9, rbac_qos_policy
INFO [alembic.runtime.migration] Running upgrade c6c112992c9 -> 5ffceebfada, network_rbac_external
INFO [alembic.runtime.migration] Running upgrade 5ffceebfada, 0e66c5227a8a -> 4ffceebfcdc, standard_desc
OK
再一次确定neutron数据库创建成功:
[root@controller ~]# mysql -u neutron -pfanguiju
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MariaDB connection id is 50
Server version: 10.1.12-MariaDB MariaDB Server
Copyright (c) 2000, 2016, Oracle, MariaDB Corporation Ab and others.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
MariaDB [(none)]> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| neutron |
+--------------------+
2 rows in set (0.00 sec)
MariaDB [(none)]> use neutron;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A
Database changed
MariaDB [neutron]> show tables;
+-----------------------------------------+
| Tables_in_neutron |
+-----------------------------------------+
| address_scopes |
| agents |
| alembic_version |
| allowedaddresspairs |
| arista_provisioned_nets |
| arista_provisioned_tenants |
| arista_provisioned_vms |
| auto_allocated_topologies |
| bgp_peers |
| bgp_speaker_dragent_bindings |
| bgp_speaker_network_bindings |
| bgp_speaker_peer_bindings |
| bgp_speakers |
| brocadenetworks |
| brocadeports |
| cisco_csr_identifier_map |
| cisco_hosting_devices |
| cisco_ml2_apic_contracts |
| cisco_ml2_apic_host_links |
| cisco_ml2_apic_names |
| cisco_ml2_n1kv_network_bindings |
| cisco_ml2_n1kv_network_profiles |
| cisco_ml2_n1kv_policy_profiles |
| cisco_ml2_n1kv_port_bindings |
| cisco_ml2_n1kv_profile_bindings |
| cisco_ml2_n1kv_vlan_allocations |
| cisco_ml2_n1kv_vxlan_allocations |
| cisco_ml2_nexus_nve |
| cisco_ml2_nexusport_bindings |
| cisco_port_mappings |
| cisco_router_mappings |
| consistencyhashes |
| default_security_group |
| dnsnameservers |
| dvr_host_macs |
| externalnetworks |
| extradhcpopts |
| firewall_policies |
| firewall_rules |
| firewalls |
| flavors |
| flavorserviceprofilebindings |
| floatingipdnses |
| floatingips |
| ha_router_agent_port_bindings |
| ha_router_networks |
| ha_router_vrid_allocations |
| healthmonitors |
| ikepolicies |
| ipallocationpools |
| ipallocations |
| ipamallocationpools |
| ipamallocations |
| ipamavailabilityranges |
| ipamsubnets |
| ipavailabilityranges |
| ipsec_site_connections |
| ipsecpeercidrs |
| ipsecpolicies |
| lsn |
| lsn_port |
| maclearningstates |
| members |
| meteringlabelrules |
| meteringlabels |
| ml2_brocadenetworks |
| ml2_brocadeports |
| ml2_dvr_port_bindings |
| ml2_flat_allocations |
| ml2_geneve_allocations |
| ml2_geneve_endpoints |
| ml2_gre_allocations |
| ml2_gre_endpoints |
| ml2_network_segments |
| ml2_nexus_vxlan_allocations |
| ml2_nexus_vxlan_mcast_groups |
| ml2_port_binding_levels |
| ml2_port_bindings |
| ml2_ucsm_port_profiles |
| ml2_vlan_allocations |
| ml2_vxlan_allocations |
| ml2_vxlan_endpoints |
| multi_provider_networks |
| networkconnections |
| networkdhcpagentbindings |
| networkdnsdomains |
| networkgatewaydevicereferences |
| networkgatewaydevices |
| networkgateways |
| networkqueuemappings |
| networkrbacs |
| networks |
| networksecuritybindings |
| neutron_nsx_network_mappings |
| neutron_nsx_port_mappings |
| neutron_nsx_router_mappings |
| neutron_nsx_security_group_mappings |
| nexthops |
| nsxv_edge_dhcp_static_bindings |
| nsxv_edge_vnic_bindings |
| nsxv_firewall_rule_bindings |
| nsxv_internal_edges |
| nsxv_internal_networks |
| nsxv_port_index_mappings |
| nsxv_port_vnic_mappings |
| nsxv_router_bindings |
| nsxv_router_ext_attributes |
| nsxv_rule_mappings |
| nsxv_security_group_section_mappings |
| nsxv_spoofguard_policy_network_mappings |
| nsxv_tz_network_bindings |
| nsxv_vdr_dhcp_bindings |
| nuage_net_partition_router_mapping |
| nuage_net_partitions |
| nuage_provider_net_bindings |
| nuage_subnet_l2dom_mapping |
| poolloadbalanceragentbindings |
| poolmonitorassociations |
| pools |
| poolstatisticss |
| portbindingports |
| portdnses |
| portqueuemappings |
| ports |
| portsecuritybindings |
| providerresourceassociations |
| qos_bandwidth_limit_rules |
| qos_network_policy_bindings |
| qos_policies |
| qos_port_policy_bindings |
| qospolicyrbacs |
| qosqueues |
| quotas |
| quotausages |
| reservations |
| resourcedeltas |
| router_extra_attributes |
| routerl3agentbindings |
| routerports |
| routerroutes |
| routerrules |
| routers |
| securitygroupportbindings |
| securitygrouprules |
| securitygroups |
| serviceprofiles |
| sessionpersistences |
| standardattributes |
| subnetpoolprefixes |
| subnetpools |
| subnetroutes |
| subnets |
| tags |
| tz_network_bindings |
| vcns_router_bindings |
| vips |
| services |
+-----------------------------------------+
157 rows in set (0.00 sec)
Step3. 重启nova-api service:
systemctl restart openstack-nova-api.service
Step4. 启动Networking service并配置开机自启动
systemctl enable neutron-server.service \
neutron-linuxbridge-agent.service neutron-dhcp-agent.service \
neutron-metadata-agent.service
systemctl start neutron-server.service \
neutron-linuxbridge-agent.service neutron-dhcp-agent.service \
neutron-metadata-agent.service
systemctl enable neutron-l3-agent.service
systemctl start neutron-l3-agent.service