neutron组件概述
neutron核心组件向用户提供了云平台中定义网络的功能,它负责管理虚拟网络组件,包括Networks,Switches,Subnets和Routers,同时也会提供一些高级网络服务,如Load Balance、Firewall和VPN。neutron中的组件一般分为如下4种:
1.Server:对外提供API,管理数据库等;
2.Plugins:管理neutron种的各种agents;
3.Agents:向虚拟机提供二层和三层的网络联通,处理逻辑网络和物理网络之间的转换、同时也提供一些拓展服务。包括提供二层网络联通服务的Layer 2 agents,比如Linux Bridge和OVS;提供三层IP和路由服务的Layer 3 agents,比如L3和DHCP;提供一些杂项服务的Miscellaneous agents,比如Metadata
4.Services:提供高级网络服务,包括提供三层路由功能的Routing Service;提供VPN功能的VPNaaS;提供负载均衡器功能的LBaas,一般是基于HAProxy实现;提供防火墙服务的FWaas,一般是基于iptables实现。
neutron部署中一般部署三种节点,即控制节点、网络节点和计算节点。其中控制节点一般会部署Neutron Server和Layer 2 agent组件,网络节点一般会部署Layer 2 agent和Layer 3 agent。通常情况下,控制节点和网络节点会同时部署在同一个节点上,所以我们将控制节点和网络节点都部署在控制节点所在的主机上。计算节点部署Layer 2 agent。本次部署所采用的Layer 2 agent为Linux Bridge。
控制节点的部署
创建neutron数据库,用户,服务和endpoints
创建并配置neutron数据库
mysql -u root -pwwwwww
CREATE DATABASE neutron;
GRANT ALL PRIVILEGES ON neutron.* TO 'neutron'@'localhost' IDENTIFIED BY 'NEUTRON_DBPASS';
GRANT ALL PRIVILEGES ON neutron.* TO 'neutron'@'%' IDENTIFIED BY &#