Ready to level-up your engineering skills? Join a Pulumi Workshop. Register Now

Redis

# Redis Resource

The Redis resource allows the creation and management of Aiven Redis services.

Example Usage

using Pulumi;
using Aiven = Pulumi.Aiven;

class MyStack : Stack
{
    public MyStack()
    {
        var redis1 = new Aiven.Redis("redis1", new Aiven.RedisArgs
        {
            Project = data.Aiven_project.Pr1.Project,
            CloudName = "google-europe-west1",
            Plan = "business-4",
            ServiceName = "my-redis1",
            MaintenanceWindowDow = "monday",
            MaintenanceWindowTime = "10:00:00",
            RedisUserConfig = new Aiven.Inputs.RedisRedisUserConfigArgs
            {
                RedisMaxmemoryPolicy = "allkeys-random",
                PublicAccess = new Aiven.Inputs.RedisRedisUserConfigPublicAccessArgs
                {
                    Redis = "true",
                },
            },
        });
    }

}
package main

import (
    "github.com/pulumi/pulumi-aiven/sdk/v3/go/aiven"
    "github.com/pulumi/pulumi/sdk/v2/go/pulumi"
)

func main() {
    pulumi.Run(func(ctx *pulumi.Context) error {
        _, err := aiven.NewRedis(ctx, "redis1", &aiven.RedisArgs{
            Project:               pulumi.Any(data.Aiven_project.Pr1.Project),
            CloudName:             pulumi.String("google-europe-west1"),
            Plan:                  pulumi.String("business-4"),
            ServiceName:           pulumi.String("my-redis1"),
            MaintenanceWindowDow:  pulumi.String("monday"),
            MaintenanceWindowTime: pulumi.String("10:00:00"),
            RedisUserConfig: &aiven.RedisRedisUserConfigArgs{
                RedisMaxmemoryPolicy: pulumi.String("allkeys-random"),
                PublicAccess: &aiven.RedisRedisUserConfigPublicAccessArgs{
                    Redis: pulumi.String("true"),
                },
            },
        })
        if err != nil {
            return err
        }
        return nil
    })
}
import pulumi
import pulumi_aiven as aiven

redis1 = aiven.Redis("redis1",
    project=data["aiven_project"]["pr1"]["project"],
    cloud_name="google-europe-west1",
    plan="business-4",
    service_name="my-redis1",
    maintenance_window_dow="monday",
    maintenance_window_time="10:00:00",
    redis_user_config=aiven.RedisRedisUserConfigArgs(
        redis_maxmemory_policy="allkeys-random",
        public_access=aiven.RedisRedisUserConfigPublicAccessArgs(
            redis="true",
        ),
    ))
import * as pulumi from "@pulumi/pulumi";
import * as aiven from "@pulumi/aiven";

const redis1 = new aiven.Redis("redis1", {
    project: data.aiven_project.pr1.project,
    cloudName: "google-europe-west1",
    plan: "business-4",
    serviceName: "my-redis1",
    maintenanceWindowDow: "monday",
    maintenanceWindowTime: "10:00:00",
    redisUserConfig: {
        redisMaxmemoryPolicy: "allkeys-random",
        publicAccess: {
            redis: true,
        },
    },
});

Create a Redis Resource

new Redis(name: string, args: RedisArgs, opts?: CustomResourceOptions);
def Redis(resource_name: str, opts: Optional[ResourceOptions] = None, cloud_name: Optional[str] = None, maintenance_window_dow: Optional[str] = None, maintenance_window_time: Optional[str] = None, plan: Optional[str] = None, project: Optional[str] = None, project_vpc_id: Optional[str] = None, redis: Optional[RedisRedisArgs] = None, redis_user_config: Optional[RedisRedisUserConfigArgs] = None, service_integrations: Optional[Sequence[RedisServiceIntegrationArgs]] = None, service_name: Optional[str] = None, termination_protection: Optional[bool] = None)
func NewRedis(ctx *Context, name string, args RedisArgs, opts ...ResourceOption) (*Redis, error)
public Redis(string name, RedisArgs args, CustomResourceOptions? opts = null)
name string
The unique name of the resource.
args RedisArgs
The arguments to resource properties.
opts CustomResourceOptions
Bag of options to control resource's behavior.
resource_name str
The unique name of the resource.
opts ResourceOptions
A bag of options that control this resource's behavior.
ctx Context
Context object for the current deployment.
name string
The unique name of the resource.
args RedisArgs
The arguments to resource properties.
opts ResourceOption
Bag of options to control resource's behavior.
name string
The unique name of the resource.
args RedisArgs
The arguments to resource properties.
opts CustomResourceOptions
Bag of options to control resource's behavior.

Redis Resource Properties

