Class: Google::Apis::NetappV1::StoragePool

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
lib/google/apis/netapp_v1/classes.rb,
lib/google/apis/netapp_v1/representations.rb,
lib/google/apis/netapp_v1/representations.rb

Overview

StoragePool is a container for volumes with a service level and capacity. Volumes can be created in a pool of sufficient available capacity. StoragePool capacity is what you are billed for.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ StoragePool

Returns a new instance of StoragePool.



3195
3196
3197
# File 'lib/google/apis/netapp_v1/classes.rb', line 3195

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#active_directoryString

Optional. Specifies the Active Directory to be used for creating a SMB volume. Corresponds to the JSON property activeDirectory

Returns:

  • (String)


3001
3002
3003
# File 'lib/google/apis/netapp_v1/classes.rb', line 3001

def active_directory
  @active_directory
end

#allow_auto_tieringBoolean Also known as: allow_auto_tiering?

Optional. True if the storage pool supports Auto Tiering enabled volumes. Default is false. Auto-tiering can be enabled after storage pool creation but it can't be disabled once enabled. Corresponds to the JSON property allowAutoTiering

Returns:

  • (Boolean)


3008
3009
3010
# File 'lib/google/apis/netapp_v1/classes.rb', line 3008

def allow_auto_tiering
  @allow_auto_tiering
end

#available_throughput_mibpsFloat

Output only. Available throughput of the storage pool (in MiB/s). Corresponds to the JSON property availableThroughputMibps

Returns:

  • (Float)


3014
3015
3016
# File 'lib/google/apis/netapp_v1/classes.rb', line 3014

def available_throughput_mibps
  @available_throughput_mibps
end

#capacity_gibFixnum

Required. Capacity in GIB of the pool Corresponds to the JSON property capacityGib

Returns:

  • (Fixnum)


3019
3020
3021
# File 'lib/google/apis/netapp_v1/classes.rb', line 3019

def capacity_gib
  @capacity_gib
end

#cold_tier_size_used_gibFixnum

Output only. Total cold tier data rounded down to the nearest GiB used by the storage pool. Corresponds to the JSON property coldTierSizeUsedGib

Returns:

  • (Fixnum)


3025
3026
3027
# File 'lib/google/apis/netapp_v1/classes.rb', line 3025

def cold_tier_size_used_gib
  @cold_tier_size_used_gib
end

#create_timeString

Output only. Create time of the storage pool Corresponds to the JSON property createTime

Returns:

  • (String)


3030
3031
3032
# File 'lib/google/apis/netapp_v1/classes.rb', line 3030

def create_time
  @create_time
end

#custom_performance_enabledBoolean Also known as: custom_performance_enabled?

Optional. True if using Independent Scaling of capacity and performance ( Hyperdisk) By default set to false Corresponds to the JSON property customPerformanceEnabled

Returns:

  • (Boolean)


3036
3037
3038
# File 'lib/google/apis/netapp_v1/classes.rb', line 3036

def custom_performance_enabled
  @custom_performance_enabled
end

#descriptionString

Optional. Description of the storage pool Corresponds to the JSON property description

Returns:

  • (String)


3042
3043
3044
# File 'lib/google/apis/netapp_v1/classes.rb', line 3042

def description
  @description
end

#enable_hot_tier_auto_resizeBoolean Also known as: enable_hot_tier_auto_resize?

Optional. Flag indicating that the hot-tier threshold will be auto-increased by 10% of the hot-tier when it hits 100%. Default is true. The increment will kick in only if the new size after increment is still less than or equal to storage pool size. Corresponds to the JSON property enableHotTierAutoResize

Returns:

  • (Boolean)


3050
3051
3052
# File 'lib/google/apis/netapp_v1/classes.rb', line 3050

def enable_hot_tier_auto_resize
  @enable_hot_tier_auto_resize
end

#encryption_typeString

Output only. Specifies the current pool encryption key source. Corresponds to the JSON property encryptionType

Returns:

  • (String)


3056
3057
3058
# File 'lib/google/apis/netapp_v1/classes.rb', line 3056

def encryption_type
  @encryption_type
end

#global_access_allowedBoolean Also known as: global_access_allowed?

Deprecated. Used to allow SO pool to access AD or DNS server from other regions. Corresponds to the JSON property globalAccessAllowed

Returns:

  • (Boolean)


3062
3063
3064
# File 'lib/google/apis/netapp_v1/classes.rb', line 3062

def global_access_allowed
  @global_access_allowed
end

#hot_tier_size_gibFixnum

Optional. Total hot tier capacity for the Storage Pool. It is applicable only to Flex service level. It should be less than the minimum storage pool size and cannot be more than the current storage pool size. It cannot be decreased once set. Corresponds to the JSON property hotTierSizeGib

Returns:

  • (Fixnum)


3071
3072
3073
# File 'lib/google/apis/netapp_v1/classes.rb', line 3071

def hot_tier_size_gib
  @hot_tier_size_gib
