Documentation ¶
Overview ¶
Package v1alpha1 contains managed resources for AWS Redshift services such as Cluster. +kubebuilder:object:generate=true +groupName=redshift.aws.crossplane.io +versionName=v1alpha1
Index ¶
- Constants
- Variables
- type Cluster
- func (in *Cluster) DeepCopy() *Cluster
- func (in *Cluster) DeepCopyInto(out *Cluster)
- func (in *Cluster) DeepCopyObject() runtime.Object
- func (mg *Cluster) GetCondition(ct xpv1.ConditionType) xpv1.Condition
- func (mg *Cluster) GetDeletionPolicy() xpv1.DeletionPolicy
- func (mg *Cluster) GetProviderConfigReference() *xpv1.Reference
- func (mg *Cluster) GetProviderReference() *xpv1.Reference
- func (mg *Cluster) GetPublishConnectionDetailsTo() *xpv1.PublishConnectionDetailsTo
- func (mg *Cluster) GetWriteConnectionSecretToReference() *xpv1.SecretReference
- func (mg *Cluster) ResolveReferences(ctx context.Context, c client.Reader) error
- func (mg *Cluster) SetConditions(c ...xpv1.Condition)
- func (mg *Cluster) SetDeletionPolicy(r xpv1.DeletionPolicy)
- func (mg *Cluster) SetProviderConfigReference(r *xpv1.Reference)
- func (mg *Cluster) SetProviderReference(r *xpv1.Reference)
- func (mg *Cluster) SetPublishConnectionDetailsTo(r *xpv1.PublishConnectionDetailsTo)
- func (mg *Cluster) SetWriteConnectionSecretToReference(r *xpv1.SecretReference)
- type ClusterList
- type ClusterNode
- type ClusterObservation
- type ClusterParameterGroupStatus
- type ClusterParameterStatus
- type ClusterParameters
- type ClusterSecurityGroupMembership
- type ClusterSnapshotCopyStatus
- type ClusterSpec
- type ClusterStatus
- type DataTransferProgress
- type DeferredMaintenanceWindow
- type ElasticIPStatus
- type Endpoint
- type HSMStatus
- type RestoreStatus
- type Tag
- type VPCSecurityGroupMembership
Constants ¶
const ( // The cluster is healthy and available StateAvailable = "available" // The cluster is being created. The cluster is inaccessible while it is being created. StateCreating = "creating" // The cluster is being deleted. StateDeleting = "deleting" // The cluster is being modified. StateModifying = "modifying" // The cluster has failed and Amazon Redshift can't recover it. Perform a point-in-time restore to the latest restorable time of the Cluster to recover the data. StateFailed = "failed" )
Redshift cluster states.
const ( Group = "redshift.aws.crossplane.io" Version = "v1alpha1" )
Package type metadata.
Variables ¶
var ( // SchemeGroupVersion is group version used to register these objects SchemeGroupVersion = schema.GroupVersion{Group: Group, Version: Version} // SchemeBuilder is used to add go types to the GroupVersionKind scheme SchemeBuilder = &scheme.Builder{GroupVersion: SchemeGroupVersion} )
var ( ClusterKind = reflect.TypeOf(Cluster{}).Name() ClusterGroupKind = schema.GroupKind{Group: Group, Kind: ClusterKind}.String() ClusterKindAPIVersion = ClusterKind + "." + SchemeGroupVersion.String() ClusterGroupVersionKind = SchemeGroupVersion.WithKind(ClusterKind) )
Cluster type metadata.
Functions ¶
This section is empty.
Types ¶
type Cluster ¶
type Cluster struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec ClusterSpec `json:"spec"` Status ClusterStatus `json:"status,omitempty"` }
A Cluster is a managed resource that represents an AWS Redshift cluster. +kubebuilder:printcolumn:name="READY",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].status" +kubebuilder:printcolumn:name="SYNCED",type="string",JSONPath=".status.conditions[?(@.type=='Synced')].status" +kubebuilder:printcolumn:name="STATE",type="string",JSONPath=".status.atProvider.clusterStatus" +kubebuilder:printcolumn:name="AGE",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:subresource:status +kubebuilder:resource:scope=Cluster,categories={crossplane,managed,aws}
func (*Cluster) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Cluster.
func (*Cluster) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Cluster) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*Cluster) GetCondition ¶
func (mg *Cluster) GetCondition(ct xpv1.ConditionType) xpv1.Condition
GetCondition of this Cluster.
func (*Cluster) GetDeletionPolicy ¶
func (mg *Cluster) GetDeletionPolicy() xpv1.DeletionPolicy
GetDeletionPolicy of this Cluster.
func (*Cluster) GetProviderConfigReference ¶
GetProviderConfigReference of this Cluster.
func (*Cluster) GetProviderReference ¶
GetProviderReference of this Cluster. Deprecated: Use GetProviderConfigReference.
func (*Cluster) GetPublishConnectionDetailsTo ¶
func (mg *Cluster) GetPublishConnectionDetailsTo() *xpv1.PublishConnectionDetailsTo
GetPublishConnectionDetailsTo of this Cluster.
func (*Cluster) GetWriteConnectionSecretToReference ¶
func (mg *Cluster) GetWriteConnectionSecretToReference() *xpv1.SecretReference
GetWriteConnectionSecretToReference of this Cluster.
func (*Cluster) ResolveReferences ¶
ResolveReferences of this Cluster
func (*Cluster) SetConditions ¶
SetConditions of this Cluster.
func (*Cluster) SetDeletionPolicy ¶
func (mg *Cluster) SetDeletionPolicy(r xpv1.DeletionPolicy)
SetDeletionPolicy of this Cluster.
func (*Cluster) SetProviderConfigReference ¶
SetProviderConfigReference of this Cluster.
func (*Cluster) SetProviderReference ¶
SetProviderReference of this Cluster. Deprecated: Use SetProviderConfigReference.
func (*Cluster) SetPublishConnectionDetailsTo ¶
func (mg *Cluster) SetPublishConnectionDetailsTo(r *xpv1.PublishConnectionDetailsTo)
SetPublishConnectionDetailsTo of this Cluster.
func (*Cluster) SetWriteConnectionSecretToReference ¶
func (mg *Cluster) SetWriteConnectionSecretToReference(r *xpv1.SecretReference)
SetWriteConnectionSecretToReference of this Cluster.
type ClusterList ¶
type ClusterList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []Cluster `json:"items"` }
ClusterList contains a list of Cluster
func (*ClusterList) DeepCopy ¶
func (in *ClusterList) DeepCopy() *ClusterList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterList.
func (*ClusterList) DeepCopyInto ¶
func (in *ClusterList) DeepCopyInto(out *ClusterList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ClusterList) DeepCopyObject ¶
func (in *ClusterList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*ClusterList) GetItems ¶
func (l *ClusterList) GetItems() []resource.Managed
GetItems of this ClusterList.
type ClusterNode ¶
type ClusterNode struct { // Whether the node is a leader node or a compute node. NodeRole string `json:"nodeRole,omitempty"` // The private IP address of a node within a cluster. PrivateIPAddress string `json:"privateIPAddress,omitempty"` // The public IP address of a node within a cluster. PublicIPAddress string `json:"publicIPAddress,omitempty"` }
ClusterNode is the identifier of a node in a cluster.
func (*ClusterNode) DeepCopy ¶
func (in *ClusterNode) DeepCopy() *ClusterNode
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterNode.
func (*ClusterNode) DeepCopyInto ¶
func (in *ClusterNode) DeepCopyInto(out *ClusterNode)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ClusterObservation ¶
type ClusterObservation struct { // ClusterAvailabilityStatus is the availability status of the cluster. ClusterAvailabilityStatus string `json:"clusterAvailabilityStatus,omitempty"` // ClusterCreateTime is the date and time that the cluster was created. ClusterCreateTime *metav1.Time `json:"clusterCreateTime,omitempty"` // The nodes in the cluster. ClusterNodes []ClusterNode `json:"clusterNodes,omitempty"` // The list of cluster parameter groups that are associated with this cluster. // Each parameter group in the list is returned with its status. ClusterParameterGroups []ClusterParameterGroupStatus `json:"clusterParameterGroups,omitempty"` // The public key for the cluster. ClusterPublicKey string `json:"clusterPublicKey,omitempty"` // The specific revision number of the database in the cluster. ClusterRevisionNumber string `json:"clusterRevisionNumber,omitempty"` // A value that returns the destination region and retention period that are // configured for cross-region snapshot copy. ClusterSnapshotCopyStatus ClusterSnapshotCopyStatus `json:"clusterSnapshotCopyStatus,omitempty"` // ClusterStatus is the current state of the cluster. ClusterStatus string `json:"clusterStatus,omitempty"` // Describes the status of a cluster while it is in the process of resizing // with an incremental resize. DataTransferProgress DataTransferProgress `json:"dataTransferProgress,omitempty"` // Describes a group of DeferredMaintenanceWindow objects. DeferredMaintenanceWindows []DeferredMaintenanceWindow `json:"deferredMaintenanceWindows,omitempty"` // The status of the elastic IP (EIP) address. ElasticIPStatus ElasticIPStatus `json:"elasticIPStatus,omitempty"` // The number of nodes that you can resize the cluster to with the elastic resize // method. ElasticResizeNumberOfNodeOptions string `json:"elasticResizeNumberOfNodeOptions,omitempty"` // Endpoint specifies the connection endpoint. Endpoint Endpoint `json:"endpoint,omitempty"` // The date and time when the next snapshot is expected to be taken for clusters // with a valid snapshot schedule and backups enabled. ExpectedNextSnapshotScheduleTime *metav1.Time `json:"expectedNextSnapshotScheduleTime,omitempty"` // The status of next expected snapshot for clusters having a valid snapshot // schedule and backups enabled. Possible values are the following: // // * OnTrack - The next snapshot is expected to be taken on time. // // * Pending - The next snapshot is pending to be taken. ExpectedNextSnapshotScheduleTimeStatus string `json:"expectedNextSnapshotScheduleTimeStatus,omitempty"` // A value that reports whether the Amazon Redshift cluster has finished applying // any hardware security module (HSM) settings changes specified in a modify // cluster command. // // Values: active, applying HSMStatus HSMStatus `json:"hsmStatus,omitempty"` // The status of a modify operation, if any, initiated for the cluster. ModifyStatus string `json:"modifyStatus,omitempty"` // The date and time in UTC when system maintenance can begin. NextMaintenanceWindowStartTime *metav1.Time `json:"nextMaintenanceWindowStartTime,omitempty"` // Cluster operations that are waiting to be started. PendingActions []string `json:"pendingActions,omitempty"` // The current state of the cluster snapshot schedule. SnapshotScheduleState string `json:"snapshotScheduleState,omitempty"` // The identifier of the VPC the cluster is in, if the cluster is in a VPC. VPCID string `json:"vpcId,omitempty"` }
ClusterObservation is the representation of the current state that is observed.
func (*ClusterObservation) DeepCopy ¶
func (in *ClusterObservation) DeepCopy() *ClusterObservation
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterObservation.
func (*ClusterObservation) DeepCopyInto ¶
func (in *ClusterObservation) DeepCopyInto(out *ClusterObservation)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ClusterParameterGroupStatus ¶
type ClusterParameterGroupStatus struct { // The list of parameter statuses. // // For more information about parameters and parameter groups, go to Amazon // Redshift Parameter Groups (https://docs.aws.amazon.com/redshift/latest/mgmt/working-with-parameter-groups.html) // in the Amazon Redshift Cluster Management Guide. ClusterParameterStatusList []ClusterParameterStatus `json:"clusterParameterStatusList,omitempty"` // The status of parameter updates. ParameterApplyStatus string `json:"parameterApplyStatus,omitempty"` // The name of the cluster parameter group. ParameterGroupName string `json:"parameterGroupName,omitempty"` }
ClusterParameterGroupStatus is the status of the Cluster parameter group.
func (*ClusterParameterGroupStatus) DeepCopy ¶
func (in *ClusterParameterGroupStatus) DeepCopy() *ClusterParameterGroupStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterParameterGroupStatus.
func (*ClusterParameterGroupStatus) DeepCopyInto ¶
func (in *ClusterParameterGroupStatus) DeepCopyInto(out *ClusterParameterGroupStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ClusterParameterStatus ¶
type ClusterParameterStatus struct { // The error that prevented the parameter from being applied to the database. ParameterApplyErrorDescription string `json:"parameterApplyErrorDescription,omitempty"` // The status of the parameter that indicates whether the parameter is in sync // with the database, waiting for a cluster reboot, or encountered an error // when being applied. // // The following are possible statuses and descriptions. // // * in-sync: The parameter value is in sync with the database. // // * pending-reboot: The parameter value will be applied after the cluster // reboots. // // * applying: The parameter value is being applied to the database. // // * invalid-parameter: Cannot apply the parameter value because it has an // invalid value or syntax. // // * apply-deferred: The parameter contains static property changes. The // changes are deferred until the cluster reboots. // // * apply-error: Cannot connect to the cluster. The parameter change will // be applied after the cluster reboots. // // * unknown-error: Cannot apply the parameter change right now. The change // will be applied after the cluster reboots. ParameterApplyStatus string `json:"parameterApplyStatus,omitempty"` // The name of the parameter. ParameterName string `json:"parameterName,omitempty"` }
ClusterParameterStatus describes the status of a Cluster parameter.
func (*ClusterParameterStatus) DeepCopy ¶
func (in *ClusterParameterStatus) DeepCopy() *ClusterParameterStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterParameterStatus.
func (*ClusterParameterStatus) DeepCopyInto ¶
func (in *ClusterParameterStatus) DeepCopyInto(out *ClusterParameterStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ClusterParameters ¶
type ClusterParameters struct { // Region is the region you'd like the Cluster to be created in. Region string `json:"region"` // NodeType is the node type defining its size and compute capacity to be // provisioned for the cluster. For information about node types, // go to Working with Clusters (https://docs.aws.amazon.com/redshift/latest/mgmt/working-with-clusters.html#how-many-nodes) // in the Amazon Redshift Cluster Management Guide. NodeType string `json:"nodeType"` // MasterUsername is the user name associated with the master user account for the cluster that // is being created. // Constraints: // * Must be 1 - 128 alphanumeric characters. The user name can't be PUBLIC. // * First character must be a letter. // * Cannot be a reserved word. A list of reserved words can be found in // Reserved Words (https://docs.aws.amazon.com/redshift/latest/dg/r_pg_keywords.html) // in the Amazon Redshift Database Developer Guide. // +immutable MasterUsername string `json:"masterUsername"` // AllowVersionUpgrade indicates that major engine upgrades are applied automatically to the // cluster during the maintenance window. // default=true // +optional AllowVersionUpgrade *bool `json:"allowVersionUpgrade,omitempty"` // AutomatedSnapshotRetentionPeriod is the number of days for which // automated backups are retained. Setting this parameter to a positive // number enables backups. Setting this parameter to 0 disables automated backups. // default=1 // +kubebuilder:validation:Maximum=35 // +kubebuilder:validation:Minimum=0 // +optional AutomatedSnapshotRetentionPeriod *int32 `json:"automatedSnapshotRetentionPeriod,omitempty"` // AvailabilityZone is the EC2 Availability Zone in which you want // Amazon Redshift to provision the cluster. // Default: A random, system-chosen Availability Zone in the region that is // specified by the endpoint. // Example: us-east-2d // Constraint: The specified Availability Zone must be in the same region as // the current endpoint. The Availability Zone parameter can't be specified // if the MultiAZ parameter is set to true. // The specified Availability Zone must be in the same AWS Region as the current endpoint. // +optional AvailabilityZone *string `json:"availabilityZone,omitempty"` // ClusterParameterGroupName is the name of the cluster parameter group to use for the cluster. // Default: The default Amazon Redshift cluster parameter group. For information // about the default parameter group, go to Working with Amazon Redshift Parameter // Groups (https://docs.aws.amazon.com/redshift/latest/mgmt/working-with-parameter-groups.html) // +optional ClusterParameterGroupName *string `json:"clusterParameterGroupName,omitempty"` // SecurityGroups is a list of security groups to associate with this cluster. // Default: The default cluster security group for Amazon Redshift. // +optional ClusterSecurityGroups []string `json:"clusterSecurityGroups,omitempty"` // ClusterSecurityGroupRefs are references to ClusterSecurityGroups used to set // the ClusterSecurityGroups. // +immutable // +optional ClusterSecurityGroupRefs []xpv1.Reference `json:"clusterSecurityGroupRefs,omitempty"` // ClusterSecurityGroupSelector selects references to ClusterSecurityGroups used // to set the ClusterSecurityGroups. // +immutable // +optional ClusterSecurityGroupSelector *xpv1.Selector `json:"clusterSecurityGroupSelector,omitempty"` // ClusterSubnetGroupName is the name of a cluster subnet group to be associated with this cluster. // If this parameter is not provided the resulting cluster will be deployed // outside virtual private cloud (VPC). // +optional ClusterSubnetGroupName *string `json:"clusterSubnetGroupName,omitempty"` // ClusterType is the type of the cluster you want. // When cluster type is specified as // * single-node, the NumberOfNodes parameter is not required. // * multi-node, the NumberOfNodes parameter is required. // default=multi-node // +kubebuilder:validation:Enum=multi-node;single-node // +optional ClusterType *string `json:"clusterType,omitempty"` // ClusterVersion is the version of the Amazon Redshift engine software // that you want to deploy on the cluster. The version selected runs on all the nodes in the cluster. // Constraints: Only version 1.0 is currently available. // +optional ClusterVersion *string `json:"clusterVersion,omitempty"` // DBName is the name of the first database to be created when the cluster is created. // To create additional databases after the cluster is created, connect to the // cluster with a SQL client and use SQL commands to create a database. For // more information, go to Create a Database (https://docs.aws.amazon.com/redshift/latest/dg/t_creating_database.html) // in the Amazon Redshift Database Developer Guide. // Constraints: // * Must contain 1 to 64 alphanumeric characters. // * Must contain only lowercase letters. // * Cannot be a word that is reserved by the service. A list of reserved // words can be found in Reserved Words (https://docs.aws.amazon.com/redshift/latest/dg/r_pg_keywords.html) // in the Amazon Redshift Database Developer Guide. // default=dev // +optional DBName *string `json:"dbName,omitempty"` // The Elastic IP (EIP) address for the cluster. // Constraints: The cluster must be provisioned in EC2-VPC and publicly-accessible // through an Internet gateway. For more information about provisioning clusters // in EC2-VPC, go to Supported Platforms to Launch Your Cluster (https://docs.aws.amazon.com/redshift/latest/mgmt/working-with-clusters.html#cluster-platforms) // in the Amazon Redshift Cluster Management Guide. // +optional ElasticIP *string `json:"elasticIP,omitempty"` // Encrypted defines whether your data in the cluster will be encrypted at rest or not. // default=false // +optional Encrypted *bool `json:"encrypted,omitempty"` // EnhancedVPCRouting specifies whether to create the cluster with enhanced VPC // routing enabled. To create a cluster that uses enhanced VPC routing, the // cluster must be in a VPC. For more information, see Enhanced VPC Routing // (https://docs.aws.amazon.com/redshift/latest/mgmt/enhanced-vpc-routing.html) // in the Amazon Redshift Cluster Management Guide. // If this option is true, enhanced VPC routing is enabled. // default=false // +optional EnhancedVPCRouting *bool `json:"enhancedVPCRouting,omitempty"` // FinalClusterSnapshotIdentifier is the identifier of the final snapshot // that is to be created immediately before deleting the cluster. // If this parameter is provided, SkipFinalClusterSnapshot must be false. // Constraints: // * Must be 1 to 255 alphanumeric characters. // * First character must be a letter. // * Cannot end with a hyphen or contain two consecutive hyphens. // +optional FinalClusterSnapshotIdentifier *string `json:"finalClusterSnapshotIdentifier,omitempty"` // FinalClusterSnapshotRetentionPeriod is the number of days that // a manual snapshot is retained. // If the value is -1, the manual snapshot is retained indefinitely. // The value must be either -1 or an integer between 1 and 3,653. // default -1 // +optional FinalClusterSnapshotRetentionPeriod *int32 `json:"finalClusterSnapshotRetentionPeriod,omitempty"` // HSMClientCertificateIdentifier specifies the name of the HSM client certificate // the Amazon Redshift cluster uses to retrieve the data encryption keys stored in an HSM. // +optional HSMClientCertificateIdentifier *string `json:"hsmClientCertificateIdentifier,omitempty"` // HSMConfigurationIdentifier specifies the name of the HSM configuration that // contains the information the Amazon Redshift cluster can use to retrieve // and store keys in an HSM. // +optional HSMConfigurationIdentifier *string `json:"hsmConfigurationIdentifier,omitempty"` // IAMRoles is a list of AWS Identity and Access Management (IAM) roles that can be used // by the cluster to access other AWS services. You must supply the IAM roles // in their Amazon Resource Name (ARN) format. You can supply up to 10 IAM roles // in a single request. // A cluster can have up to 10 IAM roles associated with it at any time. // kubebuilder:validation:MaxItems=10 // +optional IAMRoles []string `json:"iamRoles,omitempty"` // IAMRoleRefs are references to IAMRoles used to set // the IAMRoles. // +immutable // +optional IAMRoleRefs []xpv1.Reference `json:"iamRoleRefs,omitempty"` // IAMRoleSelector selects references to IAMRoles used // to set the IAMRoles. // +immutable // +optional IAMRoleSelector *xpv1.Selector `json:"iamRoleSelector,omitempty"` // KMSKeyID is the Amazon Resource Name (ARN) for the KMS encryption // key. If you are creating a cluster with the same AWS account that owns // the KMS encryption key used to encrypt the new cluster, then you can // use the KMS key alias instead of the ARN for the KM encryption key. // +optional KMSKeyID *string `json:"kmsKeyID,omitempty"` // MaintenanceTrackName an optional parameter for the name of the maintenance track for the cluster. // +optional MaintenanceTrackName *string `json:"maintenanceTrackName,omitempty"` // ManualSnapshotRetentionPeriod is the default number of days to retain a manual snapshot. // If the value is -1, the snapshot is retained indefinitely. // This setting doesn't change the retention period of existing snapshots. // default=1 // +kubebuilder:validation:Maximum=3653 // +optional ManualSnapshotRetentionPeriod *int32 `json:"manualSnapshotRetentionPeriod,omitempty"` // NewMasterUserPassword is the new password to be associated with the master user account // for the cluster that has being created. // Set this value if you want to change the existing password of the cluster. // Constraints: // * Must be between 8 and 64 characters in length. // * Must contain at least one uppercase letter. // * Must contain at least one lowercase letter. // * Must contain one number. // * Can be any printable ASCII character (ASCII code 33 to 126) except ' // (single quote), " (double quote), \, /, @, or space. // +optional NewMasterUserPassword *string `json:"newMasterUserPassword,omitempty"` // NewClusterIdentifier is the new identifier you want to use for the cluster. // +optional NewClusterIdentifier *string `json:"newClusterIdentifier,omitempty"` // NumberOfNodes defines the number of compute nodes in the cluster. // This parameter is required when the ClusterType parameter is specified as multi-node. // For information about determining how many nodes you need, go to Working // with Clusters (https://docs.aws.amazon.com/redshift/latest/mgmt/working-with-clusters.html#how-many-nodes) // in the Amazon Redshift Cluster Management Guide. // If you don't specify this parameter, you get a single-node cluster. When // requesting a multi-node cluster, you must specify the number of nodes that // you want in the cluster. // default=1 // +kubebuilder:validation:Maximum=100 // +kubebuilder:validation:Minimum=1 // +optional NumberOfNodes *int32 `json:"numberOfNodes,omitempty"` // Port specifies the port number on which the cluster accepts incoming connections. // The cluster is accessible only via the JDBC and ODBC connection strings. // Part of the connection string requires the port on which the cluster will // listen for incoming connections. // default=5439 // +kubebuilder:validation:Maximum=65535 // +kubebuilder:validation:Minimum=1150 // +optional Port *int32 `json:"port,omitempty"` // PreferredMaintenanceWindow is the weekly time range (in UTC) during which // automated cluster maintenance can occur. // Default: A 30-minute window selected at random from an 8-hour block of time // per region, occurring on a random day of the week. For more information about // the time blocks for each region, see Maintenance Windows (https://docs.aws.amazon.com/redshift/latest/mgmt/working-with-clusters.html#rs-maintenance-windows) // in Amazon Redshift Cluster Management Guide. // Constraints: Minimum 30-minute window. // +optional PreferredMaintenanceWindow *string `json:"preferredMaintenanceWindow,omitempty"` // PubliclyAccessible is to specify if the cluster can be accessed from a public network. // +optional PubliclyAccessible *bool `json:"publiclyAccessible,omitempty"` // SkipFinalClusterSnapshot determines whether a final snapshot of the cluster // is created before Amazon Redshift deletes the cluster. // If true, a final cluster snapshot is not created. // If false, a final cluster snapshot is created before the cluster is deleted. // The FinalClusterSnapshotIdentifier parameter must be specified if SkipFinalClusterSnapshot // is false. // Default: false // +optional SkipFinalClusterSnapshot *bool `json:"skipFinalClusterSnapshot,omitempty"` // SnapshotScheduleIdentifier is a unique identifier for the snapshot schedule. // +optional SnapshotScheduleIdentifier *string `json:"snapshotScheduleIdentifier,omitempty"` // Tags indicates a list of tags for the clusters. // +optional Tags []Tag `json:"tags,omitempty"` // VPCSecurityGroupIDs a list of Virtual Private Cloud (VPC) security groups to be associated with // the cluster. // +optional VPCSecurityGroupIDs []string `json:"vpcSecurityGroupIds,omitempty"` // VPCSecurityGroupIDRefs are references to VPCSecurityGroups used to set // the VPCSecurityGroupIDs. // +immutable // +optional VPCSecurityGroupIDRefs []xpv1.Reference `json:"vpcSecurityGroupIDRefs,omitempty"` // VPCSecurityGroupIDSelector selects references to VPCSecurityGroups used // to set the VPCSecurityGroupIDs. // +immutable // +optional VPCSecurityGroupIDSelector *xpv1.Selector `json:"vpcSecurityGroupIDSelector,omitempty"` }
ClusterParameters define the parameters available for an AWS Redshift cluster
func (*ClusterParameters) DeepCopy ¶
func (in *ClusterParameters) DeepCopy() *ClusterParameters
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterParameters.
func (*ClusterParameters) DeepCopyInto ¶
func (in *ClusterParameters) DeepCopyInto(out *ClusterParameters)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ClusterSecurityGroupMembership ¶
type ClusterSecurityGroupMembership struct { // The name of the cluster security group. ClusterSecurityGroupName string `json:"clusterSecurityGroupName,omitempty"` // The status of the cluster security group. Status string `json:"status,omitempty"` }
ClusterSecurityGroupMembership is used as a response element for queries on Cluster security.
func (*ClusterSecurityGroupMembership) DeepCopy ¶
func (in *ClusterSecurityGroupMembership) DeepCopy() *ClusterSecurityGroupMembership
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterSecurityGroupMembership.
func (*ClusterSecurityGroupMembership) DeepCopyInto ¶
func (in *ClusterSecurityGroupMembership) DeepCopyInto(out *ClusterSecurityGroupMembership)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ClusterSnapshotCopyStatus ¶
type ClusterSnapshotCopyStatus struct { // The destination region that snapshots are automatically copied to when cross-region // snapshot copy is enabled. DestinationRegion string `json:"destinationRegion,omitempty"` // The number of days that automated snapshots are retained in the destination // region after they are copied from a source region. If the value is -1, the // manual snapshot is retained indefinitely. // // The value must be either -1 or an integer between 1 and 3,653. ManualSnapshotRetentionPeriod int32 `json:"manualSnapshotRetentionPeriod,omitempty"` // The number of days that automated snapshots are retained in the destination // region after they are copied from a source region. RetentionPeriod int64 `json:"retentionPeriod,omitempty"` // The name of the snapshot copy grant. SnapshotCopyGrantName string `json:"snapshotCopyGrantName,omitempty"` }
ClusterSnapshotCopyStatus returns the destination region and retention period that are configured for cross-region snapshot copy.
func (*ClusterSnapshotCopyStatus) DeepCopy ¶
func (in *ClusterSnapshotCopyStatus) DeepCopy() *ClusterSnapshotCopyStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterSnapshotCopyStatus.
func (*ClusterSnapshotCopyStatus) DeepCopyInto ¶
func (in *ClusterSnapshotCopyStatus) DeepCopyInto(out *ClusterSnapshotCopyStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ClusterSpec ¶
type ClusterSpec struct { xpv1.ResourceSpec `json:",inline"` ForProvider ClusterParameters `json:"forProvider"` }
ClusterSpec defines the desired state of an AWS Redshift Cluster.
func (*ClusterSpec) DeepCopy ¶
func (in *ClusterSpec) DeepCopy() *ClusterSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterSpec.
func (*ClusterSpec) DeepCopyInto ¶
func (in *ClusterSpec) DeepCopyInto(out *ClusterSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ClusterStatus ¶
type ClusterStatus struct { xpv1.ResourceStatus `json:",inline"` AtProvider ClusterObservation `json:"atProvider,omitempty"` }
ClusterStatus represents the observed state of an AWS Redshift Cluster.
func (*ClusterStatus) DeepCopy ¶
func (in *ClusterStatus) DeepCopy() *ClusterStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterStatus.
func (*ClusterStatus) DeepCopyInto ¶
func (in *ClusterStatus) DeepCopyInto(out *ClusterStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DataTransferProgress ¶
type DataTransferProgress struct { // Describes the data transfer rate in MB's per second. CurrentRateInMegaBytesPerSecond int `json:"currentRateInMegaBytesPerSecond,omitempty"` // Describes the total amount of data that has been transferred in MB's. DataTransferredInMegaBytes int64 `json:"dataTransferredInMegaBytes,omitempty"` // Describes the number of seconds that have elapsed during the data transfer. ElapsedTimeInSeconds int64 `json:"elapsedTimeInSeconds,omitempty"` // Describes the estimated number of seconds remaining to complete the transfer. EstimatedTimeToCompletionInSeconds int64 `json:"estimatedTimeToCompletionInSeconds,omitempty"` // Describes the status of the cluster. While the transfer is in progress the // status is transferringdata. Status string `json:"status,omitempty"` // Describes the total amount of data to be transferred in megabytes. TotalDataInMegaBytes int64 `json:"totalDataInMegaBytes,omitempty"` }
DataTransferProgress describes the status of a cluster while it is in the process of resizing with an incremental resize.
func (*DataTransferProgress) DeepCopy ¶
func (in *DataTransferProgress) DeepCopy() *DataTransferProgress
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataTransferProgress.
func (*DataTransferProgress) DeepCopyInto ¶
func (in *DataTransferProgress) DeepCopyInto(out *DataTransferProgress)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DeferredMaintenanceWindow ¶
type DeferredMaintenanceWindow struct { // A timestamp for the end of the time period when we defer maintenance. DeferMaintenanceEndTime *metav1.Time `json:"deferMaintenanceEndTime,omitempty"` // A unique identifier for the maintenance window. DeferMaintenanceIdentifier string `json:"deferMaintenanceIdentifier,omitempty"` // A timestamp for the beginning of the time period when we defer maintenance. DeferMaintenanceStartTime *metav1.Time `json:"deferMaintenanceStartTime,omitempty"` }
DeferredMaintenanceWindow describes a deferred maintenance window
func (*DeferredMaintenanceWindow) DeepCopy ¶
func (in *DeferredMaintenanceWindow) DeepCopy() *DeferredMaintenanceWindow
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DeferredMaintenanceWindow.
func (*DeferredMaintenanceWindow) DeepCopyInto ¶
func (in *DeferredMaintenanceWindow) DeepCopyInto(out *DeferredMaintenanceWindow)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ElasticIPStatus ¶
type ElasticIPStatus struct { // The elastic IP (EIP) address for the cluster. ElasticIP string `json:"elasticIP,omitempty"` // The status of the elastic IP (EIP) address. Status string `json:"status,omitempty"` }
ElasticIPStatus describes the status of the elastic IP (EIP) address.
func (*ElasticIPStatus) DeepCopy ¶
func (in *ElasticIPStatus) DeepCopy() *ElasticIPStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ElasticIPStatus.
func (*ElasticIPStatus) DeepCopyInto ¶
func (in *ElasticIPStatus) DeepCopyInto(out *ElasticIPStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Endpoint ¶
type Endpoint struct { // Address specifies the DNS address of the cluster. Address string `json:"address,omitempty"` // Port specifies the port that the database engine is listening on. Port int32 `json:"port,omitempty"` }
Endpoint is used as a response element in the following actions:
- CreateCluster
- DescribeClusters
- DeleteCluster
Please also see https://docs.aws.amazon.com/goto/WebAPI/rds-2014-10-31/Endpoint
func (*Endpoint) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Endpoint.
func (*Endpoint) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type HSMStatus ¶
type HSMStatus struct { // Specifies the name of the HSM client certificate the Amazon Redshift cluster // uses to retrieve the data encryption keys stored in an HSM. HSMClientCertificateIdentifier string `json:"hsmClientCertificateIdentifier,omitempty"` // Specifies the name of the HSM configuration that contains the information // the Amazon Redshift cluster can use to retrieve and store keys in an HSM. HSMConfigurationIdentifier string `json:"hsmConfigurationIdentifier,omitempty"` // Reports whether the Amazon Redshift cluster has finished applying any HSM // settings changes specified in a modify cluster command. // // Values: active, applying Status string `json:"status,omitempty"` }
HSMStatus describes the status of changes to HSM settings.
func (*HSMStatus) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HSMStatus.
func (*HSMStatus) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RestoreStatus ¶
type RestoreStatus struct { // The number of megabytes per second being transferred from the backup storage. // Returns the average rate for a completed backup. This field is only updated // when you restore to DC2 and DS2 node types. CurrentRestoreRateInMegaBytesPerSecond float64 `json:"currentRestoreRateInMegaBytesPerSecond,omitempty"` // The amount of time an in-progress restore has been running, or the amount // of time it took a completed restore to finish. This field is only updated // when you restore to DC2 and DS2 node types. ElapsedTimeInSeconds int64 `json:"elapsedTimeInSeconds,omitempty"` // The estimate of the time remaining before the restore will complete. Returns // 0 for a completed restore. This field is only updated when you restore to // DC2 and DS2 node types. EstimatedTimeToCompletionInSeconds int64 `json:"estimatedTimeToCompletionInSeconds,omitempty"` // The number of megabytes that have been transferred from snapshot storage. // This field is only updated when you restore to DC2 and DS2 node types. ProgressInMegaBytes int64 `json:"progressInMegaBytes,omitempty"` // The size of the set of snapshot data used to restore the cluster. This field // is only updated when you restore to DC2 and DS2 node types. SnapshotSizeInMegaBytes int64 `json:"snapshotSizeInMegaBytes,omitempty"` // The status of the restore action. Returns starting, restoring, completed, // or failed. Status string `json:"status,omitempty"` }
RestoreStatus describes the status of a cluster restore action. Returns null if the cluster was not created by restoring a snapshot.
func (*RestoreStatus) DeepCopy ¶
func (in *RestoreStatus) DeepCopy() *RestoreStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RestoreStatus.
func (*RestoreStatus) DeepCopyInto ¶
func (in *RestoreStatus) DeepCopyInto(out *RestoreStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Tag ¶
type Tag struct { // The key of the tag. Key string `json:"tag"` // The value of the tag. Value string `json:"value"` }
Tag represetnt a key-pair metadata assigned to a Redshift Cluster
func (*Tag) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Tag.
func (*Tag) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type VPCSecurityGroupMembership ¶
type VPCSecurityGroupMembership struct { // The status of the VPC security group. Status string `json:"status"` // The identifier of the VPC security group. VPCSecurityGroupID string `json:"vpcSecurityGroupID"` }
VPCSecurityGroupMembership is used as a response element for queries on VPC security Can be removed after moving to v1beta1
func (*VPCSecurityGroupMembership) DeepCopy ¶
func (in *VPCSecurityGroupMembership) DeepCopy() *VPCSecurityGroupMembership
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VPCSecurityGroupMembership.
func (*VPCSecurityGroupMembership) DeepCopyInto ¶
func (in *VPCSecurityGroupMembership) DeepCopyInto(out *VPCSecurityGroupMembership)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.