To learn more about resource properties and how to use them, see Inputs and Outputs in the Programming Model docs.

Inputs

The Redis resource accepts the following input properties:

Project string

identifies the project the service belongs to. To set up proper dependency between the project and the service, refer to the project as shown in the above example. Project cannot be changed later without destroying and re-creating the service.

ServiceName string

specifies the actual name of the service. The name cannot be changed later without destroying and re-creating the service so name should be picked based on intended service usage rather than current attributes.

CloudName string

defines where the cloud provider and region where the service is hosted in. This can be changed freely after service is created. Changing the value will trigger a potentially lengthy migration process for the service. Format is cloud provider name (aws, azure, do google, upcloud, etc.), dash, and the cloud provider specific region name. These are documented on each Cloud provider’s own support articles, like here for Google and here for AWS.

MaintenanceWindowDow string

day of week when maintenance operations should be performed. On monday, tuesday, wednesday, etc.

MaintenanceWindowTime string

time of day when maintenance operations should be performed. UTC time in HH:mm:ss format.

Plan string

defines what kind of computing resources are allocated for the service. It can be changed after creation, though there are some restrictions when going to a smaller plan such as the new plan must have sufficient amount of disk space to store all current data and switching to a plan with fewer nodes might not be supported. The basic plan names are hobbyist, startup-x, business-x and premium-x where x is (roughly) the amount of memory on each node (also other attributes like number of CPUs and amount of disk space varies but naming is based on memory). The exact options can be seen from the Aiven web console’s Create Service dialog.

ProjectVpcId string

optionally specifies the VPC the service should run in. If the value is not set the service is not run inside a VPC. When set, the value should be given as a reference as shown above to set up dependencies correctly and the VPC must be in the same cloud and region as the service itself. Project can be freely moved to and from VPC after creation but doing so triggers migration to new servers so the operation can take significant amount of time to complete if the service has a lot of data.

RedisServer RedisRedisArgs

Allow clients to connect to redis from the public internet for service nodes that are in a project VPC or another type of private network

RedisUserConfig RedisRedisUserConfigArgs

defines Redis specific additional configuration options. The following configuration options available:

ServiceIntegrations List<RedisServiceIntegrationArgs>

Service integrations to specify when creating a service. Not applied after initial service creation

TerminationProtection bool

prevents the service from being deleted. It is recommended to set this to true for all production services to prevent unintentional service deletion. This does not shield against deleting databases or topics but for services with backups much of the content can at least be restored from backup in case accidental deletion is done.

Project string

identifies the project the service belongs to. To set up proper dependency between the project and the service, refer to the project as shown in the above example. Project cannot be changed later without destroying and re-creating the service.

ServiceName string

specifies the actual name of the service. The name cannot be changed later without destroying and re-creating the service so name should be picked based on intended service usage rather than current attributes.

CloudName string

defines where the cloud provider and region where the service is hosted in. This can be changed freely after service is created. Changing the value will trigger a potentially lengthy migration process for the service. Format is cloud provider name (aws, azure, do google, upcloud, etc.), dash, and the cloud provider specific region name. These are documented on each Cloud provider’s own support articles, like here for Google and here for AWS.

MaintenanceWindowDow string

day of week when maintenance operations should be performed. On monday, tuesday, wednesday, etc.

MaintenanceWindowTime string

time of day when maintenance operations should be performed. UTC time in HH:mm:ss format.

Plan string

defines what kind of computing resources are allocated for the service. It can be changed after creation, though there are some restrictions when going to a smaller plan such as the new plan must have sufficient amount of disk space to store all current data and switching to a plan with fewer nodes might not be supported. The basic plan names are hobbyist, startup-x, business-x and premium-x where x is (roughly) the amount of memory on each node (also other attributes like number of CPUs and amount of disk space varies but naming is based on memory). The exact options can be seen from the Aiven web console’s Create Service dialog.

ProjectVpcId string

optionally specifies the VPC the service should run in. If the value is not set the service is not run inside a VPC. When set, the value should be given as a reference as shown above to set up dependencies correctly and the VPC must be in the same cloud and region as the service itself. Project can be freely moved to and from VPC after creation but doing so triggers migration to new servers so the operation can take significant amount of time to complete if the service has a lot of data.

Redis RedisRedis

Allow clients to connect to redis from the public internet for service nodes that are in a project VPC or another type of private network

RedisUserConfig RedisRedisUserConfig

defines Redis specific additional configuration options. The following configuration options available:

ServiceIntegrations []RedisServiceIntegration

Service integrations to specify when creating a service. Not applied after initial service creation

TerminationProtection bool

prevents the service from being deleted. It is recommended to set this to true for all production services to prevent unintentional service deletion. This does not shield against deleting databases or topics but for services with backups much of the content can at least be restored from backup in case accidental deletion is done.

