Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

added config item f5_http_rps_throttle and a proper HTTP rps iRule #128

Closed
wants to merge 1 commit into from

Conversation

jgruber
Copy link
Contributor

@jgruber jgruber commented Sep 29, 2016

@mattgreene

What issues does this address?

Fixes #127
WIP #127
...

What's this change do?

Adds a configuration item 'f5_http_rps_throttle' which is a Boolean and defaults to False.
Adds a valid HTTP RPS iRule. The iRule properly keeps the RPS count per virtual server. The previous iRule would never engage the throttle because of a mistake in logic. The new iRule is also CMP compliant.

If the 'f5_http_rps_throttle' config setting is set to True for a VIP with a connection limit > 0, the new iRule will be created for the tenant and associated with the virtual server for the VIP.

If the 'f5_http_rps_throttle' config setting is set to False, the default, on a VIP with a connection limit > 0, the virtaul server will simply have the connection limit set to the VIP connection limit.

Where should the reviewer start?

Start an LBaaSv1 agent with 'f5_http_rps_throttle' set to False. Set a VIP connection limit > 0 and confirm the virtual server has the connection limit set.

Start an LBaasv1 agent with 'f5_http_rps_throttle' set to True. Set a VIP connection limit > 0 and confirm that the tenant iRule was created and associated with the appropriate vip.

@mattgreene
Copy link
Contributor

Please close this PR and resubmit to F5Networks:1.0. I will merge from 1.0 to liberty -> mitaka -> master.

@@ -588,6 +588,21 @@ f5_common_external_networks = True
# l3_binding_static_mappings = 'subnet_a':[('port_a','device_a'),('port_b','device_b')], 'subnet_b':[('port_c','device_a'),('port_d','device_b')]
#
#
# f5_http_rps_throttle
Copy link
Contributor

@mattgreene mattgreene Sep 29, 2016

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggest a more descriptive title, such as:
HTTP request rate-limiting

@mattgreene mattgreene closed this Oct 7, 2016
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants