8000 feat: add new fields for flex auto tiering · googleapis/googleapis@2dde7b2 · GitHub
[go: up one dir, main page]

Skip to content

Commit 2dde7b2

Browse files
Google APIscopybara-github
authored andcommitted
feat: add new fields for flex auto tiering
feat: add fields for manual qos feat: add fields for hybrid replication docs: field `daily_backup_immutable` in message `.google.cloud.netapp.v1.BackupVault` is changed docs: field `weekly_backup_immutable` in message `.google.cloud.netapp.v1.BackupVault` is changed docs: field `monthly_backup_immutable` in message `.google.cloud.netapp.v1.BackupVault` is changed docs: field `manual_backup_immutable` in message `.google.cloud.netapp.v1.BackupVault` is changed docs: field `subnet_ip` in message `.google.cloud.netapp.v1.HybridPeeringDetails` is changed docs: field `command` in message `.google.cloud.netapp.v1.HybridPeeringDetails` is changed docs: field `command_expiry_time` in message `.google.cloud.netapp.v1.HybridPeeringDetails` is changed docs: field `passphrase` in message `.google.cloud.netapp.v1.HybridPeeringDetails` is changed docs: field `peer_volume_name` in message `.google.cloud.netapp.v1.HybridPeeringDetails` is changed docs: field `peer_cluster_name` in message `.google.cloud.netapp.v1.HybridPeeringDetails` is changed docs: field `peer_svm_name` in message `.google.cloud.netapp.v1.HybridPeeringDetails` is changed docs: field `total_throughput_mibps` in message `.google.cloud.netapp.v1.StoragePool` is added docs: field `total_iops` in message `.google.cloud.netapp.v1.StoragePool` is added docs: A comment for field `cold_tier_size_gib` in message `.google.cloud.netapp.v1.Volume` is changed PiperOrigin-RevId: 802857292
1 parent c249577 commit 2dde7b2

File tree

5 files changed

+163
-23
lines changed

5 files changed

+163
-23
lines changed

google/cloud/netapp/v1/backup_vault.proto

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -46,22 +46,22 @@ message BackupVault {
4646
[(google.api.field_behavior) = REQUIRED];
4747

4848
// Optional. Indicates if the daily backups are immutable.
49-
// Atleast one of daily_backup_immutable, weekly_backup_immutable,
49+
// At least one of daily_backup_immutable, weekly_backup_immutable,
5050
// monthly_backup_immutable and manual_backup_immutable must be true.
5151
bool daily_backup_immutable = 2 [(google.api.field_behavior) = OPTIONAL];
5252

5353
// Optional. Indicates if the weekly backups are immutable.
54-
// Atleast one of daily_backup_immutable, weekly_backup_immutable,
54+
// At least one of daily_backup_immutable, weekly_backup_immutable,
5555
// monthly_backup_immutable and manual_backup_immutable must be true.
5656
bool weekly_backup_immutable = 3 [(google.api.field_behavior) = OPTIONAL];
5757

5858
// Optional. Indicates if the monthly backups are immutable.
59-
// Atleast one of daily_backup_immutable, weekly_backup_immutable,
59+
// At least one of daily_backup_immutable, weekly_backup_immutable,
6060
// monthly_backup_immutable and manual_backup_immutable must be true.
6161
bool monthly_backup_immutable = 4 [(google.api.field_behavior) = OPTIONAL];
6262

6363
// Optional. Indicates if the manual backups are immutable.
64-
// Atleast one of daily_backup_immutable, weekly_backup_immutable,
64+
// At least one of daily_backup_immutable, weekly_backup_immutable,
6565
// monthly_backup_immutable and manual_backup_immutable must be true.
6666
bool manual_backup_immutable = 5 [(google.api.field_behavior) = OPTIONAL];
6767
}

google/cloud/netapp/v1/common.proto

Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -77,6 +77,35 @@ enum DirectoryServiceType {
7777
ACTIVE_DIRECTORY = 1;
7878
}
7979