project string

identifies the project the service belongs to. To set up proper dependency between the project and the service, refer to the project as shown in the above example. Project cannot be changed later without destroying and re-creating the service.

serviceName string

specifies the actual name of the service. The name cannot be changed later without destroying and re-creating the service so name should be picked based on intended service usage rather than current attributes.

cloudName string

defines where the cloud provider and region where the service is hosted in. This can be changed freely after service is created. Changing the value will trigger a potentially lengthy migration process for the service. Format is cloud provider name (aws, azure, do google, upcloud, etc.), dash, and the cloud provider specific region name. These are documented on each Cloud provider’s own support articles, like here for Google and here for AWS.

maintenanceWindowDow string

day of week when maintenance operations should be performed. On monday, tuesday, wednesday, etc.

maintenanceWindowTime string

time of day when maintenance operations should be performed. UTC time in HH:mm:ss format.

plan string

defines what kind of computing resources are allocated for the service. It can be changed after creation, though there are some restrictions when going to a smaller plan such as the new plan must have sufficient amount of disk space to store all current data and switching to a plan with fewer nodes might not be supported. The basic plan names are hobbyist, startup-x, business-x and premium-x where x is (roughly) the amount of memory on each node (also other attributes like number of CPUs and amount of disk space varies but naming is based on memory). The exact options can be seen from the Aiven web console’s Create Service dialog.

projectVpcId string

optionally specifies the VPC the service should run in. If the value is not set the service is not run inside a VPC. When set, the value should be given as a reference as shown above to set up dependencies correctly and the VPC must be in the same cloud and region as the service itself. Project can be freely moved to and from VPC after creation but doing so triggers migration to new servers so the operation can take significant amount of time to complete if the service has a lot of data.

redis RedisRedis

Allow clients to connect to redis from the public internet for service nodes that are in a project VPC or another type of private network

redisUserConfig RedisRedisUserConfig

defines Redis specific additional configuration options. The following configuration options available:

serviceIntegrations RedisServiceIntegration[]

Service integrations to specify when creating a service. Not applied after initial service creation

terminationProtection boolean

prevents the service from being deleted. It is recommended to set this to true for all production services to prevent unintentional service deletion. This does not shield against deleting databases or topics but for services with backups much of the content can at least be restored from backup in case accidental deletion is done.

project str

identifies the project the service belongs to. To set up proper dependency between the project and the service, refer to the project as shown in the above example. Project cannot be changed later without destroying and re-creating the service.

service_name str

specifies the actual name of the service. The name cannot be changed later without destroying and re-creating the service so name should be picked based on intended service usage rather than current attributes.

cloud_name str

defines where the cloud provider and region where the service is hosted in. This can be changed freely after service is created. Changing the value will trigger a potentially lengthy migration process for the service. Format is cloud provider name (aws, azure, do google, upcloud, etc.), dash, and the cloud provider specific region name. These are documented on each Cloud provider’s own support articles, like here for Google and here for AWS.

maintenance_window_dow str

day of week when maintenance operations should be performed. On monday, tuesday, wednesday, etc.

maintenance_window_time str

time of day when maintenance operations should be performed. UTC time in HH:mm:ss format.

plan str

defines what kind of computing resources are allocated for the service. It can be changed after creation, though there are some restrictions when going to a smaller plan such as the new plan must have sufficient amount of disk space to store all current data and switching to a plan with fewer nodes might not be supported. The basic plan names are hobbyist, startup-x, business-x and premium-x where x is (roughly) the amount of memory on each node (also other attributes like number of CPUs and amount of disk space varies but naming is based on memory). The exact options can be seen from the Aiven web console’s Create Service dialog.

project_vpc_id str

optionally specifies the VPC the service should run in. If the value is not set the service is not run inside a VPC. When set, the value should be given as a reference as shown above to set up dependencies correctly and the VPC must be in the same cloud and region as the service itself. Project can be freely moved to and from VPC after creation but doing so triggers migration to new servers so the operation can take significant amount of time to complete if the service has a lot of data.

redis RedisRedisArgs

Allow clients to connect to redis from the public internet for service nodes that are in a project VPC or another type of private network

redis_user_config RedisRedisUserConfigArgs

defines Redis specific additional configuration options. The following configuration options available:

service_integrations Sequence[RedisServiceIntegrationArgs]

Service integrations to specify when creating a service. Not applied after initial service creation

termination_protection bool

prevents the service from being deleted. It is recommended to set this to true for all production services to prevent unintentional service deletion. This does not shield against deleting databases or topics but for services with backups much of the content can at least be restored from backup in case accidental deletion is done.

Outputs

