package v1
- Alphabetic
- Public
- Protected
Type Members
- final case class CSIDriver(spec: CSIDriverSpec, metadata: Option[ObjectMeta] = None) extends KObject with Product with Serializable
CSIDriver captures information about a Container Storage Interface (CSI) volume driver deployed on the cluster.
CSIDriver captures information about a Container Storage Interface (CSI) volume driver deployed on the cluster. Kubernetes attach detach controller uses this object to determine whether attach is required. Kubelet uses this object to determine whether pod information needs to be passed on mount. CSIDriver objects are non-namespaced.
- final case class CSIDriverList(items: Seq[CSIDriver], metadata: Option[ListMeta] = None) extends KObject with Product with Serializable
CSIDriverList is a collection of CSIDriver objects.
- final case class CSIDriverSpec(volumeLifecycleModes: Option[Seq[String]] = None, podInfoOnMount: Option[Boolean] = None, attachRequired: Option[Boolean] = None, requiresRepublish: Option[Boolean] = None, fsGroupPolicy: Option[String] = None, storageCapacity: Option[Boolean] = None, tokenRequests: Option[Seq[TokenRequest]] = None, seLinuxMount: Option[Boolean] = None) extends Product with Serializable
CSIDriverSpec is the specification of a CSIDriver.
- final case class CSINode(spec: CSINodeSpec, metadata: Option[ObjectMeta] = None) extends KObject with Product with Serializable
CSINode holds information about all CSI drivers installed on a node.
CSINode holds information about all CSI drivers installed on a node. CSI drivers do not need to create the CSINode object directly. As long as they use the node-driver-registrar sidecar container, the kubelet will automatically populate the CSINode object for the CSI driver as part of kubelet plugin registration. CSINode has the same name as a node. If the object is missing, it means either there are no CSI Drivers available on the node, or the Kubelet version is low enough that it doesn't create this object. CSINode has an OwnerReference that points to the corresponding node object.
- final case class CSINodeDriver(name: String, nodeID: String, allocatable: Option[VolumeNodeResources] = None, topologyKeys: Option[Seq[String]] = None) extends Product with Serializable
CSINodeDriver holds information about the specification of one CSI driver installed on a node
- final case class CSINodeList(items: Seq[CSINode], metadata: Option[ListMeta] = None) extends KObject with Product with Serializable
CSINodeList is a collection of CSINode objects.
- final case class CSINodeSpec(drivers: Seq[CSINodeDriver]) extends Product with Serializable
CSINodeSpec holds information about the specification of all CSI drivers installed on a node
- final case class CSIStorageCapacity(storageClassName: String, maximumVolumeSize: Option[Quantity] = None, nodeTopology: Option[LabelSelector] = None, metadata: Option[ObjectMeta] = None, capacity: Option[Quantity] = None) extends KObject with Product with Serializable
CSIStorageCapacity stores the result of one CSI GetCapacity call.
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 when a CSI driver opts into capacity-aware scheduling with CSIDriverSpec.StorageCapacity. The scheduler compares the MaximumVolumeSize against the requested size of pending volumes to filter out unsuitable nodes. If MaximumVolumeSize is unset, it falls back to a comparison against the less precise Capacity. If that is also unset, the scheduler assumes that capacity is insufficient and tries some other node.
- final case class CSIStorageCapacityList(items: Seq[CSIStorageCapacity], metadata: Option[ListMeta] = None) extends KObject with Product with Serializable
CSIStorageCapacityList is a collection of CSIStorageCapacity objects.
- final case class StorageClass(provisioner: String, mountOptions: Option[Seq[String]] = None, reclaimPolicy: Option[String] = None, volumeBindingMode: Option[String] = None, metadata: Option[ObjectMeta] = None, allowVolumeExpansion: Option[Boolean] = None, allowedTopologies: Option[Seq[TopologySelectorTerm]] = None, parameters: Option[Map[String, String]] = None) extends KObject with Product with Serializable
StorageClass describes the parameters for a class of storage for which PersistentVolumes can be dynamically provisioned.
StorageClass describes the parameters for a class of storage for which PersistentVolumes can be dynamically provisioned.
StorageClasses are non-namespaced; the name of the storage class according to etcd is in ObjectMeta.Name.
- final case class StorageClassList(items: Seq[StorageClass], metadata: Option[ListMeta] = None) extends KObject with Product with Serializable
StorageClassList is a collection of storage classes.
- final case class TokenRequest(audience: String, expirationSeconds: Option[Int] = None) extends Product with Serializable
TokenRequest contains parameters of a service account token.
- final case class VolumeAttachment(spec: VolumeAttachmentSpec, status: Option[VolumeAttachmentStatus] = None, metadata: Option[ObjectMeta] = None) extends KObject with Product with Serializable
VolumeAttachment captures the intent to attach or detach the specified volume to/from the specified node.
VolumeAttachment captures the intent to attach or detach the specified volume to/from the specified node.
VolumeAttachment objects are non-namespaced.
- final case class VolumeAttachmentList(items: Seq[VolumeAttachment], metadata: Option[ListMeta] = None) extends KObject with Product with Serializable
VolumeAttachmentList is a collection of VolumeAttachment objects.
- final case class VolumeAttachmentSource(inlineVolumeSpec: Option[PersistentVolumeSpec] = None, persistentVolumeName: Option[String] = None) extends Product with Serializable
VolumeAttachmentSource represents a volume that should be attached.
VolumeAttachmentSource represents a volume that should be attached. Right now only PersistenVolumes can be attached via external attacher, in future we may allow also inline volumes in pods. Exactly one member can be set.
- final case class VolumeAttachmentSpec(attacher: String, nodeName: String, source: VolumeAttachmentSource) extends Product with Serializable
VolumeAttachmentSpec is the specification of a VolumeAttachment request.
- final case class VolumeAttachmentStatus(attached: Boolean, attachError: Option[VolumeError] = None, attachmentMetadata: Option[Map[String, String]] = None, detachError: Option[VolumeError] = None) extends Product with Serializable
VolumeAttachmentStatus is the status of a VolumeAttachment request.
- final case class VolumeError(message: Option[String] = None, time: Option[Time] = None) extends Product with Serializable
VolumeError captures an error encountered during a volume operation.
- final case class VolumeNodeResources(count: Option[Int] = None) extends Product with Serializable
VolumeNodeResources is a set of resource limits for scheduling of volumes.
Value Members
- object CSIDriver extends Serializable
- object CSIDriverList extends Serializable
- object CSIDriverSpec extends Serializable
- object CSINode extends Serializable
- object CSINodeDriver extends Serializable
- object CSINodeList extends Serializable
- object CSINodeSpec extends Serializable
- object CSIStorageCapacity extends Serializable
- object CSIStorageCapacityList extends Serializable
- object StorageClass extends Serializable
- object StorageClassList extends Serializable
- object TokenRequest extends Serializable
- object VolumeAttachment extends Serializable
- object VolumeAttachmentList extends Serializable
- object VolumeAttachmentSource extends Serializable
- object VolumeAttachmentSpec extends Serializable
- object VolumeAttachmentStatus extends Serializable
- object VolumeError extends Serializable
- object VolumeNodeResources extends Serializable