searchusermenu
  • 发布文章
  • 消息中心
点赞
收藏
评论
分享
原创

Openstack Qos

2023-08-14 00:54:15
43
0

1 部署配置

当前Openstack QOS支持的类型有如下几个:

  • bandwidth_limit: Bandwidth limitations on networks, ports or floating IPs.
  • dscp_marking: Marking network traffic with a DSCP value.
  • minimum_bandwidth: Minimum bandwidth constraints on certain types of traffic.

下面只描述bandwidth_limit。其他类型可以参考官网:

https://docs.openstack.org/neutron/queens/admin/config-qos.html

       qos支持的类型和后台使用的linuxbridge、ovs之间的支持程度如下:

       可以看见:Minimum bandwidth对于linuxbridge和ovs当前是不支持的。

所以在环境中,通过命令show类型只有如下两个:

1.1 控制节点

在配置文件:/etc/neutron/neutron.conf添加如下的配置项

        service_plugins = router, qos

    在配置文件:/etc/neutron/plugins/ml2/ml2_conf.ini

               [ml2]

               extension_drivers = port_security, qos

       在配置文件:/etc/neutron/plugins/ml2/<agent_name>_agent.ini

               [agent]

               extensions = qos

        在配置完上面配置项后,需要重启如下几个服务:

        service neutron-server restart

       service neutron-linuxbridge-agent restart

1.2 网络节点

在配置文件:/etc/neutron/plugins/ml2/<agent_name>_agent.ini

               [agent]

        extensions = qos

在配置文件:/etc/neutron/l3_agent.ini

       [agent]

       extensions = fip_qos

在配置完上面配置项后,需要重启如下几个服务:

service neutron-linuxbridge-agent

service neutron-l3-agent

1.3 计算节点

同1.2。

在配置完上面配置项后,需要重启如下几个服务:

service neutron-linuxbridge-agent

service neutron-l3-agent (如果计算节点也安装了l3-agent时)

2 使用

第一:创建qos policy

        neutron qos-policy-create bw-limiter      

第二:创建bandwidth_limit              

        neutron qos-bandwidth-limit-rule-create --max-kbps=100000 --max-burst-kbps=100000 bw-limiter --direction ingress              

        neutron qos-bandwidth-limit-rule-create --max-kbps=200000 --max-burst-kbps=200000 bw-limiter --direction egress       max-burst-kbps值通常为max-kbps的80%。(这个只针对egress方向,ingress方向没有此默认行为)       (这里设置的ingress和egress方向是针对虚拟机而言,从tc的角度看,ingress的rule规则为tc egress, egress的rule规则为tc ingress)       (底层采用linux tc tbf算法来实现,下面是一个例子:

例子中显示的burst xxxKb,这里的b是代表字节的意思,需要注意) 

OVS场景下,限速是在qvoxxx端口上做的,如下:

第三:创建两台虚拟机,分别为vm1和vm2,同子网

第四:虚拟机在未关联任何qos policy时,使用iperf测试其带宽如下:

第五:将qos policy关联给vm1

这时再使用iperf测试其带宽,如下:

从上面可以看出成功限制了上传带宽为100Mbps,下载带宽为200Mbps

 

 

0条评论
0 / 1000