All input properties are implicitly available as output properties. Additionally, the Redis resource produces the following output properties:

Components List<RedisComponent>

Service component information objects

Id string
The provider-assigned unique ID for this managed resource.
ServiceHost string

Redis hostname.

ServicePassword string

Password used for connecting to the Redis service, if applicable.

ServicePort int

Redis port.

ServiceType string

Aiven internal service type code

ServiceUri string

URI for connecting to the Redis service.

ServiceUsername string

Username used for connecting to the Redis service, if applicable.

State string

Service state.

Components []RedisComponent

Service component information objects

Id string
The provider-assigned unique ID for this managed resource.
ServiceHost string

Redis hostname.

ServicePassword string

Password used for connecting to the Redis service, if applicable.

ServicePort int

Redis port.

ServiceType string

Aiven internal service type code

ServiceUri string

URI for connecting to the Redis service.

ServiceUsername string

Username used for connecting to the Redis service, if applicable.

State string

Service state.

components RedisComponent[]

Service component information objects

id string
The provider-assigned unique ID for this managed resource.
serviceHost string

Redis hostname.

servicePassword string

Password used for connecting to the Redis service, if applicable.

servicePort number

Redis port.

serviceType string

Aiven internal service type code

serviceUri string

URI for connecting to the Redis service.

serviceUsername string

Username used for connecting to the Redis service, if applicable.

state string

Service state.

components Sequence[RedisComponent]

Service component information objects

id str
The provider-assigned unique ID for this managed resource.
service_host str

Redis hostname.

service_password str

Password used for connecting to the Redis service, if applicable.

service_port int

Redis port.

service_type str

Aiven internal service type code

service_uri str

URI for connecting to the Redis service.

service_username str

Username used for connecting to the Redis service, if applicable.

state str

Service state.

Look up an Existing Redis Resource

Get an existing Redis resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

public static get(name: string, id: Input<ID>, state?: RedisState, opts?: CustomResourceOptions): Redis
@staticmethod
def get(resource_name: str, id: str, opts: Optional[ResourceOptions] = None, cloud_name: Optional[str] = None, components: Optional[Sequence[RedisComponentArgs]] = None, maintenance_window_dow: Optional[str] = None, maintenance_window_time: Optional[str] = None, plan: Optional[str] = None, project: Optional[str] = None, project_vpc_id: Optional[str] = None, redis: Optional[RedisRedisArgs] = None, redis_user_config: Optional[RedisRedisUserConfigArgs] = None, service_host: Optional[str] = None, service_integrations: Optional[Sequence[RedisServiceIntegrationArgs]] = None, service_name: Optional[str] = None, service_password: Optional[str] = None, service_port: Optional[int] = None, service_type: Optional[str] = None, service_uri: Optional[str] = None, service_username: Optional[str] = None, state: Optional[str] = None, termination_protection: Optional[bool] = None) -> Redis
func GetRedis(ctx *Context, name string, id IDInput, state *RedisState, opts ...ResourceOption) (*Redis, error)
public static Redis Get(string name, Input<string> id, RedisState? state, CustomResourceOptions? opts = null)
name
The unique name of the resulting resource.
id
The unique provider ID of the resource to lookup.
state
Any extra arguments used during the lookup.
opts
A bag of options that control this resource's behavior.
resource_name
The unique name of the resulting resource.
id
The unique provider ID of the resource to lookup.
name
The unique name of the resulting resource.
id
The unique provider ID of the resource to lookup.
state
Any extra arguments used during the lookup.
opts
A bag of options that control this resource's behavior.
name
The unique name of the resulting resource.
id
The unique provider ID of the resource to lookup.
state
Any extra arguments used during the lookup.
opts
A bag of options that control this resource's behavior.

The following state arguments are supported:

CloudName string

defines where the cloud provider and region where the service is hosted in. This can be changed freely after service is created. Changing the value will trigger a potentially lengthy migration process for the service. Format is cloud provider name (aws, azure, do google, upcloud, etc.), dash, and the cloud provider specific region name. These are documented on each Cloud provider’s own support articles, like here for Google and here for AWS.

Components List<RedisComponentArgs>

Service component information objects

MaintenanceWindowDow string

day of week when maintenance operations should be performed. On monday, tuesday, wednesday, etc.

MaintenanceWindowTime string

time of day when maintenance operations should be performed. UTC time in HH:mm:ss format.

Plan string

defines what kind of computing resources are allocated for the service. It can be changed after creation, though there are some restrictions when going to a smaller plan such as the new plan must have sufficient amount of disk space to store all current data and switching to a plan with fewer nodes might not be supported. The basic plan names are hobbyist, startup-x, business-x and premium-x where x is (roughly) the amount of memory on each node (also other attributes like number of CPUs and amount of disk space varies but naming is based on memory). The exact options can be seen from the Aiven web console’s Create Service dialog.

