OpenStack之Neutron源码分析 Neutron-server初始化

本文深入分析OpenStack Neutron的Neutron-server启动过程,包括初始化、API服务、RPC服务、L2与L3 Agent服务的初始化。通过`neutron/setup.cfg`理解项目结构,如l3 agent、Open vSwitch Agent的角色。Neutron-server启动涉及配置加载、数据库初始化,不需执行db sync,且主要通过serve_wsgi和serve_rpc方法处理RESTful API请求和RPC调用。
摘要由CSDN通过智能技术生成

从文件夹的命名也基本可以得出该目录代码的作用,几个重要的文件夹如下:
agent: 主要是l3 agent及l3 agent ha的相关代码;
common: 主要是各底层驱动与linux系统命令的交互层;
db: 是neutron各功能与数据库交互数据的代码;
extensions: 主要包括的一些扩展功能,包括dvr的代码等;
plugins: 是core plugin的代码,包括ovs,ml2和各个厂商ibm、ryu提供等的plugin;
scheduler: 是创建dhcp服务和router到各l3 agent的调度分配相关代码;
server: 是neutron server相关的代码;
services: 则是包含了lbaas、vpnaas、fwaas、l3-router、metering等服务的plugin和agent代码;

Neutron是OpenStack中用于管理网络的项目。neutron代码的入口配置文件neutron.setup.cfg,我们可以通过这个文件了解整个项目的代码结构。
neutron/setup.cfg

[entry_points]
console_scripts = 
    neutron-l3-agent = neutron.cmd.eventlet.agents.l3:main
    neutron-linuxbridge-agent = neutron.plugins.ml2.drivers.linuxbridge.agent.linuxbridge_neutron_agent:main
    neutron-openvswitch-agent = neutron.cmd.eventlet.plugins.ovs_neutron_agent:main
    neutron-server = neutron.cmd.eventlet.server:main_wsgi_eventlet
    neutron-rpc-server = neutron.cmd.eventlet.server:main_rpc_eventlet
    neutron-sanity-check = neutron.cmd.sanity_check:main
neutron.core_plugins = 
    ml2 = neutron.plugins
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值