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.



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

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)


2942
2943
2944
# File 'lib/google/apis/netapp_v1/classes.rb', line 2942

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)


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

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)


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

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)


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

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)


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

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)


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

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)


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

def custom_performance_enabled
  @custom_performance_enabled
end

#descriptionString

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

Returns:

  • (String)


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

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)


2991
2992
2993
# File 'lib/google/apis/netapp_v1/classes.rb', line 2991

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)


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

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)


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

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)


3012
3013
3014
# File 'lib/google/apis/netapp_v1/classes.rb', line 3012

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)


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

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)


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

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


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

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)


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

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)


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

def mode
  @mode
end

#nameString

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

Returns:

  • (String)


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

def name
  @name
end

#networkString

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

Returns:

  • (String)


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

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)


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

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)


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

def qos_type
  @qos_type
end

#replica_zoneString

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

Returns:

  • (String)


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

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)


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

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)


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

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)


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

def scale_type
  @scale_type
end

#service_levelString

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

Returns:

  • (String)


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

def service_level
  @service_level
end

#stateString

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

Returns:

  • (String)


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

def state
  @state
end

#state_detailsString

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

Returns:

  • (String)


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

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)


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

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)


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

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)


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

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)


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

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)


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

def volume_count
  @volume_count
end

#zoneString

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

Returns:

  • (String)


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

def zone
  @zone
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



3141
3142
3143
3144
3145
3146
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
# File 'lib/google/apis/netapp_v1/classes.rb', line 3141

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