22
22
__protobuf__ = proto .module (
23
23
package = "google.cloud.redis.v1beta1" ,
24
24
manifest = {
25
+ "NodeInfo" ,
25
26
"Instance" ,
26
27
"ListInstancesRequest" ,
27
28
"ListInstancesResponse" ,
43
44
)
44
45
45
46
47
+ class NodeInfo (proto .Message ):
48
+ r"""Node specific properties.
49
+
50
+ Attributes:
51
+ id (str):
52
+ Output only. Node identifying string. e.g.
53
+ 'node-0', 'node-1'
54
+ zone (str):
55
+ Output only. Location of the node.
56
+ """
57
+
58
+ id = proto .Field (proto .STRING , number = 1 ,)
59
+ zone = proto .Field (proto .STRING , number = 2 ,)
60
+
61
+
46
62
class Instance (proto .Message ):
47
63
r"""A Google Cloud Redis instance.
48
64
@@ -68,19 +84,21 @@ class Instance(proto.Message):
68
84
Resource labels to represent user provided
69
85
metadata
70
86
location_id (str):
71
- Optional. The zone where the instance will be provisioned.
72
- If not provided, the service will choose a zone for the
73
- instance. For STANDARD_HA tier, instances will be created
74
- across two zones for protection against zonal failures. If
75
- [alternative_location_id][google.cloud.redis.v1beta1.Instance.alternative_location_id]
76
- is also provided, it must be different from
77
- [location_id][google.cloud.redis.v1beta1.Instance.location_id].
87
+ Optional. The zone where the instance will be
88
+ provisioned. If not provided, the service will
89
+ choose a zone from the specified region for the
90
+ instance. For standard tier, additional nodes
91
+ will be added across multiple zones for
92
+ protection against zonal failures. If specified,
93
+ at least one node will be provisioned in this
94
+ zone.
78
95
alternative_location_id (str):
79
- Optional. Only applicable to STANDARD_HA tier which protects
80
- the instance against zonal failures by provisioning it
81
- across two zones. If provided, it must be a different zone
82
- from the one provided in
83
- [location_id][google.cloud.redis.v1beta1.Instance.location_id].
96
+ Optional. If specified, at least one node will be
97
+ provisioned in this zone in addition to the zone specified
98
+ in location_id. Only applicable to standard tier. If
99
+ provided, it must be a different zone from the one provided
100
+ in [location_id]. Additional nodes beyond the first 2 will
101
+ be placed in zones selected by the service.
84
102
redis_version (str):
85
103
Optional. The version of Redis software. If not provided,
86
104
latest supported version will be used. Currently, the
@@ -89,32 +107,29 @@ class Instance(proto.Message):
89
107
- ``REDIS_3_2`` for Redis 3.2 compatibility
90
108
- ``REDIS_4_0`` for Redis 4.0 compatibility (default)
91
109
- ``REDIS_5_0`` for Redis 5.0 compatibility
110
+ - ``REDIS_6_X`` for Redis 6.x compatibility
92
111
reserved_ip_range (str):
93
- Optional. The CIDR range of internal
94
- addresses that are reserved for this instance.
95
- If not provided, the service will choose an
96
- unused /29 block, for example, 10.0.0.0/29 or
97
- 192.168.0.0/29. Ranges must be unique and non-
98
- overlapping with existing subnets in an
99
- authorized network.
112
+ Optional. For DIRECT_PEERING mode, the CIDR range of
113
+ internal addresses that are reserved for this instance.
114
+ Range must be unique and non-overlapping with existing
115
+ subnets in an authorized network. For PRIVATE_SERVICE_ACCESS
116
+ mode, the name of one allocated IP address ranges associated
117
+ with this private service access connection. If not
118
+ provided, the service will choose an unused /29 block, for
119
+ example, 10.0.0.0/29 or 192.168.0.0/29. For
120
+ READ_REPLICAS_ENABLED the default block size is /28.
100
121
host (str):
101
122
Output only. Hostname or IP address of the
102
- exposed Redis endpoint used by clients to
123
+ exposed Redis endpoint used by clients to
103
124
connect to the service.
104
125
port (int):
105
126
Output only. The port number of the exposed
106
127
Redis endpoint.
107
128
current_location_id (str):
108
- Output only. The current zone where the Redis endpoint is
109
- placed. For Basic Tier instances, this will always be the
110
- same as the
111
- [location_id][google.cloud.redis.v1beta1.Instance.location_id]
112
- provided by the user at creation time. For Standard Tier
113
- instances, this can be either
114
- [location_id][google.cloud.redis.v1beta1.Instance.location_id]
115
- or
116
- [alternative_location_id][google.cloud.redis.v1beta1.Instance.alternative_location_id]
117
- and can change after a failover event.
129
+ Output only. The current zone where the Redis primary node
130
+ is located. In basic tier, this will always be the same as
131
+ [location_id]. In standard tier, this can be the zone of any
132
+ node in the instance.
118
133
create_time (google.protobuf.timestamp_pb2.Timestamp):
119
134
Output only. The time the instance was
120
135
created.
@@ -161,9 +176,27 @@ class Instance(proto.Message):
161
176
change over time for a given instance so should be checked
162
177
before each import/export operation.
163
178
connect_mode (google.cloud.redis_v1beta1.types.Instance.ConnectMode):
164
- Optional. The connect mode of Redis instance. If not
165
- provided, default one will be used. Current default:
166
- DIRECT_PEERING.
179
+ Optional. The network connect mode of the Redis instance. If
180
+ not provided, the connect mode defaults to DIRECT_PEERING.
181
+ replica_count (int):
182
+ Optional. The number of replica nodes. Valid range for
183
+ standard tier is [1-5] and defaults to 1. Valid value for
184
+ basic tier is 0 and defaults to 0.
185
+ nodes (Sequence[google.cloud.redis_v1beta1.types.NodeInfo]):
186
+ Output only. Info per node.
187
+ read_endpoint (str):
188
+ Output only. Hostname or IP address of the
189
+ exposed readonly Redis endpoint. Standard tier
190
+ only. Targets all healthy replica nodes in
191
+ instance. Replication is asynchronous and
192
+ replica nodes will exhibit some lag behind the
193
+ primary. Write requests must target 'host'.
194
+ read_endpoint_port (int):
195
+ Output only. The port number of the exposed
196
+ readonly redis endpoint. Standard tier only.
197
+ Write requests should target 'port'.
198
+ read_replicas_mode (google.cloud.redis_v1beta1.types.Instance.ReadReplicasMode):
199
+ Optional. Read replica mode.
167
200
"""
168
201
169
202
class State (proto .Enum ):
@@ -190,6 +223,12 @@ class ConnectMode(proto.Enum):
190
223
DIRECT_PEERING = 1
191
224
PRIVATE_SERVICE_ACCESS = 2
192
225
226
+ class ReadReplicasMode (proto .Enum ):
227
+ r"""Read replicas mode."""
228
+ READ_REPLICAS_MODE_UNSPECIFIED = 0
229
+ READ_REPLICAS_DISABLED = 1
230
+ READ_REPLICAS_ENABLED = 2
231
+
193
232
name = proto .Field (proto .STRING , number = 1 ,)
194
233
display_name = proto .Field (proto .STRING , number = 2 ,)
195
234
labels = proto .MapField (proto .STRING , proto .STRING , number = 3 ,)
@@ -211,6 +250,11 @@ class ConnectMode(proto.Enum):
211
250
authorized_network = proto .Field (proto .STRING , number = 20 ,)
212
251
persistence_iam_identity = proto .Field (proto .STRING , number = 21 ,)
213
252
connect_mode = proto .Field (proto .ENUM , number = 22 , enum = ConnectMode ,)
253
+ replica_count = proto .Field (proto .INT32 , number = 31 ,)
254
+ nodes = proto .RepeatedField (proto .MESSAGE , number = 32 , message = "NodeInfo" ,)
255
+ read_endpoint = proto .Field (proto .STRING , number = 33 ,)
256
+ read_endpoint_port = proto .Field (proto .INT32 , number = 34 ,)
257
+ read_replicas_mode = proto .Field (proto .ENUM , number = 35 , enum = ReadReplicasMode ,)
214
258
215
259
216
260
class ListInstancesRequest (proto .Message ):
@@ -254,9 +298,9 @@ class ListInstancesResponse(proto.Message):
254
298
If the ``location_id`` in the parent field of the request is
255
299
"-", all regions available to the project are queried, and
256
300
the results aggregated. If in such an aggregated query a
257
- location is unavailable, a dummy Redis entry is included in
258
- the response with the ``name`` field set to a value of the
259
- form
301
+ location is unavailable, a placeholder Redis entry is
302
+ included in the response with the ``name`` field set to a
303
+ value of the form
260
304
``projects/{project_id}/locations/{location_id}/instances/``-
261
305
and the ``status`` field set to ERROR and ``status_message``
262
306
field set to "location not available for ListInstances".
@@ -334,6 +378,7 @@ class UpdateInstanceRequest(proto.Message):
334
378
- ``labels``
335
379
- ``memorySizeGb``
336
380
- ``redisConfig``
381
+ - ``replica_count``
337
382
instance (google.cloud.redis_v1beta1.types.Instance):
338
383
Required. Update description. Only fields specified in
339
384
update_mask are updated.
0 commit comments