Project string

identifies the project the service belongs to. To set up proper dependency between the project and the service, refer to the project as shown in the above example. Project cannot be changed later without destroying and re-creating the service.

ProjectVpcId string

optionally specifies the VPC the service should run in. If the value is not set the service is not run inside a VPC. When set, the value should be given as a reference as shown above to set up dependencies correctly and the VPC must be in the same cloud and region as the service itself. Project can be freely moved to and from VPC after creation but doing so triggers migration to new servers so the operation can take significant amount of time to complete if the service has a lot of data.

RedisServer RedisRedisArgs

Allow clients to connect to redis from the public internet for service nodes that are in a project VPC or another type of private network

RedisUserConfig RedisRedisUserConfigArgs

defines Redis specific additional configuration options. The following configuration options available:

ServiceHost string

Redis hostname.

ServiceIntegrations List<RedisServiceIntegrationArgs>

Service integrations to specify when creating a service. Not applied after initial service creation

ServiceName string

specifies the actual name of the service. The name cannot be changed later without destroying and re-creating the service so name should be picked based on intended service usage rather than current attributes.

ServicePassword string

Password used for connecting to the Redis service, if applicable.

ServicePort int

Redis port.

ServiceType string

Aiven internal service type code

ServiceUri string

URI for connecting to the Redis service.

ServiceUsername string

Username used for connecting to the Redis service, if applicable.

State string

Service state.

TerminationProtection bool

prevents the service from being deleted. It is recommended to set this to true for all production services to prevent unintentional service deletion. This does not shield against deleting databases or topics but for services with backups much of the content can at least be restored from backup in case accidental deletion is done.

CloudName string

defines where the cloud provider and region where the service is hosted in. This can be changed freely after service is created. Changing the value will trigger a potentially lengthy migration process for the service. Format is cloud provider name (aws, azure, do google, upcloud, etc.), dash, and the cloud provider specific region name. These are documented on each Cloud provider’s own support articles, like here for Google and here for AWS.

Components []RedisComponent

Service component information objects

MaintenanceWindowDow string

day of week when maintenance operations should be performed. On monday, tuesday, wednesday, etc.

MaintenanceWindowTime string

time of day when maintenance operations should be performed. UTC time in HH:mm:ss format.

Plan string

defines what kind of computing resources are allocated for the service. It can be changed after creation, though there are some restrictions when going to a smaller plan such as the new plan must have sufficient amount of disk space to store all current data and switching to a plan with fewer nodes might not be supported. The basic plan names are hobbyist, startup-x, business-x and premium-x where x is (roughly) the amount of memory on each node (also other attributes like number of CPUs and amount of disk space varies but naming is based on memory). The exact options can be seen from the Aiven web console’s Create Service dialog.

Project string

identifies the project the service belongs to. To set up proper dependency between the project and the service, refer to the project as shown in the above example. Project cannot be changed later without destroying and re-creating the service.

ProjectVpcId string

optionally specifies the VPC the service should run in. If the value is not set the service is not run inside a VPC. When set, the value should be given as a reference as shown above to set up dependencies correctly and the VPC must be in the same cloud and region as the service itself. Project can be freely moved to and from VPC after creation but doing so triggers migration to new servers so the operation can take significant amount of time to complete if the service has a lot of data.

Redis RedisRedis

Allow clients to connect to redis from the public internet for service nodes that are in a project VPC or another type of private network

RedisUserConfig RedisRedisUserConfig

defines Redis specific additional configuration options. The following configuration options available:

ServiceHost string

Redis hostname.

ServiceIntegrations []RedisServiceIntegration

Service integrations to specify when creating a service. Not applied after initial service creation

ServiceName string

specifies the actual name of the service. The name cannot be changed later without destroying and re-creating the service so name should be picked based on intended service usage rather than current attributes.

ServicePassword string

Password used for connecting to the Redis service, if applicable.

ServicePort int

Redis port.

ServiceType string

Aiven internal service type code

ServiceUri string

URI for connecting to the Redis service.

ServiceUsername string

Username used for connecting to the Redis service, if applicable.

State string

Service state.

TerminationProtection bool

prevents the service from being deleted. It is recommended to set this to true for all production services to prevent unintentional service deletion. This does not shield against deleting databases or topics but for services with backups much of the content can at least be restored from backup in case accidental deletion is done.

cloudName string

defines where the cloud provider and region where the service is hosted in. This can be changed freely after service is created. Changing the value will trigger a potentially lengthy migration process for the service. Format is cloud provider name (aws, azure, do google, upcloud, etc.), dash, and the cloud provider specific region name. These are documented on each Cloud provider’s own support articles, like here for Google and here for AWS.

