Openstack组件部署 — Networking service_安装并配置Controller Node

目录

前文列表

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。

完成下面的步骤以创建数据库

以 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';

退出数据库

创建service credentials服务凭证

在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 角色到serivceProject下的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                          |
+-------------+----------------------------------+

创建Neutron的API Endpoints

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提供了两种网络服务选项:

  • 网络选项1:提供者网络(Provider networks),是最简单的架构,只支持绑定虚拟机实例到Public公共网络。没有Self-service自服务网络,路由器和浮动IP地址。只有admin用户或者其它特权用户可以管理提供者网络。
  • 网络选项2:自服务网络(Self-service networks),选项2包含了选项1的功能,而且还能够提供3层网络服务,支持绑定虚拟机实例到自服务(Private私有)网络。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:fanguiju@controller.jmilk.com/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认证服务访问:
[DEFAULT]
auth_strategy = keystone

[keystone_authtoken]
auth_uri = http://controller.jmilk.com:5000
auth_url = http://controller.jmilk.com:35357
auth_plugin = password
project_domain_id = default
user_domain_id = 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

配置 Modular Layer 2 (ML2) 插件

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 = public
  • [ml2_type_vxlan] 部分,配置VXLAN网络隧道标识范围:
[ml2_type_vxlan]
vni_ranges = 1:1000
  • [securitygroup]部分,启用ipset增加安全组的方便性:
[securitygroup]
enable_ipset = True

配置Linux 桥接代理

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 = public: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 = public: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 = 192.168.1.107
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

配置layer-3代理

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

配置DHCP代理

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]
auth_uri = http://controller.jmilk.com:5000
auth_url = http://controller.jmilk.com:35357
auth_region = RegionOne
auth_plugin = password
project_domain_id = default
user_domain_id = default
project_name = service
username = neutron
password = fanguiju
  • [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                                    |
| vpnservices                             |
+-----------------------------------------+
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

本页内容版权归属为原作者,如有侵犯您的权益,请通知我们删除。
目录 目录 前文列表 安装组件 配置通用组件 配置自服务网络选项 配置Linux 桥接代理 配置Nova使用网络 完成安装 验证操作Execute following commands on Controller Node 前文列表 Openstack组件部署 — Overview和前期环境准备 Openstack组建部署 — Environment of Controller Node Openstack组件部署 — Keystone功能介绍与认证实现流程 Openstack组件部署 — Keyston
mahout之推荐系统源码笔记(2) —相似度计算之RowSimilarityJob 本笔记承接笔记一。 在笔记1中我们分析了PreparePreferenceMatrixJob的源码,该job对输入数据进行了一定的预处理准备工作。接下来mahout使用RowSimilarityJob对数据user-item集的相似度进行计算,得到每个物品关于其他所有物品的相似度矩阵。 首先我们同样看RecommenderJob(org.apache.mahout.cf.taste.hadoop.item),可以到执行R
mahout之推荐系统源码笔记(1) —预处理之PreparePreferenceMatrixJob hadoop篇: 因为时间原因首先更新分布式hadoop上的推荐系统源码的阅读。 本笔记基于 apache-mahout-distribution-0.12.2-src 。 首先给出mahout中taste推荐系统的代码结构: taste common eval hadoop impl model neighborhood recommender similarity model neighborhood
作者: 赵怡 一、Neutron Kilo 版和Liberty版本主要区别: 新增的特性: 1. neutron支持IPv6前缀委托授权为IPv6子网分配CIDR 2. neutron支持QoS API, 初期只支持端口带宽限制 3.路由器HA (L3 HA/VRRP)在L2 population(l2_pop)设置为enable时, 可以正常工作了。 4. VPNaaS参考驱动现在可以和HA router一起正常工作了 5. HA路由器上使用的VRRP网络, 可以配置为特定的segmentation类型

Hadoop之hive学习_01 - 2016-07-08 14:07:22

Hive是构建在hdfs上的一个数据仓库,本质上就是数据库,用来存储数据 数据仓库是一个面向主题的、集成的、不可更新的、随时间不变化的数据集合,用于支持企业或组织的决策分析处理。 1.      面向主题:数据仓库的主题是按照一定得主题进行组织的,即用户所关注的重点对象,比如商品推荐系统。 2.      集成的:将分散的数据(文本文件,oracle数据,mysql数据。。。)进行加工处理才能够成为数据仓库的存储对象。 3.      不可更新的:数据仓库中的数据起主要用途是用于决策分析,所以主要的数据操
​ (上图为Linux基金会HyperLedger超级账本项目执行董事Brian Behlendorf) 区块链恐怕是时下最热门的前沿技术了。这项兴起于比特币的技术,现在已经被视为金融业和许多其他行业的颠覆性技术。尽管区块链的技术体系和应用框架还处于早期阶段,但这并不能阻挡上至行业巨头下至创业公司的热情。 2016年6月30日,Linux基金会下属的HyperLedger超级账本项目宣布了7位新入成员,其中包括莫斯科证券交易所和来自中国的三家技术公司。自去年12月成立以来,超级账本项目已经从最开始的30家

Hadoop面试题 - 2016-07-07 17:07:55

Hadoop MapReduce采用Master/Slave结构 1. 列举出hadoop中定义的最常用的InputFormats.哪个是默认的?     TextInputFormat(默认)用于读取纯文本文件,key是每一行的位置偏移量,是LongWritable类型的,value是每一行的内容,为Text类型     KeyValueTextInputFormat 同样用于读取文件,如果行被分隔符(缺省是tab)分割为两部分,第一部分为key,剩下的部分 为value;如果没有分隔符,整行作为 key

使用 Ansible 管理 MySQL 复制 - 2016-07-06 19:07:28

Ansible 是一个配置管理和应用部署工具,功能类似于目前业界的配置管理工具 Chef,Puppet,Saltstack。Ansible 是通过 Python 语言开发。Ansible 平台由 Michael DeHaan 创建,他同时也是知名软件 Cobbler 与 Func 的作者。Ansible 的第一个版本发布于 2012 年 2 月,相比较其它同类产品来说,Ansible 还是非常年轻的,但这并不影响他的蓬勃发展与大家对他的热爱。 Ansible 默认通过 SSH 协议管理机器,所以 Ansi
1、节点规划   在master、backup节点上添加eth0、eth1两网卡,具体添加过程,参考“ 基于VMware为CentOS 6.5配置两个网卡 ” 2、IP规划   master backup eth0 192.168.46.128 192.168.46.130 eth1 192.168.46.129 192.168.46.131   上面这个表格说明master节点中的eth0网卡的IP是192.168.46.128,eth1网卡的IP是192.168.46.129;backup节点中eth
概述 在本篇中,学习创建和管理硬链接和符号链接。学习: 创建硬或软链接 识别链接并知道它们的类型 理解复制与链接文件之间的区别 使用链接执行系统管理任务 链接简介 在存储设备上,文件或目录包含在一些数据块中。有关某个文件的信息包含在一个 inode 中,它记录了所有者、最后访问该文件的时间、文件的大小、它是否是目录,以及谁可以读取或写入它等信息。inode 编号也称为 文件序列号 ,该编号在特定文件系统内是唯一的。一个 目录条目 包含一个文件或目录的名称,以及用来存储该文件或目录的信息的 inode 的指