end

#hot_tier_size_used_gibFixnum

Output only. Total hot tier data rounded down to the nearest GiB used by the storage pool. Corresponds to the JSON property hotTierSizeUsedGib

Returns:

  • (Fixnum)


3077
3078
3079
# File 'lib/google/apis/netapp_v1/classes.rb', line 3077

def hot_tier_size_used_gib
  @hot_tier_size_used_gib
end

#kms_configString

Optional. Specifies the KMS config to be used for volume encryption. Corresponds to the JSON property kmsConfig

Returns:

  • (String)


3082
3083
3084
# File 'lib/google/apis/netapp_v1/classes.rb', line 3082

def kms_config
  @kms_config
end

#labelsHash<String,String>

Optional. Labels as key value pairs Corresponds to the JSON property labels

Returns:

  • (Hash<String,String>)


3087
3088
3089
# File 'lib/google/apis/netapp_v1/classes.rb', line 3087

def labels
  @labels
end

#ldap_enabledBoolean Also known as: ldap_enabled?

Optional. Flag indicating if the pool is NFS LDAP enabled or not. Corresponds to the JSON property ldapEnabled

Returns:

  • (Boolean)


3092
3093
3094
# File 'lib/google/apis/netapp_v1/classes.rb', line 3092

def ldap_enabled
  @ldap_enabled
end

#modeString

Optional. Mode of the storage pool. This field is used to control whether the user can perform ONTAP operations on the storage pool using the GCNV ONTAP Mode APIs. If not specified during creation, it defaults to DEFAULT. Corresponds to the JSON property mode

Returns:

  • (String)


3100
3101
3102
# File 'lib/google/apis/netapp_v1/classes.rb', line 3100

def mode
  @mode
end

#nameString

Identifier. Name of the storage pool Corresponds to the JSON property name

Returns:

  • (String)


3105
3106
3107
# File 'lib/google/apis/netapp_v1/classes.rb', line 3105

def name
  @name
end

#networkString

Required. VPC Network name. Format: projects/project/global/networks/ network Corresponds to the JSON property network

Returns:

  • (String)


3111
3112
3113
# File 'lib/google/apis/netapp_v1/classes.rb', line 3111

def network
  @network
end

#psa_rangeString

Optional. This field is not implemented. The values provided in this field are ignored. Corresponds to the JSON property psaRange

Returns:

  • (String)


3117
3118
3119
# File 'lib/google/apis/netapp_v1/classes.rb', line 3117

def psa_range
  @psa_range
end

#qos_typeString

Optional. QoS (Quality of Service) Type of the storage pool Corresponds to the JSON property qosType

Returns:

  • (String)


3122
3123
3124
# File 'lib/google/apis/netapp_v1/classes.rb', line 3122

def qos_type
  @qos_type
end

#replica_zoneString

Optional. Specifies the replica zone for regional storagePool. Corresponds to the JSON property replicaZone

Returns:

  • (String)


3127
3128
3129
# File 'lib/google/apis/netapp_v1/classes.rb', line 3127

def replica_zone
  @replica_zone
end

#satisfies_pziBoolean Also known as: satisfies_pzi?

Output only. Reserved for future use Corresponds to the JSON property satisfiesPzi

Returns:

  • (Boolean)


3132
3133
3134
# File 'lib/google/apis/netapp_v1/classes.rb', line 3132

def satisfies_pzi
  @satisfies_pzi
end

#satisfies_pzsBoolean Also known as: satisfies_pzs?

Output only. Reserved for future use Corresponds to the JSON property satisfiesPzs

Returns:

  • (Boolean)


3138
3139
3140
# File 'lib/google/apis/netapp_v1/classes.rb', line 3138

def satisfies_pzs
  @satisfies_pzs
end

#scale_typeString

Optional. The scale type of the storage pool. Defaults to SCALE_TYPE_DEFAULT if not specified. Corresponds to the JSON property scaleType

Returns:

  • (String)


3145
3146
3147
# File 'lib/google/apis/netapp_v1/classes.rb', line 3145

def scale_type
  @scale_type
end

#service_levelString

Required. Service level of the storage pool Corresponds to the JSON property serviceLevel

Returns:

  • (String)


3150
3151
3152
# File 'lib/google/apis/netapp_v1/classes.rb', line 3150

def service_level
  @service_level
end

#stateString

Output only. State of the storage pool Corresponds to the JSON property state

Returns:

  • (String)


3155
3156
3157
# File 'lib/google/apis/netapp_v1/classes.rb', line 3155

def state
  @state
end

#state_detailsString

Output only. State details of the storage pool Corresponds to the JSON property stateDetails

Returns:

  • (String)


3160
3161
3162
# File 'lib/google/apis/netapp_v1/classes.rb', line 3160

def state_details
  @state_details
end

#total_iopsFixnum

Optional. Custom Performance Total IOPS of the pool if not provided, it will be calculated based on the total_throughput_mibps Corresponds to the JSON property totalIops