components RedisComponent[]

Service component information objects

maintenanceWindowDow string

day of week when maintenance operations should be performed. On monday, tuesday, wednesday, etc.

maintenanceWindowTime string

time of day when maintenance operations should be performed. UTC time in HH:mm:ss format.

plan string

defines what kind of computing resources are allocated for the service. It can be changed after creation, though there are some restrictions when going to a smaller plan such as the new plan must have sufficient amount of disk space to store all current data and switching to a plan with fewer nodes might not be supported. The basic plan names are hobbyist, startup-x, business-x and premium-x where x is (roughly) the amount of memory on each node (also other attributes like number of CPUs and amount of disk space varies but naming is based on memory). The exact options can be seen from the Aiven web console’s Create Service dialog.

project string

identifies the project the service belongs to. To set up proper dependency between the project and the service, refer to the project as shown in the above example. Project cannot be changed later without destroying and re-creating the service.

projectVpcId string

optionally specifies the VPC the service should run in. If the value is not set the service is not run inside a VPC. When set, the value should be given as a reference as shown above to set up dependencies correctly and the VPC must be in the same cloud and region as the service itself. Project can be freely moved to and from VPC after creation but doing so triggers migration to new servers so the operation can take significant amount of time to complete if the service has a lot of data.

redis RedisRedis

Allow clients to connect to redis from the public internet for service nodes that are in a project VPC or another type of private network

redisUserConfig RedisRedisUserConfig

defines Redis specific additional configuration options. The following configuration options available:

serviceHost string

Redis hostname.

serviceIntegrations RedisServiceIntegration[]

Service integrations to specify when creating a service. Not applied after initial service creation

serviceName string

specifies the actual name of the service. The name cannot be changed later without destroying and re-creating the service so name should be picked based on intended service usage rather than current attributes.

servicePassword string

Password used for connecting to the Redis service, if applicable.

servicePort number

Redis port.

serviceType string

Aiven internal service type code

serviceUri string

URI for connecting to the Redis service.

serviceUsername string

Username used for connecting to the Redis service, if applicable.

state string

Service state.

terminationProtection boolean

prevents the service from being deleted. It is recommended to set this to true for all production services to prevent unintentional service deletion. This does not shield against deleting databases or topics but for services with backups much of the content can at least be restored from backup in case accidental deletion is done.

cloud_name str

defines where the cloud provider and region where the service is hosted in. This can be changed freely after service is created. Changing the value will trigger a potentially lengthy migration process for the service. Format is cloud provider name (aws, azure, do google, upcloud, etc.), dash, and the cloud provider specific region name. These are documented on each Cloud provider’s own support articles, like here for Google and here for AWS.

components Sequence[RedisComponentArgs]

Service component information objects

maintenance_window_dow str

day of week when maintenance operations should be performed. On monday, tuesday, wednesday, etc.

maintenance_window_time str

time of day when maintenance operations should be performed. UTC time in HH:mm:ss format.

plan str

defines what kind of computing resources are allocated for the service. It can be changed after creation, though there are some restrictions when going to a smaller plan such as the new plan must have sufficient amount of disk space to store all current data and switching to a plan with fewer nodes might not be supported. The basic plan names are hobbyist, startup-x, business-x and premium-x where x is (roughly) the amount of memory on each node (also other attributes like number of CPUs and amount of disk space varies but naming is based on memory). The exact options can be seen from the Aiven web console’s Create Service dialog.

project str

identifies the project the service belongs to. To set up proper dependency between the project and the service, refer to the project as shown in the above example. Project cannot be changed later without destroying and re-creating the service.

project_vpc_id str

optionally specifies the VPC the service should run in. If the value is not set the service is not run inside a VPC. When set, the value should be given as a reference as shown above to set up dependencies correctly and the VPC must be in the same cloud and region as the service itself. Project can be freely moved to and from VPC after creation but doing so triggers migration to new servers so the operation can take significant amount of time to complete if the service has a lot of data.

redis RedisRedisArgs

Allow clients to connect to redis from the public internet for service nodes that are in a project VPC or another type of private network

redis_user_config RedisRedisUserConfigArgs

defines Redis specific additional configuration options. The following configuration options available:

service_host str

Redis hostname.

service_integrations Sequence[RedisServiceIntegrationArgs]

Service integrations to specify when creating a service. Not applied after initial service creation

service_name str

specifies the actual name of the service. The name cannot be changed later without destroying and re-creating the service so name should be picked based on intended service usage rather than current attributes.

service_password str

Password used for connecting to the Redis service, if applicable.

service_port int

Redis port.

service_type str

Aiven internal service type code

service_uri str

