Configuration Options¶
oslo.cache uses oslo.config to define and manage configuration options to allow the deployer to control how an application uses this library.
cache¶
- config_prefix¶
- Type:
string
- Default:
cache.oslo
Prefix for building the configuration dictionary for the cache region. This should not need to be changed unless there is another dogpile.cache region with the same configuration name.
- expiration_time¶
- Type:
integer
- Default:
600
- Minimum Value:
1
Default TTL, in seconds, for any cached item in the dogpile.cache region. This applies to any cached method that doesn’t have an explicit cache expiration time defined for it.
- backend_expiration_time¶
- Type:
integer
- Default:
<None>
- Minimum Value:
1
Expiration time in cache backend to purge expired records automatically. This should be greater than expiration_time and all cache_time options
- backend¶
- Type:
string
- Default:
dogpile.cache.null
- Valid Values:
oslo_cache.memcache_pool, oslo_cache.dict, oslo_cache.mongo, oslo_cache.etcd3gw, dogpile.cache.pymemcache, dogpile.cache.memcached, dogpile.cache.pylibmc, dogpile.cache.bmemcached, dogpile.cache.dbm, dogpile.cache.redis, dogpile.cache.redis_sentinel, dogpile.cache.memory, dogpile.cache.memory_pickle, dogpile.cache.null
Cache backend module. For eventlet-based or environments with hundreds of threaded servers, Memcache with pooling (oslo_cache.memcache_pool) is recommended. For environments with less than 100 threaded servers, Memcached (dogpile.cache.memcached) or Redis (dogpile.cache.redis) is recommended. Test environments with a single instance of the server can use the dogpile.cache.memory backend.
- backend_argument¶
- Type:
multi-valued
- Default:
''
Arguments supplied to the backend module. Specify this option once per argument to be passed to the dogpile.cache backend. Example format: “<argname>:<value>”.
- proxies¶
- Type:
list
- Default:
[]
Proxy classes to import that will affect the way the dogpile.cache backend functions. See the dogpile.cache documentation on changing-backend-behavior.
- enabled¶
- Type:
boolean
- Default:
False
Global toggle for caching.
- debug_cache_backend¶
- Type:
boolean
- Default:
False
Extra debugging from the cache backend (cache keys, get/set/delete/etc calls). This is only really useful if you need to see the specific cache-backend get/set/delete calls with the keys/values. Typically this should be left set to false.
- memcache_servers¶
- Type:
list
- Default:
['localhost:11211']
Memcache servers in the format of “host:port”. This is used by backends dependent on Memcached.If
dogpile.cache.memcached
oroslo_cache.memcache_pool
is used and a given host refer to an IPv6 or a given domain refer to IPv6 then you should prefix the given address with the address family (inet6
) (e.ginet6[::1]:11211
,inet6:[fd12:3456:789a:1::1]:11211
,inet6:[controller-0.internalapi]:11211
). If the address family is not given then these backends will use the defaultinet
address family which corresponds to IPv4
- memcache_dead_retry¶
- Type:
integer
- Default:
300
Number of seconds memcached server is considered dead before it is tried again. (dogpile.cache.memcache and oslo_cache.memcache_pool backends only).
- memcache_socket_timeout¶
- Type:
floating point
- Default:
1.0
Timeout in seconds for every call to a server. (dogpile.cache.memcache and oslo_cache.memcache_pool backends only).
- memcache_pool_maxsize¶
- Type:
integer
- Default:
10
Max total number of open connections to every memcached server. (oslo_cache.memcache_pool backend only).
- memcache_pool_unused_timeout¶
- Type:
integer
- Default:
60
Number of seconds a connection to memcached is held unused in the pool before it is closed. (oslo_cache.memcache_pool backend only).
- memcache_pool_connection_get_timeout¶
- Type:
integer
- Default:
10
Number of seconds that an operation will wait to get a memcache client connection.
- memcache_pool_flush_on_reconnect¶
- Type:
boolean
- Default:
False
Global toggle if memcache will be flushed on reconnect. (oslo_cache.memcache_pool backend only).
- memcache_sasl_enabled¶
- Type:
boolean
- Default:
False
Enable the SASL(Simple Authentication and SecurityLayer) if the SASL_enable is true, else disable.
- memcache_username¶
- Type:
string
- Default:
<None>
the user name for the memcached which SASL enabled
- memcache_password¶
- Type:
string
- Default:
<None>
the password for the memcached which SASL enabled
- redis_server¶
- Type:
string
- Default:
localhost:6379
Redis server in the format of “host:port”
- redis_db¶
- Type:
integer
- Default:
0
- Minimum Value:
0
Database id in Redis server
- redis_username¶
- Type:
string
- Default:
<None>
the user name for redis
- redis_password¶
- Type:
string
- Default:
<None>
the password for redis
- redis_sentinels¶
- Type:
list
- Default:
['localhost:26379']
Redis sentinel servers in the format of “host:port”
- redis_socket_timeout¶
- Type:
floating point
- Default:
1.0
Timeout in seconds for every call to a server. (dogpile.cache.redis and dogpile.cache.redis_sentinel backends only).
- redis_sentinel_service_name¶
- Type:
string
- Default:
mymaster
Service name of the redis sentinel cluster.
- tls_enabled¶
- Type:
boolean
- Default:
False
Global toggle for TLS usage when communicating with the caching servers. Currently supported by
dogpile.cache.bmemcache
,dogpile.cache.pymemcache
,oslo_cache.memcache_pool
,dogpile.cache.redis
anddogpile.cache.redis_sentinel
.
- tls_cafile¶
- Type:
string
- Default:
<None>
Path to a file of concatenated CA certificates in PEM format necessary to establish the caching servers’ authenticity. If tls_enabled is False, this option is ignored.
- tls_certfile¶
- Type:
string
- Default:
<None>
Path to a single file in PEM format containing the client’s certificate as well as any number of CA certificates needed to establish the certificate’s authenticity. This file is only required when client side authentication is necessary. If tls_enabled is False, this option is ignored.
- tls_keyfile¶
- Type:
string
- Default:
<None>
Path to a single file containing the client’s private key in. Otherwise the private key will be taken from the file specified in tls_certfile. If tls_enabled is False, this option is ignored.
- tls_allowed_ciphers¶
- Type:
string
- Default:
<None>
Set the available ciphers for sockets created with the TLS context. It should be a string in the OpenSSL cipher list format. If not specified, all OpenSSL enabled ciphers will be available. Currently supported by
dogpile.cache.bmemcache
,dogpile.cache.pymemcache
andoslo_cache.memcache_pool
.
- enable_socket_keepalive¶
- Type:
boolean
- Default:
False
Global toggle for the socket keepalive of dogpile’s pymemcache backend
- socket_keepalive_idle¶
- Type:
integer
- Default:
1
- Minimum Value:
0
The time (in seconds) the connection needs to remain idle before TCP starts sending keepalive probes. Should be a positive integer most greater than zero.
- socket_keepalive_interval¶
- Type:
integer
- Default:
1
- Minimum Value:
0
The time (in seconds) between individual keepalive probes. Should be a positive integer greater than zero.
- socket_keepalive_count¶
- Type:
integer
- Default:
1
- Minimum Value:
0
The maximum number of keepalive probes TCP should send before dropping the connection. Should be a positive integer greater than zero.
- enable_retry_client¶
- Type:
boolean
- Default:
False
Enable retry client mechanisms to handle failure. Those mechanisms can be used to wrap all kind of pymemcache clients. The wrapper allows you to define how many attempts to make and how long to wait between attemots.
- retry_attempts¶
- Type:
integer
- Default:
2
- Minimum Value:
1
Number of times to attempt an action before failing.
- retry_delay¶
- Type:
floating point
- Default:
0
Number of seconds to sleep between each attempt.
- hashclient_retry_attempts¶
- Type:
integer
- Default:
2
- Minimum Value:
1
Amount of times a client should be tried before it is marked dead and removed from the pool in the HashClient’s internal mechanisms.
- hashclient_retry_delay¶
- Type:
floating point
- Default:
1
Time in seconds that should pass between retry attempts in the HashClient’s internal mechanisms.
- dead_timeout¶
- Type:
floating point
- Default:
60
Time in seconds before attempting to add a node back in the pool in the HashClient’s internal mechanisms.
- enforce_fips_mode¶
- Type:
boolean
- Default:
False
Global toggle for enforcing the OpenSSL FIPS mode. This feature requires Python support. This is available in Python 3.9 in all environments and may have been backported to older Python versions on select environments. If the Python executable used does not support OpenSSL FIPS mode, an exception will be raised. Currently supported by
dogpile.cache.bmemcache
,dogpile.cache.pymemcache
andoslo_cache.memcache_pool
.