crds/memorystore_v1alpha1_memorystoreinstance.yaml (463 lines of code) (raw):
# Copyright 2025 Google LLC
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
annotations:
cnrm.cloud.google.com/version: 1.128.0
creationTimestamp: null
labels:
cnrm.cloud.google.com/managed-by-kcc: "true"
cnrm.cloud.google.com/system: "true"
name: memorystoreinstances.memorystore.cnrm.cloud.google.com
spec:
group: memorystore.cnrm.cloud.google.com
names:
categories:
- gcp
kind: MemorystoreInstance
listKind: MemorystoreInstanceList
plural: memorystoreinstances
shortNames:
- gcpmemorystoreinstance
- gcpmemorystoreinstances
singular: memorystoreinstance
scope: Namespaced
versions:
- additionalPrinterColumns:
- jsonPath: .metadata.creationTimestamp
name: Age
type: date
- description: When 'True', the most recent reconcile of the resource succeeded
jsonPath: .status.conditions[?(@.type=='Ready')].status
name: Ready
type: string
- description: The reason for the value in 'Ready'
jsonPath: .status.conditions[?(@.type=='Ready')].reason
name: Status
type: string
- description: The last transition time for the value in 'Status'
jsonPath: .status.conditions[?(@.type=='Ready')].lastTransitionTime
name: Status Age
type: date
name: v1alpha1
schema:
openAPIV3Schema:
description: MemorystoreInstance is the Schema for the MemorystoreInstance
API
properties:
apiVersion:
description: 'APIVersion defines the versioned schema of this representation
of an object. Servers should convert recognized schemas to the latest
internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
type: string
kind:
description: 'Kind is a string value representing the REST resource this
object represents. Servers may infer this from the endpoint the client
submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
type: string
metadata:
type: object
spec:
description: MemorystoreInstanceSpec defines the desired state of MemorystoreInstance
properties:
authorizationMode:
description: Optional. Immutable. Authorization mode of the instance.
type: string
deletionProtectionEnabled:
description: Optional. If set to true deletion of the instance will
fail.
type: boolean
engineConfigs:
additionalProperties:
type: string
description: Optional. User-provided engine configurations for the
instance.
type: object
engineVersion:
description: Optional. Immutable. Engine version of the instance.
type: string
location:
description: Immutable.
type: string
x-kubernetes-validations:
- message: Location field is immutable
rule: self == oldSelf
nodeType:
description: Optional. Immutable. Machine type for individual nodes
of the instance.
type: string
persistenceConfig:
description: Optional. Persistence configuration of the instance.
properties:
aofConfig:
description: Optional. AOF configuration. This field will be ignored
if mode is not AOF.
properties:
appendFsync:
description: Optional. The fsync mode.
type: string
type: object
mode:
description: Optional. Current persistence mode.
type: string
rdbConfig:
description: Optional. RDB configuration. This field will be ignored
if mode is not RDB.
properties:
rdbSnapshotPeriod:
description: Optional. Period between RDB snapshots.
type: string
rdbSnapshotStartTime:
description: Optional. Time that the first snapshot was/will
be attempted, and to which future snapshots will be aligned.
If not provided, the current time will be used.
type: string
type: object
type: object
projectRef:
description: The Project that this resource belongs to.
oneOf:
- not:
required:
- external
required:
- name
- not:
anyOf:
- required:
- name
- required:
- namespace
required:
- external
properties:
external:
description: The `projectID` field of a project, when not managed
by Config Connector.
type: string
kind:
description: The kind of the Project resource; optional but must
be `Project` if provided.
type: string
name:
description: The `name` field of a `Project` resource.
type: string
namespace:
description: The `namespace` field of a `Project` resource.
type: string
type: object
pscAutoConnections:
description: Required. Immutable. User inputs for the auto-created
PSC connections.
items:
description: kcc specific struct to separate input and output fields
in google.cloud.memorystore.v1beta.PscAutoConnection
properties:
networkRef:
description: Required. The network where the PSC endpoints are
created, in the form of projects/{project_id}/global/networks/{network_id}.
oneOf:
- not:
required:
- external
required:
- name
- not:
anyOf:
- required:
- name
- required:
- namespace
required:
- external
properties:
external:
description: A reference to an externally managed Compute
Network resource. Should be in the format `projects/{{projectID}}/global/networks/{{network}}`.
type: string
name:
description: The `name` field of a `ComputeNetwork` resource.
type: string
namespace:
description: The `namespace` field of a `ComputeNetwork`
resource.
type: string
type: object
projectRef:
description: Required. The consumer project_id where PSC connections
are established. This should be the same project_id that the
cluster is being created in.
oneOf:
- not:
required:
- external
required:
- name
- kind
- not:
anyOf:
- required:
- name
- required:
- namespace
- required:
- kind
required:
- external
properties:
external:
description: The `projectID` field of a project, when not
managed by Config Connector.
type: string
kind:
description: The kind of the Project resource; optional
but must be `Project` if provided.
type: string
name:
description: The `name` field of a `Project` resource.
type: string
namespace:
description: The `namespace` field of a `Project` resource.
type: string
type: object
required:
- networkRef
- projectRef
type: object
type: array
replicaCount:
description: Optional. Number of replica nodes per shard. If omitted
the default is 0 replicas.
format: int32
type: integer
resourceID:
description: Optional. Immutable. The MemorystoreInstance name. If
not given, the metadata.name will be used.
type: string
shardCount:
description: Optional. Number of shards for the instance.
format: int32
type: integer
transitEncryptionMode:
description: Optional. Immutable. In-transit encryption mode of the
instance.
type: string
zoneDistributionConfig:
description: Optional. Immutable. Zone distribution configuration
of the instance for node allocatiteon.
properties:
mode:
description: Optional. Current zone distribution mode. Defaults
to MULTI_ZONE.
type: string
zone:
description: Optional. Defines zone where all resources will be
allocated with SINGLE_ZONE mode. Ignored for MULTI_ZONE mode.
type: string
type: object
required:
- location
- projectRef
type: object
status:
description: MemorystoreInstanceStatus defines the config connector machine
state of MemorystoreInstance
properties:
conditions:
description: Conditions represent the latest available observations
of the object's current state.
items:
properties:
lastTransitionTime:
description: Last time the condition transitioned from one status
to another.
type: string
message:
description: Human-readable message indicating details about
last transition.
type: string
reason:
description: Unique, one-word, CamelCase reason for the condition's
last transition.
type: string
status:
description: Status is the status of the condition. Can be True,
False, Unknown.
type: string
type:
description: Type is the type of the condition.
type: string
type: object
type: array
externalRef:
description: A unique specifier for the MemorystoreInstance resource
in GCP.
type: string
observedGeneration:
description: ObservedGeneration is the generation of the resource
that was most recently observed by the Config Connector controller.
If this is equal to metadata.generation, then that means that the
current reported status reflects the most recent desired state of
the resource.
format: int64
type: integer
observedState:
description: ObservedState is the state of the resource as most recently
observed in GCP.
properties:
authorizationMode:
description: Optional. Immutable. Authorization mode of the instance.
type: string
createTime:
description: Output only. Creation timestamp of the instance.
type: string
discoveryEndpoints:
description: Output only. Endpoints clients can connect to the
instance through. Currently only one discovery endpoint is supported.
items:
properties:
address:
description: Output only. IP address of the exposed endpoint
clients connect to.
type: string
network:
description: Output only. The network where the IP address
of the discovery endpoint will be reserved, in the form
of projects/{network_project}/global/networks/{network_id}.
type: string
port:
description: Output only. The port number of the exposed
endpoint.
format: int32
type: integer
type: object
type: array
engineVersion:
description: Optional. Immutable. Engine version of the instance.
https://cloud.google.com/memorystore/docs/valkey/supported-versions
type: string
name:
description: 'Identifier. Unique name of the instance. Format:
projects/{project}/locations/{location}/instances/{instance}'
type: string
nodeConfig:
description: Output only. Configuration of individual nodes of
the instance.
properties:
sizeGb:
description: Output only. Memory size in GB of the node.
type: number
type: object
nodeType:
description: Optional. Immutable. Machine type for individual
nodes of the instance.
type: string
pscAutoConnections:
description: Output only. Resource details of the auto-created
PSC connections.
items:
properties:
connectionType:
description: Output only. Type of the PSC connection.
type: string
forwardingRule:
description: 'Output only. The URI of the consumer side
forwarding rule. Format: projects/{project}/regions/{region}/forwardingRules/{forwarding_rule}'
type: string
ipAddress:
description: Output only. The IP allocated on the consumer
network for the PSC forwarding rule.
type: string
network:
description: Required. The network where the PSC endpoints
are created, in the form of projects/{project_id}/global/networks/{network_id}.
type: string
port:
description: Optional. Output only. port will only be set
for Primary/Reader or Discovery endpoint.
format: int32
type: integer
projectID:
description: Required. The consumer project_id where PSC
connections are established. This should be the same project_id
that the cluster is being created in.
type: string
pscConnectionID:
description: Output only. The PSC connection id of the forwarding
rule connected to the service attachment.
type: string
pscConnectionStatus:
description: 'Output only. The status of the PSC connection:
whether a connection exists and ACTIVE or it no longer
exists. Please note that this value is updated periodically.
Please use Private Service Connect APIs for the latest
status.'
type: string
serviceAttachment:
description: Output only. The service attachment which is
the target of the PSC connection, in the form of projects/{project-id}/regions/{region}/serviceAttachments/{service-attachment-id}.
type: string
type: object
type: array
state:
description: Output only. Current state of the instance.
type: string
stateInfo:
description: Output only. Additional information about the state
of the instance.
properties:
updateInfo:
description: Output only. Describes ongoing update when instance
state is UPDATING.
properties:
targetReplicaCount:
description: Output only. Target number of replica nodes
per shard for the instance.
format: int32
type: integer
targetShardCount:
description: Output only. Target number of shards for
the instance.
format: int32
type: integer
type: object
type: object
transitEncryptionMode:
description: Optional. Immutable. In-transit encryption mode of
the instance.
type: string
uid:
description: Output only. System assigned, unique identifier for
the instance.
type: string
updateTime:
description: Output only. Latest update timestamp of the instance.
type: string
zoneDistributionConfig:
description: Optional. Immutable. Zone distribution configuration
of the instance for node allocation.
properties:
mode:
description: Optional. Current zone distribution mode. Defaults
to MULTI_ZONE.
type: string
zone:
description: Optional. Defines zone where all resources will
be allocated with SINGLE_ZONE mode. Ignored for MULTI_ZONE
mode.
type: string
type: object
type: object
type: object
required:
- spec
type: object
served: true
storage: true
subresources:
status: {}
status:
acceptedNames:
kind: ""
plural: ""
conditions: null
storedVersions: null