1apiVersion: apiextensions.k8s.io/v1
2kind: CustomResourceDefinition
3metadata:
4 annotations:
5 cnrm.cloud.google.com/version: 0.0.0-dev
6 creationTimestamp: null
7 labels:
8 cnrm.cloud.google.com/managed-by-kcc: "true"
9 cnrm.cloud.google.com/stability-level: stable
10 cnrm.cloud.google.com/system: "true"
11 cnrm.cloud.google.com/tf2crd: "true"
12 name: redisinstances.redis.cnrm.cloud.google.com
13spec:
14 group: redis.cnrm.cloud.google.com
15 names:
16 categories:
17 - gcp
18 kind: RedisInstance
19 plural: redisinstances
20 shortNames:
21 - gcpredisinstance
22 - gcpredisinstances
23 singular: redisinstance
24 preserveUnknownFields: false
25 scope: Namespaced
26 versions:
27 - additionalPrinterColumns:
28 - jsonPath: .metadata.creationTimestamp
29 name: Age
30 type: date
31 - description: When 'True', the most recent reconcile of the resource succeeded
32 jsonPath: .status.conditions[?(@.type=='Ready')].status
33 name: Ready
34 type: string
35 - description: The reason for the value in 'Ready'
36 jsonPath: .status.conditions[?(@.type=='Ready')].reason
37 name: Status
38 type: string
39 - description: The last transition time for the value in 'Status'
40 jsonPath: .status.conditions[?(@.type=='Ready')].lastTransitionTime
41 name: Status Age
42 type: date
43 name: v1beta1
44 schema:
45 openAPIV3Schema:
46 properties:
47 apiVersion:
48 description: 'apiVersion defines the versioned schema of this representation
49 of an object. Servers should convert recognized schemas to the latest
50 internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#resources'
51 type: string
52 kind:
53 description: 'kind is a string value representing the REST resource this
54 object represents. Servers may infer this from the endpoint the client
55 submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds'
56 type: string
57 metadata:
58 type: object
59 spec:
60 properties:
61 alternativeLocationId:
62 description: |-
63 Immutable. Only applicable to STANDARD_HA tier which protects the instance
64 against zonal failures by provisioning it across two zones.
65 If provided, it must be a different zone from the one provided in
66 [locationId].
67 type: string
68 authEnabled:
69 description: |-
70 Optional. Indicates whether OSS Redis AUTH is enabled for the
71 instance. If set to "true" AUTH is enabled on the instance.
72 Default value is "false" meaning AUTH is disabled.
73 type: boolean
74 authString:
75 description: Output only. AUTH String set on the instance. This field
76 will only be populated if auth_enabled is true.
77 type: string
78 authorizedNetworkRef:
79 description: |-
80 The network to which the instance is connected. If left
81 unspecified, the default network will be used.
82 oneOf:
83 - not:
84 required:
85 - external
86 required:
87 - name
88 - not:
89 anyOf:
90 - required:
91 - name
92 - required:
93 - namespace
94 required:
95 - external
96 properties:
97 external:
98 description: 'Allowed value: The `selfLink` field of a `ComputeNetwork`
99 resource.'
100 type: string
101 name:
102 description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
103 type: string
104 namespace:
105 description: 'Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/'
106 type: string
107 type: object
108 connectMode:
109 description: 'Immutable. The connection mode of the Redis instance.
110 Default value: "DIRECT_PEERING" Possible values: ["DIRECT_PEERING",
111 "PRIVATE_SERVICE_ACCESS"].'
112 type: string
113 customerManagedKeyRef:
114 description: |-
115 Immutable. Optional. The KMS key reference that you want to use to
116 encrypt the data at rest for this Redis instance. If this is
117 provided, CMEK is enabled.
118 oneOf:
119 - not:
120 required:
121 - external
122 required:
123 - name
124 - not:
125 anyOf:
126 - required:
127 - name
128 - required:
129 - namespace
130 required:
131 - external
132 properties:
133 external:
134 description: 'Allowed value: The `selfLink` field of a `KMSCryptoKey`
135 resource.'
136 type: string
137 name:
138 description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
139 type: string
140 namespace:
141 description: 'Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/'
142 type: string
143 type: object
144 displayName:
145 description: An arbitrary and optional user-provided name for the
146 instance.
147 type: string
148 locationId:
149 description: |-
150 Immutable. The zone where the instance will be provisioned. If not provided,
151 the service will choose a zone for the instance. For STANDARD_HA tier,
152 instances will be created across two zones for protection against
153 zonal failures. If [alternativeLocationId] is also provided, it must
154 be different from [locationId].
155 type: string
156 maintenancePolicy:
157 description: Maintenance policy for an instance.
158 properties:
159 createTime:
160 description: |-
161 Output only. The time when the policy was created.
162 A timestamp in RFC3339 UTC "Zulu" format, with nanosecond
163 resolution and up to nine fractional digits.
164 type: string
165 description:
166 description: |-
167 Optional. Description of what this policy is for.
168 Create/Update methods return INVALID_ARGUMENT if the
169 length is greater than 512.
170 type: string
171 updateTime:
172 description: |-
173 Output only. The time when the policy was last updated.
174 A timestamp in RFC3339 UTC "Zulu" format, with nanosecond
175 resolution and up to nine fractional digits.
176 type: string
177 weeklyMaintenanceWindow:
178 description: |-
179 Optional. Maintenance window that is applied to resources covered by this policy.
180 Minimum 1. For the current version, the maximum number
181 of weekly_window is expected to be one.
182 items:
183 properties:
184 day:
185 description: |-
186 Required. The day of week that maintenance updates occur.
187
188 - DAY_OF_WEEK_UNSPECIFIED: The day of the week is unspecified.
189 - MONDAY: Monday
190 - TUESDAY: Tuesday
191 - WEDNESDAY: Wednesday
192 - THURSDAY: Thursday
193 - FRIDAY: Friday
194 - SATURDAY: Saturday
195 - SUNDAY: Sunday Possible values: ["DAY_OF_WEEK_UNSPECIFIED", "MONDAY", "TUESDAY", "WEDNESDAY", "THURSDAY", "FRIDAY", "SATURDAY", "SUNDAY"].
196 type: string
197 duration:
198 description: |-
199 Output only. Duration of the maintenance window.
200 The current window is fixed at 1 hour.
201 A duration in seconds with up to nine fractional digits,
202 terminated by 's'. Example: "3.5s".
203 type: string
204 startTime:
205 description: Required. Start time of the window in UTC time.
206 properties:
207 hours:
208 description: |-
209 Hours of day in 24 hour format. Should be from 0 to 23.
210 An API may choose to allow the value "24:00:00" for scenarios like business closing time.
211 type: integer
212 minutes:
213 description: Minutes of hour of day. Must be from 0
214 to 59.
215 type: integer
216 nanos:
217 description: Fractions of seconds in nanoseconds. Must
218 be from 0 to 999,999,999.
219 type: integer
220 seconds:
221 description: |-
222 Seconds of minutes of the time. Must normally be from 0 to 59.
223 An API may allow the value 60 if it allows leap-seconds.
224 type: integer
225 type: object
226 required:
227 - day
228 - startTime
229 type: object
230 type: array
231 type: object
232 maintenanceSchedule:
233 description: Upcoming maintenance schedule.
234 properties:
235 endTime:
236 description: |-
237 Output only. The end time of any upcoming scheduled maintenance for this instance.
238 A timestamp in RFC3339 UTC "Zulu" format, with nanosecond
239 resolution and up to nine fractional digits.
240 type: string
241 scheduleDeadlineTime:
242 description: |-
243 Output only. The deadline that the maintenance schedule start time
244 can not go beyond, including reschedule.
245 A timestamp in RFC3339 UTC "Zulu" format, with nanosecond
246 resolution and up to nine fractional digits.
247 type: string
248 startTime:
249 description: |-
250 Output only. The start time of any upcoming scheduled maintenance for this instance.
251 A timestamp in RFC3339 UTC "Zulu" format, with nanosecond
252 resolution and up to nine fractional digits.
253 type: string
254 type: object
255 memorySizeGb:
256 description: Redis memory size in GiB.
257 type: integer
258 persistenceConfig:
259 description: Persistence configuration for an instance.
260 properties:
261 persistenceMode:
262 description: "Optional. Controls whether Persistence features
263 are enabled. If not provided, the existing value will be used.\n\n-
264 DISABLED: \tPersistence is disabled for the instance, and any
265 existing snapshots are deleted.\n- RDB: RDB based Persistence
266 is enabled. Possible values: [\"DISABLED\", \"RDB\"]."
267 type: string
268 rdbNextSnapshotTime:
269 description: |-
270 Output only. The next time that a snapshot attempt is scheduled to occur.
271 A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up
272 to nine fractional digits.
273 Examples: "2014-10-02T15:01:23Z" and "2014-10-02T15:01:23.045123456Z".
274 type: string
275 rdbSnapshotPeriod:
276 description: "Optional. Available snapshot periods for scheduling.\n\n-
277 ONE_HOUR:\tSnapshot every 1 hour.\n- SIX_HOURS:\tSnapshot every
278 6 hours.\n- TWELVE_HOURS:\tSnapshot every 12 hours.\n- TWENTY_FOUR_HOURS:\tSnapshot
279 every 24 hours. Possible values: [\"ONE_HOUR\", \"SIX_HOURS\",
280 \"TWELVE_HOURS\", \"TWENTY_FOUR_HOURS\"]."
281 type: string
282 rdbSnapshotStartTime:
283 description: |-
284 Optional. Date and time that the first snapshot was/will be attempted,
285 and to which future snapshots will be aligned. If not provided,
286 the current time will be used.
287 A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution
288 and up to nine fractional digits.
289 Examples: "2014-10-02T15:01:23Z" and "2014-10-02T15:01:23.045123456Z".
290 type: string
291 type: object
292 readReplicasMode:
293 description: |-
294 Optional. Read replica mode. Can only be specified when trying to create the instance.
295 If not set, Memorystore Redis backend will default to READ_REPLICAS_DISABLED.
296 - READ_REPLICAS_DISABLED: If disabled, read endpoint will not be provided and the
297 instance cannot scale up or down the number of replicas.
298 - READ_REPLICAS_ENABLED: If enabled, read endpoint will be provided and the instance
299 can scale up and down the number of replicas. Possible values: ["READ_REPLICAS_DISABLED", "READ_REPLICAS_ENABLED"].
300 type: string
301 redisConfigs:
302 additionalProperties:
303 type: string
304 description: |-
305 Redis configuration parameters, according to http://redis.io/topics/config.
306 Please check Memorystore documentation for the list of supported parameters:
307 https://cloud.google.com/memorystore/docs/redis/reference/rest/v1/projects.locations.instances#Instance.FIELDS.redis_configs.
308 type: object
309 redisVersion:
310 description: |-
311 The version of Redis software. If not provided, latest supported
312 version will be used. Please check the API documentation linked
313 at the top for the latest valid values.
314 type: string
315 region:
316 description: Immutable. The name of the Redis region of the instance.
317 type: string
318 replicaCount:
319 description: |-
320 Optional. The number of replica nodes. The valid range for the Standard Tier with
321 read replicas enabled is [1-5] and defaults to 2. If read replicas are not enabled
322 for a Standard Tier instance, the only valid value is 1 and the default is 1.
323 The valid value for basic tier is 0 and the default is also 0.
324 type: integer
325 reservedIpRange:
326 description: |-
327 Immutable. The CIDR range of internal addresses that are reserved for this
328 instance. If not provided, the service will choose an unused /29
329 block, for example, 10.0.0.0/29 or 192.168.0.0/29. Ranges must be
330 unique and non-overlapping with existing subnets in an authorized
331 network.
332 type: string
333 resourceID:
334 description: Immutable. Optional. The name of the resource. Used for
335 creation and acquisition. When unset, the value of `metadata.name`
336 is used as the default.
337 type: string
338 secondaryIpRange:
339 description: |-
340 Optional. Additional IP range for node placement. Required when enabling read replicas on
341 an existing instance. For DIRECT_PEERING mode value must be a CIDR range of size /28, or
342 "auto". For PRIVATE_SERVICE_ACCESS mode value must be the name of an allocated address
343 range associated with the private service access connection, or "auto".
344 type: string
345 tier:
346 description: |-
347 Immutable. The service tier of the instance. Must be one of these values:
348
349 - BASIC: standalone instance
350 - STANDARD_HA: highly available primary/replica instances Default value: "BASIC" Possible values: ["BASIC", "STANDARD_HA"].
351 type: string
352 transitEncryptionMode:
353 description: |-
354 Immutable. The TLS mode of the Redis instance, If not provided, TLS is disabled for the instance.
355
356 - SERVER_AUTHENTICATION: Client to Server traffic encryption enabled with server authentication Default value: "DISABLED" Possible values: ["SERVER_AUTHENTICATION", "DISABLED"].
357 type: string
358 required:
359 - memorySizeGb
360 - region
361 type: object
362 status:
363 properties:
364 conditions:
365 description: Conditions represent the latest available observation
366 of the resource's current state.
367 items:
368 properties:
369 lastTransitionTime:
370 description: Last time the condition transitioned from one status
371 to another.
372 type: string
373 message:
374 description: Human-readable message indicating details about
375 last transition.
376 type: string
377 reason:
378 description: Unique, one-word, CamelCase reason for the condition's
379 last transition.
380 type: string
381 status:
382 description: Status is the status of the condition. Can be True,
383 False, Unknown.
384 type: string
385 type:
386 description: Type is the type of the condition.
387 type: string
388 type: object
389 type: array
390 createTime:
391 description: |-
392 The time the instance was created in RFC3339 UTC "Zulu" format,
393 accurate to nanoseconds.
394 type: string
395 currentLocationId:
396 description: |-
397 The current zone where the Redis endpoint is placed.
398 For Basic Tier instances, this will always be the same as the
399 [locationId] provided by the user at creation time. For Standard Tier
400 instances, this can be either [locationId] or [alternativeLocationId]
401 and can change after a failover event.
402 type: string
403 host:
404 description: |-
405 Hostname or IP address of the exposed Redis endpoint used by clients
406 to connect to the service.
407 type: string
408 nodes:
409 description: Output only. Info per node.
410 items:
411 properties:
412 id:
413 description: Node identifying string. e.g. 'node-0', 'node-1'.
414 type: string
415 zone:
416 description: Location of the node.
417 type: string
418 type: object
419 type: array
420 observedGeneration:
421 description: ObservedGeneration is the generation of the resource
422 that was most recently observed by the Config Connector controller.
423 If this is equal to metadata.generation, then that means that the
424 current reported status reflects the most recent desired state of
425 the resource.
426 type: integer
427 persistenceIamIdentity:
428 description: |-
429 Output only. Cloud IAM identity used by import / export operations
430 to transfer data to/from Cloud Storage. Format is "serviceAccount:".
431 The value may change over time for a given instance so should be
432 checked before each import/export operation.
433 type: string
434 port:
435 description: The port number of the exposed Redis endpoint.
436 type: integer
437 readEndpoint:
438 description: |-
439 Output only. Hostname or IP address of the exposed readonly Redis endpoint. Standard tier only.
440 Targets all healthy replica nodes in instance. Replication is asynchronous and replica nodes
441 will exhibit some lag behind the primary. Write requests must target 'host'.
442 type: string
443 readEndpointPort:
444 description: |-
445 Output only. The port number of the exposed readonly redis endpoint. Standard tier only.
446 Write requests should target 'port'.
447 type: integer
448 serverCaCerts:
449 description: List of server CA certificates for the instance.
450 items:
451 properties:
452 cert:
453 description: The certificate data in PEM format.
454 type: string
455 createTime:
456 description: The time when the certificate was created.
457 type: string
458 expireTime:
459 description: The time when the certificate expires.
460 type: string
461 serialNumber:
462 description: Serial number, as extracted from the certificate.
463 type: string
464 sha1Fingerprint:
465 description: Sha1 Fingerprint of the certificate.
466 type: string
467 type: object
468 type: array
469 type: object
470 required:
471 - spec
472 type: object
473 served: true
474 storage: true
475 subresources:
476 status: {}
477status:
478 acceptedNames:
479 kind: ""
480 plural: ""
481 conditions: []
482 storedVersions: []
View as plain text