Returns:

  • (Fixnum)


3166
3167
3168
# File 'lib/google/apis/netapp_v1/classes.rb', line 3166

def total_iops
  @total_iops
end

#total_throughput_mibpsFixnum

Optional. Custom Performance Total Throughput of the pool (in MiBps) Corresponds to the JSON property totalThroughputMibps

Returns:

  • (Fixnum)


3171
3172
3173
# File 'lib/google/apis/netapp_v1/classes.rb', line 3171

def total_throughput_mibps
  @total_throughput_mibps
end

#typeString

Optional. Type of the storage pool. This field is used to control whether the pool supports FILE based volumes only or UNIFIED (both FILE and BLOCK) volumes. If not specified during creation, it defaults to FILE. Corresponds to the JSON property type

Returns:

  • (String)


3178
3179
3180
# File 'lib/google/apis/netapp_v1/classes.rb', line 3178

def type
  @type
end

#volume_capacity_gibFixnum

Output only. Allocated size of all volumes in GIB in the storage pool Corresponds to the JSON property volumeCapacityGib

Returns:

  • (Fixnum)


3183
3184
3185
# File 'lib/google/apis/netapp_v1/classes.rb', line 3183

def volume_capacity_gib
  @volume_capacity_gib
end

#volume_countFixnum

Output only. Volume count of the storage pool Corresponds to the JSON property volumeCount

Returns:

  • (Fixnum)


3188
3189
3190
# File 'lib/google/apis/netapp_v1/classes.rb', line 3188

def volume_count
  @volume_count
end

#zoneString

Optional. Specifies the active zone for regional storagePool. Corresponds to the JSON property zone

Returns:

  • (String)


3193
3194
3195
# File 'lib/google/apis/netapp_v1/classes.rb', line 3193

def zone
  @zone
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



3200
3201
3202
3203
3204
3205
3206
3207
3208
3209
3210
3211
3212
3213
3214
3215
3216
3217
3218
3219
3220
3221
3222
3223
3224
3225
3226
3227
3228
3229
3230
3231
3232
3233
3234
3235
# File 'lib/google/apis/netapp_v1/classes.rb', line 3200

def update!(**args)
  @active_directory = args[:active_directory] if args.key?(:active_directory)
  @allow_auto_tiering = args[:allow_auto_tiering] if args.key?(:allow_auto_tiering)
  @available_throughput_mibps = args[:available_throughput_mibps] if args.key?(:available_throughput_mibps)
  @capacity_gib = args[:capacity_gib] if args.key?(:capacity_gib)
  @cold_tier_size_used_gib = args[:cold_tier_size_used_gib] if args.key?(:cold_tier_size_used_gib)
  @create_time = args[:create_time] if args.key?(:create_time)
  @custom_performance_enabled = args[:custom_performance_enabled] if args.key?(:custom_performance_enabled)
  @description = args[:description] if args.key?(:description)
  @enable_hot_tier_auto_resize = args[:enable_hot_tier_auto_resize] if args.key?(:enable_hot_tier_auto_resize)
  @encryption_type = args[:encryption_type] if args.key?(:encryption_type)
  @global_access_allowed = args[:global_access_allowed] if args.key?(:global_access_allowed)
  @hot_tier_size_gib = args[:hot_tier_size_gib] if args.key?(:hot_tier_size_gib)
  @hot_tier_size_used_gib = args[:hot_tier_size_used_gib] if args.key?(:hot_tier_size_used_gib)
  @kms_config = args[:kms_config] if args.key?(:kms_config)
  @labels = args[:labels] if args.key?(:labels)
  @ldap_enabled = args[:ldap_enabled] if args.key?(:ldap_enabled)
  @mode = args[:mode] if args.key?(:mode)
  @name = args[:name] if args.key?(:name)
  @network = args[:network] if args.key?(:network)
  @psa_range = args[:psa_range] if args.key?(:psa_range)
  @qos_type = args[:qos_type] if args.key?(:qos_type)
  @replica_zone = args[:replica_zone] if args.key?(:replica_zone)
  @satisfies_pzi = args[:satisfies_pzi] if args.key?(:satisfies_pzi)
  @satisfies_pzs = args[:satisfies_pzs] if args.key?(:satisfies_pzs)
  @scale_type = args[:scale_type] if args.key?(:scale_type)
  @service_level = args[:service_level] if args.key?(:service_level)
  @state = args[:state] if args.key?(:state)
  @state_details = args[:state_details] if args.key?(:state_details)
  @total_iops = args[:total_iops] if args.key?(:total_iops)
  @total_throughput_mibps = args[:total_throughput_mibps] if args.key?(:total_throughput_mibps)
  @type = args[:type] if args.key?(:type)
  @volume_capacity_gib = args[:volume_capacity_gib] if args.key?(:volume_capacity_gib)
  @volume_count = args[:volume_count] if args.key?(:volume_count)
  @zone = args[:zone] if args.key?(:zone)
end