Puppet Class: swift::proxy::slo

Defined in:
manifests/proxy/slo.pp

Overview

Configure swift slo.

Examples

include swift::proxy::slo

Parameters

max_manifest_segments

(Optional) Max manifest segments. Defaults to $::os_service_default.

max_manifest_size

(Optional) Max manifest size. Defaults to $::os_service_default.

rate_limit_under_size

(Optional) Rate limiting applies only to segments smaller than this size. Defaults to $::os_service_default.

rate_limit_after_segment

(Optional) Start rate-limiting SLO segment serving after the Nth segment of a segmented object. Defaults to $::os_service_default.

rate_limit_segments_per_sec

(Optional) Once segment rate-limiting kicks in for an object, limit segments served to N per second. 0 means no rate-limiting. Defaults to $::os_service_default.

max_get_time

(Optional) Time limit on GET requests (seconds). Defaults to $::os_service_default.

concurrency

(Optional) Limit how many subrequests may be executed concurrently. Defaults to $::os_service_default.

delete_concurrency

(Optional) Limit how many delete subrequests may be executed concurrently. This may be used to separately tune validation and delete concurrency values. Defaults to $::os_service_default.

yield_frequency

(Optional) Frequency, in seconds, to yield whitespace ahed of the final response. Defaults to $::os_service_default.

allow_async_delete

(Optional) Allow clients to request the object-expirer handle the deletion of segments using query params like ‘?multipart-manifest=delete&async=on`. Defaults to $::os_service_default.

DEPRECATED PARAMETERS

min_segment_size

(Optional) minimal segment size Defaults to undef.

Authors

Xingchao Yu  yuxcer@gmail.com

Copyright 2014 UnitedStack licensing@unitedstack.com

Parameters:

  • max_manifest_segments (Any) (defaults to: $::os_service_default)
  • max_manifest_size (Any) (defaults to: $::os_service_default)
  • rate_limit_under_size (Any) (defaults to: $::os_service_default)
  • rate_limit_after_segment (Any) (defaults to: $::os_service_default)
  • rate_limit_segments_per_sec (Any) (defaults to: $::os_service_default)
  • max_get_time (Any) (defaults to: $::os_service_default)
  • concurrency (Any) (defaults to: $::os_service_default)
  • delete_concurrency (Any) (defaults to: $::os_service_default)
  • yield_frequency (Any) (defaults to: $::os_service_default)
  • allow_async_delete (Any) (defaults to: $::os_service_default)
  • min_segment_size (Any) (defaults to: undef)


70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
# File 'manifests/proxy/slo.pp', line 70

class swift::proxy::slo (
  $max_manifest_segments       = $::os_service_default,
  $max_manifest_size           = $::os_service_default,
  $rate_limit_under_size       = $::os_service_default,
  $rate_limit_after_segment    = $::os_service_default,
  $rate_limit_segments_per_sec = $::os_service_default,
  $max_get_time                = $::os_service_default,
  $concurrency                 = $::os_service_default,
  $delete_concurrency          = $::os_service_default,
  $yield_frequency             = $::os_service_default,
  $allow_async_delete          = $::os_service_default,
  # DEPRECATED PARAMETERS
  $min_segment_size            = undef,
) {

  include swift::deps

  if $min_segment_size != undef {
    warning('The swift::proxy::slo::min_segment_size parameter is deprecated and has no effect.')
  }
  swift_proxy_config {
    'filter:slo/min_segment_size': ensure => absent;
  }

  swift_proxy_config {
    'filter:slo/use':                         value => 'egg:swift#slo';
    'filter:slo/max_manifest_segments':       value => $max_manifest_segments;
    'filter:slo/max_manifest_size':           value => $max_manifest_size;
    'filter:slo/rate_limit_under_size':       value => $rate_limit_under_size;
    'filter:slo/rate_limit_after_segment':    value => $rate_limit_after_segment;
    'filter:slo/rate_limit_segments_per_sec': value => $rate_limit_segments_per_sec;
    'filter:slo/max_get_time':                value => $max_get_time;
    'filter:slo/concurrency':                 value => $concurrency;
    'filter:slo/delete_concurrency':          value => $delete_concurrency;
    'filter:slo/yield_frequency':             value => $yield_frequency;
    'filter:slo/allow_async_delete':          value => $allow_async_delete;
  }
}