80+
// Schedule for Hybrid Replication.
81+
// New enum values may be added in future to support different frequency of
82+
// replication.
83+
enum HybridReplicationSchedule {
84+
// Unspecified HybridReplicationSchedule
85+
HYBRID_REPLICATION_SCHEDULE_UNSPECIFIED = 0;
86+
87+
// Replication happens once every 10 minutes.
88+
EVERY_10_MINUTES = 1;
89+
90+
// Replication happens once every hour.
91+
HOURLY = 2;
92+
93+
// Replication happens once every day.
94+
DAILY = 3;
95+
}
96+
97+
// QoS (Quality of Service) Types of the storage pool
98+
enum QosType {
99+
// Unspecified QoS Type
100+
QOS_TYPE_UNSPECIFIED = 0;
101+
102+
// QoS Type is Auto
103+
AUTO = 1;
104+
105+
// QoS Type is Manual
106+
MANUAL = 2;
107+
}
108+
80109
// Metadata for a given
81110
// [google.cloud.location.Location][google.cloud.location.Location].
82111
message LocationMetadata {
@@ -87,4 +116,13 @@ message LocationMetadata {
87116
// Output only. Supported flex performance in a location.
88117
repeated FlexPerformance supported_flex_performance = 2
89118
[(google.api.field_behavior) = OUTPUT_ONLY];
119+
120+
// Output only. Indicates if the location has VCP support.
121+
bool has_vcp = 3 [(google.api.field_behavior) = OUTPUT_ONLY];
122+
}
123+
124+
// UserCommands contains the commands to be executed by the customer.
125+
message UserCommands {
126+
// Output only. List of commands to be executed by the customer.
127+
repeated string commands = 1 [(google.api.field_behavior) = OUTPUT_ONLY];
90128
}

google/cloud/netapp/v1/replication.proto

Lines changed: 44 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@ package google.cloud.netapp.v1;
1818

1919
import "google/api/field_behavior.proto";
2020
import "google/api/resource.proto";
21+
import "google/cloud/netapp/v1/common.proto";
2122
import "google/cloud/netapp/v1/volume.proto";
2223
import "google/protobuf/duration.proto";
2324
import "google/protobuf/field_mask.proto";
@@ -97,6 +98,13 @@ message Replication {
9798

9899
// Replication is waiting for SVM peering to be established.
99100
PENDING_SVM_PEERING = 9;
101+
102+
// Replication is waiting for Commands to be executed on Onprem ONTAP.
103+
PENDING_REMOTE_RESYNC = 10;
104+
105+
// Onprem ONTAP is destination and Replication can only be managed from
106+
// Onprem.
107+
EXTERNALLY_MANAGED_REPLICATION = 11;
100108
}
101109

102110
// New enum values may be added in future to support different replication
@@ -153,6 +161,12 @@ message Replication {
153161

154162
// Replication is aborted.
155163
ABORTED = 6;
164+
165+
// Replication is being managed from Onprem ONTAP.
166+
EXTERNALLY_MANAGED = 7;
167+
168+
// Peering is yet to be established.
169+
PENDING_PEERING = 8;
156170
}
157171

158172
// Hybrid replication type.
@@ -165,6 +179,14 @@ message Replication {
165179

166180
// Hybrid replication type for continuous replication.
167181
CONTINUOUS_REPLICATION = 2;
182+
183+
// New field for reversible OnPrem replication, to be used for data
184+
// protection.
185+
ONPREM_REPLICATION = 3;
186+
187+
// Hybrid replication type for incremental Transfer in the reverse direction
188+
// (GCNV is source and Onprem is destination)
189+
REVERSE_ONPREM_REPLICATION = 4;
168190
}
169191

170192
// Identifier. The resource name of the Replication.
@@ -238,36 +260,42 @@ message Replication {
238260
// Output only. Type of the hybrid replication.
239261
HybridReplicationType hybrid_replication_type = 19
240262
[(google.api.field_behavior) = OUTPUT_ONLY];
263+
264+
// Output only. Copy pastable snapmirror commands to be executed on onprem
265+
// cluster by the customer.
266+
UserCommands hybrid_replication_user_commands = 20
267+
[(google.api.field_behavior) = OUTPUT_ONLY];
241268
}
242269

243270
// HybridPeeringDetails contains details about the hybrid peering.
244271
message HybridPeeringDetails {
245-
// Optional. IP address of the subnet.
246-
string subnet_ip = 1 [(google.api.field_behavior) = OPTIONAL];
272+
// Output only. IP address of the subnet.
273+
string subnet_ip = 1 [(google.api.field_behavior) = OUTPUT_ONLY];
247274

248-
// Optional. Copy-paste-able commands to be used on user's ONTAP to accept
275+
// Output only. Copy-paste-able commands to be used on user's ONTAP to accept
249276
// peering requests.
250-
string command = 2 [(google.api.field_behavior) = OPTIONAL];
277+
string command = 2 [(google.api.field_behavior) = OUTPUT_ONLY];
251278

252-
// Optional. Expiration time for the peering command to be executed on user's
253-
// ONTAP.
279+
// Output only. Expiration time for the peering command to be executed on
280+
// user's ONTAP.
254281
google.protobuf.Timestamp command_expiry_time = 3
255-
[(google.api.field_behavior) = OPTIONAL];
282+
[(google.api.field_behavior) = OUTPUT_ONLY];
256283

257-
// Optional. Temporary passphrase generated to accept cluster peering command.
258-
string passphrase = 4 [(google.api.field_behavior) = OPTIONAL];
284+
// Output only. Temporary passphrase generated to accept cluster peering
285+
// command.
286+
string passphrase = 4 [(google.api.field_behavior) = OUTPUT_ONLY];
259287

260-
// Optional. Name of the user's local source volume to be peered with the
288+
// Output only. Name of the user's local source volume to be peered with the
261289
// destination volume.
262-
string peer_volume_name = 5 [(google.api.field_behavior) = OPTIONAL];
290+
string peer_volume_name = 5 [(google.api.field_behavior) = OUTPUT_ONLY];
263291

264-
// Optional. Name of the user's local source cluster to be peered with the
292+
// Output only. Name of the user's local source cluster to be peered with the
265293
// destination cluster.
266-
string peer_cluster_name = 6 [(google.api.field_behavior) = OPTIONAL];
294+
string peer_cluster_name = 6 [(google.api.field_behavior) = OUTPUT_ONLY];
267295

268-
// Optional. Name of the user's local source vserver svm to be peered with the
269-
// destination vserver svm.
270-
string peer_svm_name = 7 [(google.api.field_behavior) = OPTIONAL];
296+
// Output only. Name of the user's local source vserver svm to be peered with
297+
// the destination vserver svm.
298+
string peer_svm_name = 7 [(google.api.field_behavior) = OUTPUT_ONLY];
271299
}
272300

273301
// ListReplications lists replications.

google/cloud/netapp/v1/storage_pool.proto

Lines changed: 31 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -264,12 +264,41 @@ message StoragePool {
264264
// (Hyperdisk) By default set to false
265265
bool custom_performance_enabled = 25 [(google.api.field_behavior) = OPTIONAL];
266266

267-
// Optional. Custom Performance Total Throughput of the pool (in MiB/s)
267+
// Optional. Custom Performance Total Throughput of the pool (in MiBps)
268268
int64 total_throughput_mibps = 26 [(google.api.field_behavior) = OPTIONAL];
269269

270270
// Optional. Custom Performance Total IOPS of the pool
271-
// If not provided, it will be calculated based on the total_throughput_mibps
271+
// if not provided, it will be calculated based on the total_throughput_mibps
272272
int64 total_iops = 27 [(google.api.field_behavior) = OPTIONAL];
273+
274+
// Optional. Total hot tier capacity for the Storage Pool. It is applicable
275+
// only to Flex service level. It should be less than the minimum storage pool
276+
// size and cannot be more than the current storage pool size. It cannot be
277+
// decreased once set.
278+
int64 hot_tier_size_gib = 28 [(google.api.field_behavior) = OPTIONAL];
279+
280+
// Optional. Flag indicating that the hot-tier threshold will be
281+
// auto-increased by 10% of the hot-tier when it hits 100%. Default is true.
282+
// The increment will kick in only if the new size after increment is
283+
// still less than or equal to storage pool size.
284+
optional bool enable_hot_tier_auto_resize = 29
285+
[(google.api.field_behavior) = OPTIONAL];
286+
287+
// Optional. QoS (Quality of Service) Type of the storage pool
288+
QosType qos_type = 30 [(google.api.field_behavior) = OPTIONAL];
289+
290+
// Output only. Available throughput of the storage pool (in MiB/s).
291+
double available_throughput_mibps = 31
292+
[(google.api.field_behavior) = OUTPUT_ONLY];
293+
294+
// Output only. Total cold tier data rounded down to the nearest GiB used by
295+
// the storage pool.
296+
int64 cold_tier_size_used_gib = 33
297+
[(google.api.field_behavior) = OUTPUT_ONLY];
298+
299+
// Output only. Total hot tier data rounded down to the nearest GiB used by
300+
// the storage pool.
301+
int64 hot_tier_size_used_gib = 34 [(google.api.field_behavior) = OUTPUT_ONLY];
273302
}
274303

275304
// ValidateDirectoryServiceRequest validates the directory service policy

google/cloud/netapp/v1/volume.proto

Lines changed: 46 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -412,12 +412,20 @@ message Volume {
412412
// Output only. Specifies the active zone for regional volume.
413413
string zone = 37 [(google.api.field_behavior) = OUTPUT_ONLY];
414414

415-
// Output only. Size of the volume cold tier data in GiB.
415+
// Output only. Size of the volume cold tier data rounded down to the nearest
416+
// GiB.
416417
int64 cold_tier_size_gib = 39 [(google.api.field_behavior) = OUTPUT_ONLY];
417418

418419
// Optional. The Hybrid Replication parameters for the volume.
419420
HybridReplicationParameters hybrid_replication_parameters = 40
420421
[(google.api.field_behavior) = OPTIONAL];
422+
423+
// Optional. Throughput of the volume (in MiB/s)
424+
double throughput_mibps = 41 [(google.api.field_behavior) = OPTIONAL];
425+
426+
// Output only. Total hot tier data rounded down to the nearest GiB used by
427+
// the Volume. This field is only used for flex Service Level
428+
int64 hot_tier_size_used_gib = 44 [(google.api.field_behavior) = OUTPUT_ONLY];
421429
}
422430

423431
// Defines the export policy for the volume.
@@ -647,10 +655,35 @@ message TieringPolicy {
647655
// eligible for tiering, can be range from 2-183. Default is 31.
648656
optional int32 cooling_threshold_days = 2
649657
[(google.api.field_behavior) = OPTIONAL];
658+
659+
// Optional. Flag indicating that the hot tier bypass mode is enabled. Default
660+
// is false. This is only applicable to Flex service level.
661+
optional bool hot_tier_bypass_mode_enabled = 3
662+
[(google.api.field_behavior) = OPTIONAL];
650663
}
651664

652665
// The Hybrid Replication parameters for the volume.
653666
message HybridReplicationParameters {
667+
// Type of the volume's hybrid replication.
668+
enum VolumeHybridReplicationType {
669+
// Unspecified hybrid replication type.
670+
VOLUME_HYBRID_REPLICATION_TYPE_UNSPECIFIED = 0;
671+
672+
// Hybrid replication type for migration.
673+
MIGRATION = 1;
674+
675+
// Hybrid replication type for continuous replication.
676+
CONTINUOUS_REPLICATION = 2;
677+
678+
// New field for reversible OnPrem replication, to be used for data
679+
// protection.
680+
ONPREM_REPLICATION = 3;
681+
682+
// New field for reversible OnPrem replication, to be used for data
683+
// protection.
684+
REVERSE_ONPREM_REPLICATION = 4;
685+
}
686+
654687
// Required. Desired name for the replication of this volume.
655688
string replication = 1 [
656689
(google.api.field_behavior) = REQUIRED,
@@ -684,4 +717,16 @@ message HybridReplicationParameters {
684717

685718
// Optional. Labels to be added to the replication as the key value pairs.
686719
map<string, string> labels = 8 [(google.api.field_behavior) = OPTIONAL];
720+
721+
// Optional. Replication Schedule for the replication created.
722+
HybridReplicationSchedule replication_schedule = 9
723+
[(google.api.field_behavior) = OPTIONAL];
724+
725+
// Optional. Type of the hybrid replication.
726+
VolumeHybridReplicationType hybrid_replication_type = 10
727+
[(google.api.field_behavior) = OPTIONAL];
728+
729+
// Optional. Constituent volume count for large volume.
730+
int32 large_volume_constituent_count = 11
731+
[(google.api.field_behavior) = OPTIONAL];
687732
}

0 commit comments

Comments
 (0)
0