VPC原理
介绍如何VPC网络的实现原理。
VPC网络的功能基于开源项目 OVN 实现。
从3.10开始,采用ovn版本为 2.12.4。
如下图为内置私有云平台和ovn的相关组件架构图。
各个组件的功能说明如下:
组件 | 部署位置 | 作用 |
---|---|---|
region | 控制节点 | 云控制器,管理VPC,IP子网,EIP等资源的数据,提供API接口 |
vpcagent | 控制节点 | 负责将云平台的网络拓扑信息同步转换存储到ovn northdb |
ovn-northd | 控制节点 | 包含ovn-northdb, ovn-northd和ovn-sourthdb等三个组件,ovn-northd存储虚拟网络面向云平台的北向数据库,ovn-sourthd存储虚拟网络面向底层设备的南向数据库,ovn-northd负责数据格式的翻译和转换 |
ovn-controller | 计算节点 | 从ovn-southdb获取本计算节点(chassis)的网络配置信息,并翻译为流表,注入本地的openvswitch |
host | 计算节点 | 云平台的宿主机管理代理程序,跟云控制器通信,负责本机虚拟机的管理,包括信息的同步,配置的管理等 |
sdnagent | 计算节点 | 负责将虚拟机的配置同步到ovs,实现物理网络和虚拟网络的对接 |
ovs | 计算节点 | 负责管理计算节点的虚拟交换机配置,将流表同步到内核datapath |
ovsdb |