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.



3142
3143
3144
# File 'lib/google/apis/netapp_v1/classes.rb', line 3142

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)


2948
2949
2950
# File 'lib/google/apis/netapp_v1/classes.rb', line 2948

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)


2955
2956
2957
# File 'lib/google/apis/netapp_v1/classes.rb', line 2955

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)


2961
2962
2963
# File 'lib/google/apis/netapp_v1/classes.rb', line 2961

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)


2966
2967
2968
# File 'lib/google/apis/netapp_v1/classes.rb', line 2966

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)


2972
2973
2974
# File 'lib/google/apis/netapp_v1/classes.rb', line 2972

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)


2977
2978
2979
# File 'lib/google/apis/netapp_v1/classes.rb', line 2977

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)


2983
2984
2985
# File 'lib/google/apis/netapp_v1/classes.rb', line 2983

def custom_performance_enabled
  @custom_performance_enabled
end

#descriptionString

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

Returns:

  • (String)


2989
2990
2991
# File 'lib/google/apis/netapp_v1/classes.rb', line 2989

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)


2997
2998
2999
# File 'lib/google/apis/netapp_v1/classes.rb', line 2997

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)


3003
3004
3005
# File 'lib/google/apis/netapp_v1/classes.rb', line 3003

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)


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

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)


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

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)


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

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)


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

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>)


3034
3035
3036
# File 'lib/google/apis/netapp_v1/classes.rb', line 3034

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)


3039
3040
3041
# File 'lib/google/apis/netapp_v1/classes.rb', line 3039

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)


3047
3048
3049
# File 'lib/google/apis/netapp_v1/classes.rb', line 3047

def mode
  @mode
end

#nameString

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

Returns:

  • (String)


3052
3053
3054
# File 'lib/google/apis/netapp_v1/classes.rb', line 3052

def name
  @name
end

#networkString

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

Returns:

  • (String)


3058
3059
3060
# File 'lib/google/apis/netapp_v1/classes.rb', line 3058

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)


3064
3065
3066
# File 'lib/google/apis/netapp_v1/classes.rb', line 3064

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)


3069
3070
3071
# File 'lib/google/apis/netapp_v1/classes.rb', line 3069

def qos_type
  @qos_type
end

#replica_zoneString

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

Returns:

  • (String)


3074
3075
3076
# File 'lib/google/apis/netapp_v1/classes.rb', line 3074

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)


3079
3080
3081
# File 'lib/google/apis/netapp_v1/classes.rb', line 3079

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)


3085
3086
3087
# File 'lib/google/apis/netapp_v1/classes.rb', line 3085

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)


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

def scale_type
  @scale_type
end

#service_levelString

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

Returns:

  • (String)


3097
3098
3099
# File 'lib/google/apis/netapp_v1/classes.rb', line 3097

def service_level
  @service_level
end

#stateString

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

Returns:

  • (String)


3102
3103
3104
# File 'lib/google/apis/netapp_v1/classes.rb', line 3102

def state
  @state
end

#state_detailsString

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

Returns:

  • (String)


3107
3108
3109
# File 'lib/google/apis/netapp_v1/classes.rb', line 3107

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)


3113
3114
3115
# File 'lib/google/apis/netapp_v1/classes.rb', line 3113

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)


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

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)


3125
3126
3127
# File 'lib/google/apis/netapp_v1/classes.rb', line 3125

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)


3130
3131
3132
# File 'lib/google/apis/netapp_v1/classes.rb', line 3130

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)


3135
3136
3137
# File 'lib/google/apis/netapp_v1/classes.rb', line 3135

def volume_count
  @volume_count
end

#zoneString

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

Returns:

  • (String)


3140
3141
3142
# File 'lib/google/apis/netapp_v1/classes.rb', line 3140

def zone
  @zone
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



3147
3148
3149
3150
3151
3152
3153
3154
3155
3156
3157
3158
3159
3160
3161
3162
3163
3164
3165
3166
3167
3168
3169
3170
3171
3172
3173
3174
3175
3176
3177
3178
3179
3180
3181
3182
# File 'lib/google/apis/netapp_v1/classes.rb', line 3147

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