Class CSIStorageCapacity

  • All Implemented Interfaces:
    io.fabric8.kubernetes.api.builder.Editable<CSIStorageCapacityBuilder>, io.fabric8.kubernetes.api.model.HasMetadata, io.fabric8.kubernetes.api.model.KubernetesResource, io.fabric8.kubernetes.api.model.Namespaced, Serializable

    @Generated("io.fabric8.kubernetes.schema.generator.model.ModelGenerator")
    public class CSIStorageCapacity
    extends Object
    implements io.fabric8.kubernetes.api.builder.Editable<CSIStorageCapacityBuilder>, io.fabric8.kubernetes.api.model.HasMetadata, io.fabric8.kubernetes.api.model.Namespaced
    CSIStorageCapacity stores the result of one CSI GetCapacity call. For a given StorageClass, this describes the available capacity in a particular topology segment. This can be used when considering where to instantiate new PersistentVolumes.


    For example this can express things like: - StorageClass "standard" has "1234 GiB" available in "topology.kubernetes.io/zone=us-east1" - StorageClass "localssd" has "10 GiB" available in "kubernetes.io/hostname=knode-abc123"


    The following three cases all imply that no capacity is available for a certain combination: - no object exists with suitable topology and storage class name - such an object exists, but the capacity is unset - such an object exists, but the capacity is zero


    The producer of these objects can decide which approach is more suitable.


    They are consumed by the kube-scheduler if the CSIStorageCapacity beta feature gate is enabled there and a CSI driver opts into capacity-aware scheduling with CSIDriver.StorageCapacity.

    See Also:
    Serialized Form
    • Field Summary

      • Fields inherited from interface io.fabric8.kubernetes.api.model.HasMetadata

        DNS_LABEL_END, DNS_LABEL_REGEXP, DNS_LABEL_START, FINALIZER_NAME_MATCHER, REQUIRES_NON_NULL_METADATA, REQUIRES_NON_NULL_NAME, REQUIRES_NON_NULL_NAMESPACE
    • Constructor Summary

      Constructors 
      Constructor Description
      CSIStorageCapacity()
      No args constructor for use in serialization
      CSIStorageCapacity​(String apiVersion, io.fabric8.kubernetes.api.model.Quantity capacity, String kind, io.fabric8.kubernetes.api.model.Quantity maximumVolumeSize, io.fabric8.kubernetes.api.model.ObjectMeta metadata, io.fabric8.kubernetes.api.model.LabelSelector nodeTopology, String storageClassName)  
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      CSIStorageCapacityBuilder edit()  
      Map<String,​Object> getAdditionalProperties()  
      String getApiVersion()
      APIVersion defines the versioned schema of this representation of an object.
      io.fabric8.kubernetes.api.model.Quantity getCapacity()
      CSIStorageCapacity stores the result of one CSI GetCapacity call.
      String getKind()
      Kind is a string value representing the REST resource this object represents.
      io.fabric8.kubernetes.api.model.Quantity getMaximumVolumeSize()
      CSIStorageCapacity stores the result of one CSI GetCapacity call.
      io.fabric8.kubernetes.api.model.ObjectMeta getMetadata()
      CSIStorageCapacity stores the result of one CSI GetCapacity call.
      io.fabric8.kubernetes.api.model.LabelSelector getNodeTopology()
      CSIStorageCapacity stores the result of one CSI GetCapacity call.
      String getStorageClassName()
      The name of the StorageClass that the reported capacity applies to.
      void setAdditionalProperties​(Map<String,​Object> additionalProperties)  
      void setAdditionalProperty​(String name, Object value)  
      void setApiVersion​(String apiVersion)
      APIVersion defines the versioned schema of this representation of an object.
      void setCapacity​(io.fabric8.kubernetes.api.model.Quantity capacity)
      CSIStorageCapacity stores the result of one CSI GetCapacity call.
      void setKind​(String kind)
      Kind is a string value representing the REST resource this object represents.
      void setMaximumVolumeSize​(io.fabric8.kubernetes.api.model.Quantity maximumVolumeSize)
      CSIStorageCapacity stores the result of one CSI GetCapacity call.
      void setMetadata​(io.fabric8.kubernetes.api.model.ObjectMeta metadata)
      CSIStorageCapacity stores the result of one CSI GetCapacity call.
      void setNodeTopology​(io.fabric8.kubernetes.api.model.LabelSelector nodeTopology)
      CSIStorageCapacity stores the result of one CSI GetCapacity call.
      void setStorageClassName​(String storageClassName)
      The name of the StorageClass that the reported capacity applies to.
      CSIStorageCapacityBuilder toBuilder()  
      • Methods inherited from interface io.fabric8.kubernetes.api.model.HasMetadata

        addFinalizer, addOwnerReference, addOwnerReference, getFinalizers, getFullResourceName, getOwnerReferenceFor, getOwnerReferenceFor, getPlural, getSingular, hasFinalizer, hasOwnerReferenceFor, hasOwnerReferenceFor, initNameAndNamespaceFrom, isFinalizerValid, isMarkedForDeletion, optionalMetadata, removeFinalizer, removeOwnerReference, removeOwnerReference
    • Constructor Detail

      • CSIStorageCapacity

        public CSIStorageCapacity()
        No args constructor for use in serialization
      • CSIStorageCapacity

        public CSIStorageCapacity​(String apiVersion,
                                  io.fabric8.kubernetes.api.model.Quantity capacity,
                                  String kind,
                                  io.fabric8.kubernetes.api.model.Quantity maximumVolumeSize,
                                  io.fabric8.kubernetes.api.model.ObjectMeta metadata,
                                  io.fabric8.kubernetes.api.model.LabelSelector nodeTopology,
                                  String storageClassName)
    • Method Detail

      • getApiVersion

        public String getApiVersion()
        APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
        Specified by:
        getApiVersion in interface io.fabric8.kubernetes.api.model.HasMetadata
      • setApiVersion

        public void setApiVersion​(String apiVersion)
        APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
        Specified by:
        setApiVersion in interface io.fabric8.kubernetes.api.model.HasMetadata
      • getCapacity

        public io.fabric8.kubernetes.api.model.Quantity getCapacity()
        CSIStorageCapacity stores the result of one CSI GetCapacity call. For a given StorageClass, this describes the available capacity in a particular topology segment. This can be used when considering where to instantiate new PersistentVolumes.


        For example this can express things like: - StorageClass "standard" has "1234 GiB" available in "topology.kubernetes.io/zone=us-east1" - StorageClass "localssd" has "10 GiB" available in "kubernetes.io/hostname=knode-abc123"


        The following three cases all imply that no capacity is available for a certain combination: - no object exists with suitable topology and storage class name - such an object exists, but the capacity is unset - such an object exists, but the capacity is zero


        The producer of these objects can decide which approach is more suitable.


        They are consumed by the kube-scheduler if the CSIStorageCapacity beta feature gate is enabled there and a CSI driver opts into capacity-aware scheduling with CSIDriver.StorageCapacity.

      • setCapacity

        public void setCapacity​(io.fabric8.kubernetes.api.model.Quantity capacity)
        CSIStorageCapacity stores the result of one CSI GetCapacity call. For a given StorageClass, this describes the available capacity in a particular topology segment. This can be used when considering where to instantiate new PersistentVolumes.


        For example this can express things like: - StorageClass "standard" has "1234 GiB" available in "topology.kubernetes.io/zone=us-east1" - StorageClass "localssd" has "10 GiB" available in "kubernetes.io/hostname=knode-abc123"


        The following three cases all imply that no capacity is available for a certain combination: - no object exists with suitable topology and storage class name - such an object exists, but the capacity is unset - such an object exists, but the capacity is zero


        The producer of these objects can decide which approach is more suitable.


        They are consumed by the kube-scheduler if the CSIStorageCapacity beta feature gate is enabled there and a CSI driver opts into capacity-aware scheduling with CSIDriver.StorageCapacity.

      • getKind

        public String getKind()
        Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
        Specified by:
        getKind in interface io.fabric8.kubernetes.api.model.HasMetadata
      • setKind

        public void setKind​(String kind)
        Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
      • getMaximumVolumeSize

        public io.fabric8.kubernetes.api.model.Quantity getMaximumVolumeSize()
        CSIStorageCapacity stores the result of one CSI GetCapacity call. For a given StorageClass, this describes the available capacity in a particular topology segment. This can be used when considering where to instantiate new PersistentVolumes.


        For example this can express things like: - StorageClass "standard" has "1234 GiB" available in "topology.kubernetes.io/zone=us-east1" - StorageClass "localssd" has "10 GiB" available in "kubernetes.io/hostname=knode-abc123"


        The following three cases all imply that no capacity is available for a certain combination: - no object exists with suitable topology and storage class name - such an object exists, but the capacity is unset - such an object exists, but the capacity is zero


        The producer of these objects can decide which approach is more suitable.


        They are consumed by the kube-scheduler if the CSIStorageCapacity beta feature gate is enabled there and a CSI driver opts into capacity-aware scheduling with CSIDriver.StorageCapacity.

      • setMaximumVolumeSize

        public void setMaximumVolumeSize​(io.fabric8.kubernetes.api.model.Quantity maximumVolumeSize)
        CSIStorageCapacity stores the result of one CSI GetCapacity call. For a given StorageClass, this describes the available capacity in a particular topology segment. This can be used when considering where to instantiate new PersistentVolumes.


        For example this can express things like: - StorageClass "standard" has "1234 GiB" available in "topology.kubernetes.io/zone=us-east1" - StorageClass "localssd" has "10 GiB" available in "kubernetes.io/hostname=knode-abc123"


        The following three cases all imply that no capacity is available for a certain combination: - no object exists with suitable topology and storage class name - such an object exists, but the capacity is unset - such an object exists, but the capacity is zero


        The producer of these objects can decide which approach is more suitable.


        They are consumed by the kube-scheduler if the CSIStorageCapacity beta feature gate is enabled there and a CSI driver opts into capacity-aware scheduling with CSIDriver.StorageCapacity.

      • getMetadata

        public io.fabric8.kubernetes.api.model.ObjectMeta getMetadata()
        CSIStorageCapacity stores the result of one CSI GetCapacity call. For a given StorageClass, this describes the available capacity in a particular topology segment. This can be used when considering where to instantiate new PersistentVolumes.


        For example this can express things like: - StorageClass "standard" has "1234 GiB" available in "topology.kubernetes.io/zone=us-east1" - StorageClass "localssd" has "10 GiB" available in "kubernetes.io/hostname=knode-abc123"


        The following three cases all imply that no capacity is available for a certain combination: - no object exists with suitable topology and storage class name - such an object exists, but the capacity is unset - such an object exists, but the capacity is zero


        The producer of these objects can decide which approach is more suitable.


        They are consumed by the kube-scheduler if the CSIStorageCapacity beta feature gate is enabled there and a CSI driver opts into capacity-aware scheduling with CSIDriver.StorageCapacity.

        Specified by:
        getMetadata in interface io.fabric8.kubernetes.api.model.HasMetadata
      • setMetadata

        public void setMetadata​(io.fabric8.kubernetes.api.model.ObjectMeta metadata)
        CSIStorageCapacity stores the result of one CSI GetCapacity call. For a given StorageClass, this describes the available capacity in a particular topology segment. This can be used when considering where to instantiate new PersistentVolumes.


        For example this can express things like: - StorageClass "standard" has "1234 GiB" available in "topology.kubernetes.io/zone=us-east1" - StorageClass "localssd" has "10 GiB" available in "kubernetes.io/hostname=knode-abc123"


        The following three cases all imply that no capacity is available for a certain combination: - no object exists with suitable topology and storage class name - such an object exists, but the capacity is unset - such an object exists, but the capacity is zero


        The producer of these objects can decide which approach is more suitable.


        They are consumed by the kube-scheduler if the CSIStorageCapacity beta feature gate is enabled there and a CSI driver opts into capacity-aware scheduling with CSIDriver.StorageCapacity.

        Specified by:
        setMetadata in interface io.fabric8.kubernetes.api.model.HasMetadata
      • getNodeTopology

        public io.fabric8.kubernetes.api.model.LabelSelector getNodeTopology()
        CSIStorageCapacity stores the result of one CSI GetCapacity call. For a given StorageClass, this describes the available capacity in a particular topology segment. This can be used when considering where to instantiate new PersistentVolumes.


        For example this can express things like: - StorageClass "standard" has "1234 GiB" available in "topology.kubernetes.io/zone=us-east1" - StorageClass "localssd" has "10 GiB" available in "kubernetes.io/hostname=knode-abc123"


        The following three cases all imply that no capacity is available for a certain combination: - no object exists with suitable topology and storage class name - such an object exists, but the capacity is unset - such an object exists, but the capacity is zero


        The producer of these objects can decide which approach is more suitable.


        They are consumed by the kube-scheduler if the CSIStorageCapacity beta feature gate is enabled there and a CSI driver opts into capacity-aware scheduling with CSIDriver.StorageCapacity.

      • setNodeTopology

        public void setNodeTopology​(io.fabric8.kubernetes.api.model.LabelSelector nodeTopology)
        CSIStorageCapacity stores the result of one CSI GetCapacity call. For a given StorageClass, this describes the available capacity in a particular topology segment. This can be used when considering where to instantiate new PersistentVolumes.


        For example this can express things like: - StorageClass "standard" has "1234 GiB" available in "topology.kubernetes.io/zone=us-east1" - StorageClass "localssd" has "10 GiB" available in "kubernetes.io/hostname=knode-abc123"


        The following three cases all imply that no capacity is available for a certain combination: - no object exists with suitable topology and storage class name - such an object exists, but the capacity is unset - such an object exists, but the capacity is zero


        The producer of these objects can decide which approach is more suitable.


        They are consumed by the kube-scheduler if the CSIStorageCapacity beta feature gate is enabled there and a CSI driver opts into capacity-aware scheduling with CSIDriver.StorageCapacity.

      • getStorageClassName

        public String getStorageClassName()
        The name of the StorageClass that the reported capacity applies to. It must meet the same requirements as the name of a StorageClass object (non-empty, DNS subdomain). If that object no longer exists, the CSIStorageCapacity object is obsolete and should be removed by its creator. This field is immutable.
      • setStorageClassName

        public void setStorageClassName​(String storageClassName)
        The name of the StorageClass that the reported capacity applies to. It must meet the same requirements as the name of a StorageClass object (non-empty, DNS subdomain). If that object no longer exists, the CSIStorageCapacity object is obsolete and should be removed by its creator. This field is immutable.
      • getAdditionalProperties

        public Map<String,​Object> getAdditionalProperties()
      • setAdditionalProperty

        public void setAdditionalProperty​(String name,
                                          Object value)
      • setAdditionalProperties

        public void setAdditionalProperties​(Map<String,​Object> additionalProperties)