URI for connecting to the Redis service.

service_username str

Username used for connecting to the Redis service, if applicable.

state str

Service state.

termination_protection bool

prevents the service from being deleted. It is recommended to set this to true for all production services to prevent unintentional service deletion. This does not shield against deleting databases or topics but for services with backups much of the content can at least be restored from backup in case accidental deletion is done.

Supporting Types

RedisComponent

Component string
Host string

Hostname or IP address of the server where to migrate data from

KafkaAuthenticationMethod string
Port int

Port number of the server where to migrate data from

Route string
Ssl bool

The server where to migrate data from is secured with SSL

Usage string
Component string
Host string

Hostname or IP address of the server where to migrate data from

KafkaAuthenticationMethod string
Port int

Port number of the server where to migrate data from

Route string
Ssl bool

The server where to migrate data from is secured with SSL

Usage string
component string
host string

Hostname or IP address of the server where to migrate data from

kafkaAuthenticationMethod string
port number

Port number of the server where to migrate data from

route string
ssl boolean

The server where to migrate data from is secured with SSL

usage string
component str
host str

Hostname or IP address of the server where to migrate data from

kafka_authentication_method str
port int

Port number of the server where to migrate data from

route str
ssl bool

The server where to migrate data from is secured with SSL

usage str

RedisRedisUserConfig

IpFilters List<string>

Allow incoming connections from CIDR address block, e.g. 10.20.0.0/16

Migration RedisRedisUserConfigMigrationArgs

Migrate data from existing server

PrivateAccess RedisRedisUserConfigPrivateAccessArgs

Allow access to selected service ports from private networks

ProjectToForkFrom string

Name of another project to fork a service from. This has effect only when a new service is being created.

PublicAccess RedisRedisUserConfigPublicAccessArgs

Allow access to selected service ports from the public Internet

RecoveryBasebackupName string

Name of the basebackup to restore in forked service

RedisIoThreads string

Redis IO thread count * redis_lfu_decay_time" - (Optional) LFU maxmemory-policy counter decay time in minutes

RedisLfuDecayTime string
RedisLfuLogFactor string

Counter logarithm factor for volatile-lfu and allkeys-lfu maxmemory-policies

RedisMaxmemoryPolicy string

Redis maxmemory-policy

RedisNotifyKeyspaceEvents string

Set notify-keyspace-events option

RedisSsl string

Require SSL to access Redis

RedisTimeout string

Redis idle connection timeout * service_to_fork_from" - (Optional) Name of another service to fork from. This has effect only when a new service is being created.

ServiceToForkFrom string
IpFilters []string

Allow incoming connections from CIDR address block, e.g. 10.20.0.0/16

Migration RedisRedisUserConfigMigration

Migrate data from existing server

PrivateAccess RedisRedisUserConfigPrivateAccess

Allow access to selected service ports from private networks

ProjectToForkFrom string

Name of another project to fork a service from. This has effect only when a new service is being created.

PublicAccess RedisRedisUserConfigPublicAccess

Allow access to selected service ports from the public Internet

RecoveryBasebackupName string

Name of the basebackup to restore in forked service

RedisIoThreads string

Redis IO thread count * redis_lfu_decay_time" - (Optional) LFU maxmemory-policy counter decay time in minutes

RedisLfuDecayTime string
RedisLfuLogFactor string

Counter logarithm factor for volatile-lfu and allkeys-lfu maxmemory-policies

RedisMaxmemoryPolicy string

Redis maxmemory-policy

RedisNotifyKeyspaceEvents string

Set notify-keyspace-events option

RedisSsl string

Require SSL to access Redis

RedisTimeout string

Redis idle connection timeout * service_to_fork_from" - (Optional) Name of another service to fork from. This has effect only when a new service is being created.

ServiceToForkFrom string
ipFilters string[]

Allow incoming connections from CIDR address block, e.g. 10.20.0.0/16

migration RedisRedisUserConfigMigration

Migrate data from existing server

privateAccess RedisRedisUserConfigPrivateAccess

Allow access to selected service ports from private networks

projectToForkFrom string

Name of another project to fork a service from. This has effect only when a new service is being created.

publicAccess RedisRedisUserConfigPublicAccess

Allow access to selected service ports from the public Internet

recoveryBasebackupName string

Name of the basebackup to restore in forked service

redisIoThreads string

Redis IO thread count * redis_lfu_decay_time" - (Optional) LFU maxmemory-policy counter decay time in minutes

redisLfuDecayTime string
redisLfuLogFactor string

Counter logarithm factor for volatile-lfu and allkeys-lfu maxmemory-policies

redisMaxmemoryPolicy string

Redis maxmemory-policy

redisNotifyKeyspaceEvents string

Set notify-keyspace-events option

