# yaml-language-server: $schema=../../component-metadata-schema.json schemaVersion: v1 type: state name: redis version: v1 status: stable title: "Redis" urls: - title: Reference url: https://docs.dapr.io/reference/components-reference/supported-state-stores/setup-redis/ capabilities: # If actorStateStore is present, the metadata key actorStateStore can be used - actorStateStore - crud - transactional - etag - query metadata: - name: redisHost required: true description: Connection-string for the redis host example: "redis-master.default.svc.cluster.local:6379" type: string - name: redisPassword required: false sensitive: true description: Password for Redis host. No Default. Can be secretKeyRef to use a secret reference example: "KeFg23!" type: string - name: redisUsername required: false description: Username for Redis host. Defaults to empty. Make sure your redis server version is 6 or above, and have created acl rule correctly. example: "default" type: string - name: enableTLS required: false description: If the Redis instance supports TLS with public certificates, can be configured to be enabled or disabled. Defaults to false. example: "false" type: bool - name: failover required: false description: | Enables failover configuration. It requires "sentinelMasterName" to be set, and "redisHost" to be the sentinel host address. default: "false" example: "true" type: bool url: title: "Redis Sentinel documentation" url: "https://redis.io/docs/manual/sentinel/" - name: sentinelMasterName required: false description: | The Redis sentinel master name. Required when "failover" is enabled. example: "127.0.0.1:6379" type: string url: title: "Redis Sentinel documentation" url: "https://redis.io/docs/manual/sentinel/" - name: redeliverInterval required: false description: The interval between checking for pending messages to redelivery. Defaults to \"60s\". \"0\" disables redelivery. example: "30s" type: duration - name: processingTimeout required: false description: The amount time a message must be pending before attempting to redeliver it. Defaults to \"15s\". \"0\" disables redelivery. example: "30s" type: duration - name: redisType type: string required: false allowedValues: - "node" - "cluster" default: "node" description: | Redis service type. Set to "node" for single-node mode, or "cluster" for Redis Cluster. example: "cluster" - name: redisDB required: false description: Database selected after connecting to Redis. If "redisType" is "cluster" this option is ignored. Defaults to "0". example: "0" type: number - name: redisMaxRetries required: false description: Maximum number of retries for Redis commands. example: "5" default: "3" type: number - name: redisMinRetryInterval required: false description: Minimum backoff for Redis commands between each retry.\"-1\" disables backoff. example: "8ms" default: "2s" type: duration - name: redisMaxRetryInterval required: false description: Alias for maxRetryBackoff. If both values are set maxRetryBackoff is ignored. example: "5s" type: duration - name: dialTimeout required: false description: Dial timeout for establishing new connections. Defaults to \"5s\". example: "5s" type: duration - name: readTimeout required: false description: Timeout for socket reads. If reached, redis commands will fail with a timeout instead of blocking. Defaults to \"3s\", \"-1\" for no timeout. example: "3s" type: duration - name: writeTimeout required: false description: Timeout for socket writes. If reached, redis commands will fail with a timeout instead of blocking. Defaults is readTimeout. example: "3s" type: duration - name: poolSize required: false description: Maximum number of socket connections. Default is 10 connections per every CPU as reported by runtime.NumCPU. example: "20" type: number - name: poolTimeout required: false description: Amount of time client waits for a connection if all connections are busy before returning an error. Default is readTimeout + 1 second. example: "5s" type: duration - name: maxConnAge required: false description: Connection age at which the client retires (closes) the connection. Default is to not close aged connections. example: "30m" type: duration - name: minIdleConns required: false description: Minimum number of idle connections to keep open in order to avoid the performance degradation associated with creating new connections. Defaults to \"0\". example: "2" type: number - name: idleCheckFrequency required: false description: Frequency of idle checks made by idle connections reaper. Default is "1m". "-1" disables idle connections reaper. example: "-1" type: duration - name: idleTimeout required: false description: Amount of time after which the client closes idle connections. Should be less than server's timeout. Default is \"5m\". \"-1\" disables idle timeout check. example: "10m" type: duration - name: ttlInSeconds required: false description: Allows specifying a default Time-to-live (TTL) in seconds that will be applied to every state store request unless TTL is explicitly defined via the request metadata. example: "600" type: number - name: queryIndexes required: false description: Indexing schemas for querying JSON objects example: "see Querying JSON objects" type: string