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.



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

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)


2794
2795
2796
# File 'lib/google/apis/netapp_v1/classes.rb', line 2794

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)


2801
2802
2803
# File 'lib/google/apis/netapp_v1/classes.rb', line 2801

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)


2807
2808
2809
# File 'lib/google/apis/netapp_v1/classes.rb', line 2807

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)


2812
2813
2814
# File 'lib/google/apis/netapp_v1/classes.rb', line 2812

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)


2818
2819
2820
# File 'lib/google/apis/netapp_v1/classes.rb', line 2818

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)


2823
2824
2825
# File 'lib/google/apis/netapp_v1/classes.rb', line 2823

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)


2829
2830
2831
# File 'lib/google/apis/netapp_v1/classes.rb', line 2829

def custom_performance_enabled
  @custom_performance_enabled
end

#descriptionString

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

Returns:

  • (String)


2835
2836
2837
# File 'lib/google/apis/netapp_v1/classes.rb', line 2835

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)


2843
2844
2845
# File 'lib/google/apis/netapp_v1/classes.rb', line 2843

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)


2849
2850
2851
# File 'lib/google/apis/netapp_v1/classes.rb', line 2849

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)


2855
2856
2857
# File 'lib/google/apis/netapp_v1/classes.rb', line 2855

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)


2864
2865
2866
# File 'lib/google/apis/netapp_v1/classes.rb', line 2864

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)


2870
2871
2872
# File 'lib/google/apis/netapp_v1/classes.rb', line 2870

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)


2875
2876
2877
# File 'lib/google/apis/netapp_v1/classes.rb', line 2875

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


2880
2881
2882
# File 'lib/google/apis/netapp_v1/classes.rb', line 2880

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)


2885
2886
2887
# File 'lib/google/apis/netapp_v1/classes.rb', line 2885

def ldap_enabled
  @ldap_enabled
end

#modeString

Optional. Mode of the storage pool. This field is used to control whether the user can perform the 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)


2893
2894
2895
# File 'lib/google/apis/netapp_v1/classes.rb', line 2893

def mode
  @mode
end

#nameString

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

Returns:

  • (String)


2898
2899
2900
# File 'lib/google/apis/netapp_v1/classes.rb', line 2898

def name
  @name
end

#networkString

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

Returns:

  • (String)


2904
2905
2906
# File 'lib/google/apis/netapp_v1/classes.rb', line 2904

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)


2910
2911
2912
# File 'lib/google/apis/netapp_v1/classes.rb', line 2910

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)


2915
2916
2917
# File 'lib/google/apis/netapp_v1/classes.rb', line 2915

def qos_type
  @qos_type
end

#replica_zoneString

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

Returns:

  • (String)


2920
2921
2922
# File 'lib/google/apis/netapp_v1/classes.rb', line 2920

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)


2925
2926
2927
# File 'lib/google/apis/netapp_v1/classes.rb', line 2925

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)


2931
2932
2933
# File 'lib/google/apis/netapp_v1/classes.rb', line 2931

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)


2938
2939
2940
# File 'lib/google/apis/netapp_v1/classes.rb', line 2938

def scale_type
  @scale_type
end

#service_levelString

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

Returns:

  • (String)


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

def service_level
  @service_level
end

#stateString

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

Returns:

  • (String)


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

def state
  @state
end

#state_detailsString

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

Returns:

  • (String)


2953
2954
2955
# File 'lib/google/apis/netapp_v1/classes.rb', line 2953

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)


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

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)


2964
2965
2966
# File 'lib/google/apis/netapp_v1/classes.rb', line 2964

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)


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

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)


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

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)


2981
2982
2983
# File 'lib/google/apis/netapp_v1/classes.rb', line 2981

def volume_count
  @volume_count
end

#zoneString

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

Returns:

  • (String)


2986
2987
2988
# File 'lib/google/apis/netapp_v1/classes.rb', line 2986

def zone
  @zone
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



2993
2994
2995
2996
2997
2998
2999
3000
3001
3002
3003
3004
3005
3006
3007
3008
3009
3010
3011
3012
3013
3014
3015
3016
3017
3018
3019
3020
3021
3022
3023
3024
3025
3026
3027
3028
# File 'lib/google/apis/netapp_v1/classes.rb', line 2993

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