网络服务功能链的资源插件¶
https://blueprints.launchpad.net/heat/+spec/sfc-heat
添加用于网络服务功能链的资源插件。
问题描述¶
OpenStack neutron 支持服务功能链 (sfc) 作为官方子项目,更多详细信息请参见 https://docs.openstack.org/developer/networking-sfc/ 。 Heat 目前没有提供用于网络服务功能链的资源插件,本蓝图旨在提供所需的插件。
提议的更改是通过组合服务功能 VM 的 neutron 端口的顺序来引入服务功能链,并根据所需的的服务处理将分类的用户流量引导到链中。
提议的变更¶
在 resources/openstack/neutron/ 下添加以下资源插件,并添加 port_pair、port_pair_group、flow_classifier neutron 约束用于资源验证。
OS::Neutron::PortPair
- name
类型:字符串
update_allowed: true
- description
类型:字符串
required: false
update_allowed: true
- ingress
类型:字符串
required: true
constraints: 自定义约束 ‘neutron.port’
- egress
类型:字符串
required: true
constraints: 自定义约束 ‘neutron.port’
- service_function_parameters
type: map
required: false
default: {‘correlation’: None}
OS::Neutron::PortPairGroup
- name
类型:字符串
update_allowed: true
- description
类型:字符串
required: false
update_allowed: true
- port_pairs
type: list
default: []
required: true
update_allowed: true
constraints: 自定义约束 ‘neutron.port_pair’
OS::Neutron::PortChain
- name
类型:字符串
update_allowed: true
- description
类型:字符串
required: false
update_allowed: true
- port_pair_groups
type: list
default: []
required: true
constraints: 自定义约束 ‘neutron.port_pair_group’
- flow_classifiers
type: list
default: []
required: false
update_allowed: true
constraints: 自定义约束 ‘neutron.flow_classifier’
- chain_parameters
type: map
required: false
default: {correlation: mpls}
OS::Neutron::FlowClassifier
- name
类型:字符串
update_allowed: true
- description
类型:字符串
required: false
update_allowed: true
- protocol
类型:字符串
required: false
allowed_values: [tcp, udp, icmp, any]
- ethertype
类型:字符串
required: false
allowed_values: [IPv4, IPv6]
default : Ipv4
- source_ip_prefix
类型:字符串
required: false
default: [correlation=mpls]
constraints: 自定义约束 ‘net_cidr’
- destination_ip_prefix
类型:字符串
required: false
default: [correlation=mpls]
constraints: 自定义约束 ‘net_cidr’
- source_port_range_min
类型:字符串
required: false
constraints.Range: (1, 65535)
- source_port_range_max
类型:字符串
required: false
constraints.Range: (1, 65535)
- destination_port_range_min
类型:字符串
required: false
constraints.Range: (1, 65535)
- destination_port_range_max
类型:字符串
required: false
constraints.Range: (1, 65535)
- logical_source_port
类型:字符串
required: true
constraints: 自定义约束 ‘neutron.port’
- logical_destination_port
类型:字符串
required: false
constraints: 自定义约束 ‘neutron.port’
- l7_parameters
type: map
required: false
备选方案¶
无
实现¶
负责人¶
- 主要负责人
Mohankumar (nmohankumar1011@gmail.com)
里程碑¶
newton-1
工作项¶
添加相关资源
添加所需的自定义约束
添加相关测试
在 heat-templates 中添加示例模板
依赖项¶
无