redisSsl string

Require SSL to access Redis

redisTimeout string

Redis idle connection timeout * service_to_fork_from" - (Optional) Name of another service to fork from. This has effect only when a new service is being created.

serviceToForkFrom string
ip_filters Sequence[str]

Allow incoming connections from CIDR address block, e.g. 10.20.0.0/16

migration RedisRedisUserConfigMigrationArgs

Migrate data from existing server

private_access RedisRedisUserConfigPrivateAccessArgs

Allow access to selected service ports from private networks

project_to_fork_from str

Name of another project to fork a service from. This has effect only when a new service is being created.

public_access RedisRedisUserConfigPublicAccessArgs

Allow access to selected service ports from the public Internet

recovery_basebackup_name str

Name of the basebackup to restore in forked service

redis_io_threads str

Redis IO thread count * redis_lfu_decay_time" - (Optional) LFU maxmemory-policy counter decay time in minutes

redis_lfu_decay_time str
redis_lfu_log_factor str

Counter logarithm factor for volatile-lfu and allkeys-lfu maxmemory-policies

redis_maxmemory_policy str

Redis maxmemory-policy

redis_notify_keyspace_events str

Set notify-keyspace-events option

redis_ssl str

Require SSL to access Redis

redis_timeout str

Redis idle connection timeout * service_to_fork_from" - (Optional) Name of another service to fork from. This has effect only when a new service is being created.

service_to_fork_from str

RedisRedisUserConfigMigration

Dbname string

Database name for bootstrapping the initial connection

Host string

Hostname or IP address of the server where to migrate data from

Password string

Password for authentication with the server where to migrate data from

Port string

Port number of the server where to migrate data from

Ssl string

The server where to migrate data from is secured with SSL

Username string

User name for authentication with the server where to migrate data from

Dbname string

Database name for bootstrapping the initial connection

Host string

Hostname or IP address of the server where to migrate data from

Password string

Password for authentication with the server where to migrate data from

Port string

Port number of the server where to migrate data from

Ssl string

The server where to migrate data from is secured with SSL

Username string

User name for authentication with the server where to migrate data from

dbname string

Database name for bootstrapping the initial connection

host string

Hostname or IP address of the server where to migrate data from

password string

Password for authentication with the server where to migrate data from

port string

Port number of the server where to migrate data from

ssl string

The server where to migrate data from is secured with SSL

username string

User name for authentication with the server where to migrate data from

dbname str

Database name for bootstrapping the initial connection

host str

Hostname or IP address of the server where to migrate data from

password str

Password for authentication with the server where to migrate data from

port str

Port number of the server where to migrate data from

ssl str

The server where to migrate data from is secured with SSL

username str

User name for authentication with the server where to migrate data from

RedisRedisUserConfigPrivateAccess

Prometheus string

Allow clients to connect to prometheus from the public internet for service nodes that are in a project VPC or another type of private network

Redis string

Allow clients to connect to redis from the public internet for service nodes that are in a project VPC or another type of private network

Prometheus string

Allow clients to connect to prometheus from the public internet for service nodes that are in a project VPC or another type of private network

Redis string

Allow clients to connect to redis from the public internet for service nodes that are in a project VPC or another type of private network

prometheus string

Allow clients to connect to prometheus from the public internet for service nodes that are in a project VPC or another type of private network

redis string

Allow clients to connect to redis from the public internet for service nodes that are in a project VPC or another type of private network

prometheus str

Allow clients to connect to prometheus from the public internet for service nodes that are in a project VPC or another type of private network

redis str

Allow clients to connect to redis from the public internet for service nodes that are in a project VPC or another type of private network

RedisRedisUserConfigPublicAccess

Prometheus string

Allow clients to connect to prometheus from the public internet for service nodes that are in a project VPC or another type of private network

Redis string

Allow clients to connect to redis from the public internet for service nodes that are in a project VPC or another type of private network

Prometheus string

Allow clients to connect to prometheus from the public internet for service nodes that are in a project VPC or another type of private network

Redis string

Allow clients to connect to redis from the public internet for service nodes that are in a project VPC or another type of private network

prometheus string

Allow clients to connect to prometheus from the public internet for service nodes that are in a project VPC or another type of private network

redis string

Allow clients to connect to redis from the public internet for service nodes that are in a project VPC or another type of private network

prometheus str

Allow clients to connect to prometheus from the public internet for service nodes that are in a project VPC or another type of private network

redis str

Allow clients to connect to redis from the public internet for service nodes that are in a project VPC or another type of private network

RedisServiceIntegration

Package Details

Repository
https://github.com/pulumi/pulumi-aiven
License
Apache-2.0
Notes
This Pulumi package is based on the aiven Terraform Provider.