CSIStorageCapacity

com.coralogix.zio.k8s.model.storage.v1alpha1.CSIStorageCapacity
See theCSIStorageCapacity companion object
case class CSIStorageCapacity(capacity: Optional[Quantity], maximumVolumeSize: Optional[Quantity], metadata: Optional[ObjectMeta], nodeTopology: Optional[LabelSelector], storageClassName: String)

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.

Value parameters

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.

Attributes

Companion
object
Graph
Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all

Members list

Value members

Concrete methods

Gets capacity.

Gets capacity.

If the field is not present, fails with com.coralogix.zio.k8s.client.UndefinedField.

Attributes

Gets maximumVolumeSize.

Gets maximumVolumeSize.

If the field is not present, fails with com.coralogix.zio.k8s.client.UndefinedField.

Attributes

Gets metadata.

Gets metadata.

If the field is not present, fails with com.coralogix.zio.k8s.client.UndefinedField.

Attributes

Gets nodeTopology.

Gets nodeTopology.

If the field is not present, fails with com.coralogix.zio.k8s.client.UndefinedField.

Attributes

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.

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.

This effect always succeeds, it is safe to use the field storageClassName directly.

Attributes

Inherited methods

def attachOwner(ownerName: String, ownerUid: String, ownerType: K8sResourceType, kind: String): T
Implicitly added by Ops

Attach another resource as the owner of this one

Attach another resource as the owner of this one

Value parameters

kind

Owner's resource kind

ownerName

Owner's name

ownerType

Owner's resource type metadata

ownerUid

Owner's UID

Attributes

Returns

Object with the attached owner described in its metadata

Inherited from:
K8sObjectOps
Implicitly added by Ops

Gets the geneation of the object or 0 if it is new

Gets the geneation of the object or 0 if it is new

Attributes

Inherited from:
K8sObjectOps
Implicitly added by Ops

Gets the metadata of the object and fail with com.coralogix.zio.k8s.client.UndefinedField if it is not present

Gets the metadata of the object and fail with com.coralogix.zio.k8s.client.UndefinedField if it is not present

Attributes

Inherited from:
K8sObjectOps
Implicitly added by Ops

Gets the name of the object and fail with com.coralogix.zio.k8s.client.UndefinedField if it is not present

Gets the name of the object and fail with com.coralogix.zio.k8s.client.UndefinedField if it is not present

Attributes

Inherited from:
K8sObjectOps
Implicitly added by Ops

Gets the UID of the object and fail with com.coralogix.zio.k8s.client.UndefinedField if it is not present

Gets the UID of the object and fail with com.coralogix.zio.k8s.client.UndefinedField if it is not present

Attributes

Inherited from:
K8sObjectOps
def isOwnedBy[OwnerT : ResourceMetadata](owner: OwnerT): Boolean
Implicitly added by Ops

Verifies ownership between the resources

Verifies ownership between the resources

Type parameters

OwnerT

Type of the owner resource

Value parameters

owner

Possible owner of this resource

Attributes

Returns

True if owner owns this resource

Inherited from:
K8sObjectOps
Implicitly added by Ops

Creates a new object with its metadata modified by the given function f

Creates a new object with its metadata modified by the given function f

Value parameters

f

Function to modify the object's metadata with

Attributes

Returns

Object with modified metadata

Inherited from:
K8sObjectOps
Implicitly added by Ops

Gets the metadata of the object

Gets the metadata of the object

Attributes

Inherited from:
K8sObjectOps

Attributes

Inherited from:
Product

Attributes

Inherited from:
Product
def tryAttachOwner[OwnerT : ResourceMetadata](owner: OwnerT): IO[K8sFailure, T]
Implicitly added by Ops

Tries to attach another resource as the owner of this one. Can fail with com.coralogix.zio.k8s.client.UndefinedField if the owner does not have all the required metadata.

Tries to attach another resource as the owner of this one. Can fail with com.coralogix.zio.k8s.client.UndefinedField if the owner does not have all the required metadata.

Type parameters

OwnerT

Type of the owner

Value parameters

owner

Owner resource

Attributes

Returns

Object with the attached owner described in its metadata

Inherited from:
K8sObjectOps

Concrete fields

override protected val impl: K8sObject[CSIStorageCapacity]
Implicitly added by Ops
protected val obj: CSIStorageCapacity
Implicitly added by Ops