Add support for Static Large Objects
Adds the necessary filter to the swift-proxy config to support Static Large Objects (SLO). A new config value 'static-large-object-segments' toggles SLO support and allows the user to control the maximum object size when set to a value >0. Change-Id: I42a88292775badb9fd70e5b99558d084ddcdc29f Closes-Bug: 1753811
This commit is contained in:
parent
dac707c96b
commit
3b2efe479f
17
config.yaml
17
config.yaml
@ -354,3 +354,20 @@ options:
|
||||
Sample rate determines what percentage of the metric points a
|
||||
client should send to the server.
|
||||
Only takes effect if statsd-host is set.
|
||||
static-large-object-segments:
|
||||
default: 0
|
||||
type: int
|
||||
description: |
|
||||
Enable Static Large Objects (SLO) support. This allows the user to
|
||||
upload several object segments concurrently, after which a manifest
|
||||
is uploaded that describes how to concatenate them, enabling a
|
||||
single large object to be downloaded.
|
||||
.
|
||||
This option sets the maximum number of object segments allowed per
|
||||
large object, allowing control over the maximum large object size.
|
||||
The default minimum segment size is 1MB, while the maximum segment
|
||||
size corresponds to the largest object swift is configured
|
||||
to support (5GB by default).
|
||||
.
|
||||
Ex. Setting this to 1000 would allow up to 1000 5GB object segments
|
||||
to be uploaded for a maximum large object size of 5TB.
|
||||
|
@ -111,7 +111,9 @@ class SwiftIdentityContext(OSContextGenerator):
|
||||
'log_headers': config('log-headers'),
|
||||
'statsd_host': config('statsd-host'),
|
||||
'statsd_port': config('statsd-port'),
|
||||
'statsd_sample_rate': config('statsd-sample-rate')
|
||||
'statsd_sample_rate': config('statsd-sample-rate'),
|
||||
'static_large_object_segments': config(
|
||||
'static-large-object-segments')
|
||||
}
|
||||
|
||||
admin_key = leader_get('swauth-admin-key')
|
||||
|
@ -118,3 +118,10 @@ set log_name = swauth
|
||||
super_admin_key = {{ swauth_admin_key }}
|
||||
default_swift_cluster = local#https://{{ proxy_ip }}:8080/v1
|
||||
{% endif %}
|
||||
|
||||
{% if static_large_object_segments > 0 %}
|
||||
[filter:slo]
|
||||
use = egg:swift#slo
|
||||
max_manifest_size = 536870912
|
||||
max_manifest_segments = {{ static_large_object_segments }}
|
||||
{% endif %}
|
||||
|
@ -126,3 +126,10 @@ set log_name = swauth
|
||||
super_admin_key = {{ swauth_admin_key }}
|
||||
default_swift_cluster = local#https://{{ proxy_ip }}:8080/v1
|
||||
{% endif %}
|
||||
|
||||
{% if static_large_object_segments > 0 %}
|
||||
[filter:slo]
|
||||
use = egg:swift#slo
|
||||
max_manifest_size = 536870912
|
||||
max_manifest_segments = {{ static_large_object_segments }}
|
||||
{% endif %}
|
||||
|
@ -145,3 +145,10 @@ driver = messagingv2
|
||||
topic = notifications
|
||||
log_level = WARN
|
||||
{% endif -%}
|
||||
|
||||
{% if static_large_object_segments > 0 %}
|
||||
[filter:slo]
|
||||
use = egg:swift#slo
|
||||
max_manifest_size = 536870912
|
||||
max_manifest_segments = {{ static_large_object_segments }}
|
||||
{% endif %}
|
||||
|
Loading…
Reference in New Issue
Block a user