From 19bae8cadd42c97843c898d75a1bdc22b6f997bf Mon Sep 17 00:00:00 2001 From: Tanguy Herbron Date: Tue, 14 Nov 2023 00:23:57 +0100 Subject: [PATCH] feat(longhorn): Rework installation process --- longhorn/kustomization.yaml | 1 - longhorn/longhorn.yaml | 4326 ----------------------------------- 2 files changed, 4327 deletions(-) delete mode 100644 longhorn/longhorn.yaml diff --git a/longhorn/kustomization.yaml b/longhorn/kustomization.yaml index f40d302..14d8f3a 100644 --- a/longhorn/kustomization.yaml +++ b/longhorn/kustomization.yaml @@ -2,5 +2,4 @@ apiVersion: kustomize.config.k8s.io/v1beta1 kind: Kustomization resources: - - longhorn.yaml - ingress.yaml diff --git a/longhorn/longhorn.yaml b/longhorn/longhorn.yaml deleted file mode 100644 index 12986f3..0000000 --- a/longhorn/longhorn.yaml +++ /dev/null @@ -1,4326 +0,0 @@ ---- -# Builtin: "helm template" does not respect --create-namespace -apiVersion: v1 -kind: Namespace -metadata: - name: longhorn-system ---- -# Source: longhorn/templates/serviceaccount.yaml -apiVersion: v1 -kind: ServiceAccount -metadata: - name: longhorn-service-account - namespace: longhorn-system - labels: - app.kubernetes.io/name: longhorn - app.kubernetes.io/instance: longhorn - app.kubernetes.io/version: v1.4.0-dev ---- -# Source: longhorn/templates/serviceaccount.yaml -apiVersion: v1 -kind: ServiceAccount -metadata: - name: longhorn-support-bundle - namespace: longhorn-system - labels: - app.kubernetes.io/name: longhorn - app.kubernetes.io/instance: longhorn - app.kubernetes.io/version: v1.4.0-dev ---- -# Source: longhorn/templates/default-setting.yaml -apiVersion: v1 -kind: ConfigMap -metadata: - name: longhorn-default-setting - namespace: longhorn-system - labels: - app.kubernetes.io/name: longhorn - app.kubernetes.io/instance: longhorn - app.kubernetes.io/version: v1.4.0-dev -data: - default-setting.yaml: |- ---- -# Source: longhorn/templates/storageclass.yaml -apiVersion: v1 -kind: ConfigMap -metadata: - name: longhorn-storageclass - namespace: longhorn-system - labels: - app.kubernetes.io/name: longhorn - app.kubernetes.io/instance: longhorn - app.kubernetes.io/version: v1.4.0-dev -data: - storageclass.yaml: | - kind: StorageClass - apiVersion: storage.k8s.io/v1 - metadata: - name: longhorn - annotations: - storageclass.kubernetes.io/is-default-class: "true" - provisioner: driver.longhorn.io - allowVolumeExpansion: true - reclaimPolicy: "Delete" - volumeBindingMode: Immediate - parameters: - numberOfReplicas: "3" - staleReplicaTimeout: "30" - fromBackup: "" - fsType: "ext4" - dataLocality: "disabled" ---- -# Source: longhorn/templates/crds.yaml -apiVersion: apiextensions.k8s.io/v1 -kind: CustomResourceDefinition -metadata: - annotations: - controller-gen.kubebuilder.io/version: v0.7.0 - creationTimestamp: null - labels: - app.kubernetes.io/name: longhorn - app.kubernetes.io/instance: longhorn - app.kubernetes.io/version: v1.4.0-dev - longhorn-manager: "" - name: backingimagedatasources.longhorn.io -spec: - group: longhorn.io - names: - kind: BackingImageDataSource - listKind: BackingImageDataSourceList - plural: backingimagedatasources - shortNames: - - lhbids - singular: backingimagedatasource - scope: Namespaced - versions: - - additionalPrinterColumns: - - description: The current state of the pod used to provision the backing image file from source - jsonPath: .status.currentState - name: State - type: string - - description: The data source type - jsonPath: .spec.sourceType - name: SourceType - type: string - - description: The node the backing image file will be prepared on - jsonPath: .spec.nodeID - name: Node - type: string - - description: The disk the backing image file will be prepared on - jsonPath: .spec.diskUUID - name: DiskUUID - type: string - - jsonPath: .metadata.creationTimestamp - name: Age - type: date - name: v1beta1 - schema: - openAPIV3Schema: - description: BackingImageDataSource is where Longhorn stores backing image data source object. - properties: - apiVersion: - description: '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' - type: string - kind: - description: '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' - type: string - metadata: - type: object - spec: - x-kubernetes-preserve-unknown-fields: true - status: - x-kubernetes-preserve-unknown-fields: true - type: object - served: true - storage: false - subresources: - status: {} - - additionalPrinterColumns: - - description: The system generated UUID of the provisioned backing image file - jsonPath: .spec.uuid - name: UUID - type: string - - description: The current state of the pod used to provision the backing image file from source - jsonPath: .status.currentState - name: State - type: string - - description: The data source type - jsonPath: .spec.sourceType - name: SourceType - type: string - - description: The backing image file size - jsonPath: .status.size - name: Size - type: string - - description: The node the backing image file will be prepared on - jsonPath: .spec.nodeID - name: Node - type: string - - description: The disk the backing image file will be prepared on - jsonPath: .spec.diskUUID - name: DiskUUID - type: string - - jsonPath: .metadata.creationTimestamp - name: Age - type: date - name: v1beta2 - schema: - openAPIV3Schema: - description: BackingImageDataSource is where Longhorn stores backing image data source object. - properties: - apiVersion: - description: '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' - type: string - kind: - description: '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' - type: string - metadata: - type: object - spec: - description: BackingImageDataSourceSpec defines the desired state of the Longhorn backing image data source - properties: - checksum: - type: string - diskPath: - type: string - diskUUID: - type: string - fileTransferred: - type: boolean - nodeID: - type: string - parameters: - additionalProperties: - type: string - type: object - sourceType: - enum: - - download - - upload - - export-from-volume - type: string - uuid: - type: string - type: object - status: - description: BackingImageDataSourceStatus defines the observed state of the Longhorn backing image data source - properties: - checksum: - type: string - currentState: - type: string - ip: - type: string - message: - type: string - ownerID: - type: string - progress: - type: integer - runningParameters: - additionalProperties: - type: string - nullable: true - type: object - size: - format: int64 - type: integer - storageIP: - type: string - type: object - type: object - served: true - storage: true - subresources: - status: {} -status: - acceptedNames: - kind: "" - plural: "" - conditions: [] - storedVersions: [] ---- -# Source: longhorn/templates/crds.yaml -apiVersion: apiextensions.k8s.io/v1 -kind: CustomResourceDefinition -metadata: - annotations: - controller-gen.kubebuilder.io/version: v0.7.0 - creationTimestamp: null - labels: - app.kubernetes.io/name: longhorn - app.kubernetes.io/instance: longhorn - app.kubernetes.io/version: v1.4.0-dev - longhorn-manager: "" - name: backingimagemanagers.longhorn.io -spec: - group: longhorn.io - names: - kind: BackingImageManager - listKind: BackingImageManagerList - plural: backingimagemanagers - shortNames: - - lhbim - singular: backingimagemanager - scope: Namespaced - versions: - - additionalPrinterColumns: - - description: The current state of the manager - jsonPath: .status.currentState - name: State - type: string - - description: The image the manager pod will use - jsonPath: .spec.image - name: Image - type: string - - description: The node the manager is on - jsonPath: .spec.nodeID - name: Node - type: string - - description: The disk the manager is responsible for - jsonPath: .spec.diskUUID - name: DiskUUID - type: string - - description: The disk path the manager is using - jsonPath: .spec.diskPath - name: DiskPath - type: string - - jsonPath: .metadata.creationTimestamp - name: Age - type: date - name: v1beta1 - schema: - openAPIV3Schema: - description: BackingImageManager is where Longhorn stores backing image manager object. - properties: - apiVersion: - description: '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' - type: string - kind: - description: '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' - type: string - metadata: - type: object - spec: - x-kubernetes-preserve-unknown-fields: true - status: - x-kubernetes-preserve-unknown-fields: true - type: object - served: true - storage: false - subresources: - status: {} - - additionalPrinterColumns: - - description: The current state of the manager - jsonPath: .status.currentState - name: State - type: string - - description: The image the manager pod will use - jsonPath: .spec.image - name: Image - type: string - - description: The node the manager is on - jsonPath: .spec.nodeID - name: Node - type: string - - description: The disk the manager is responsible for - jsonPath: .spec.diskUUID - name: DiskUUID - type: string - - description: The disk path the manager is using - jsonPath: .spec.diskPath - name: DiskPath - type: string - - jsonPath: .metadata.creationTimestamp - name: Age - type: date - name: v1beta2 - schema: - openAPIV3Schema: - description: BackingImageManager is where Longhorn stores backing image manager object. - properties: - apiVersion: - description: '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' - type: string - kind: - description: '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' - type: string - metadata: - type: object - spec: - description: BackingImageManagerSpec defines the desired state of the Longhorn backing image manager - properties: - backingImages: - additionalProperties: - type: string - type: object - diskPath: - type: string - diskUUID: - type: string - image: - type: string - nodeID: - type: string - type: object - status: - description: BackingImageManagerStatus defines the observed state of the Longhorn backing image manager - properties: - apiMinVersion: - type: integer - apiVersion: - type: integer - backingImageFileMap: - additionalProperties: - properties: - currentChecksum: - type: string - message: - type: string - name: - type: string - progress: - type: integer - senderManagerAddress: - type: string - sendingReference: - type: integer - size: - format: int64 - type: integer - state: - type: string - uuid: - type: string - type: object - nullable: true - type: object - currentState: - type: string - ip: - type: string - ownerID: - type: string - storageIP: - type: string - type: object - type: object - served: true - storage: true - subresources: - status: {} -status: - acceptedNames: - kind: "" - plural: "" - conditions: [] - storedVersions: [] ---- -# Source: longhorn/templates/crds.yaml -apiVersion: apiextensions.k8s.io/v1 -kind: CustomResourceDefinition -metadata: - annotations: - controller-gen.kubebuilder.io/version: v0.7.0 - creationTimestamp: null - labels: - app.kubernetes.io/name: longhorn - app.kubernetes.io/instance: longhorn - app.kubernetes.io/version: v1.4.0-dev - longhorn-manager: "" - name: backingimages.longhorn.io -spec: - conversion: - strategy: Webhook - webhook: - clientConfig: - service: - name: longhorn-conversion-webhook - namespace: longhorn-system - path: /v1/webhook/conversion - port: 9501 - conversionReviewVersions: - - v1beta2 - - v1beta1 - group: longhorn.io - names: - kind: BackingImage - listKind: BackingImageList - plural: backingimages - shortNames: - - lhbi - singular: backingimage - scope: Namespaced - versions: - - additionalPrinterColumns: - - description: The backing image name - jsonPath: .spec.image - name: Image - type: string - - jsonPath: .metadata.creationTimestamp - name: Age - type: date - name: v1beta1 - schema: - openAPIV3Schema: - description: BackingImage is where Longhorn stores backing image object. - properties: - apiVersion: - description: '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' - type: string - kind: - description: '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' - type: string - metadata: - type: object - spec: - x-kubernetes-preserve-unknown-fields: true - status: - x-kubernetes-preserve-unknown-fields: true - type: object - served: true - storage: false - subresources: - status: {} - - additionalPrinterColumns: - - description: The system generated UUID - jsonPath: .status.uuid - name: UUID - type: string - - description: The source of the backing image file data - jsonPath: .spec.sourceType - name: SourceType - type: string - - description: The backing image file size in each disk - jsonPath: .status.size - name: Size - type: string - - jsonPath: .metadata.creationTimestamp - name: Age - type: date - name: v1beta2 - schema: - openAPIV3Schema: - description: BackingImage is where Longhorn stores backing image object. - properties: - apiVersion: - description: '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' - type: string - kind: - description: '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' - type: string - metadata: - type: object - spec: - description: BackingImageSpec defines the desired state of the Longhorn backing image - properties: - checksum: - type: string - disks: - additionalProperties: - type: string - type: object - sourceParameters: - additionalProperties: - type: string - type: object - sourceType: - enum: - - download - - upload - - export-from-volume - type: string - type: object - status: - description: BackingImageStatus defines the observed state of the Longhorn backing image status - properties: - checksum: - type: string - diskFileStatusMap: - additionalProperties: - properties: - lastStateTransitionTime: - type: string - message: - type: string - progress: - type: integer - state: - type: string - type: object - nullable: true - type: object - diskLastRefAtMap: - additionalProperties: - type: string - nullable: true - type: object - ownerID: - type: string - size: - format: int64 - type: integer - uuid: - type: string - type: object - type: object - served: true - storage: true - subresources: - status: {} -status: - acceptedNames: - kind: "" - plural: "" - conditions: [] - storedVersions: [] ---- -# Source: longhorn/templates/crds.yaml -apiVersion: apiextensions.k8s.io/v1 -kind: CustomResourceDefinition -metadata: - annotations: - controller-gen.kubebuilder.io/version: v0.7.0 - creationTimestamp: null - labels: - app.kubernetes.io/name: longhorn - app.kubernetes.io/instance: longhorn - app.kubernetes.io/version: v1.4.0-dev - longhorn-manager: "" - name: backups.longhorn.io -spec: - group: longhorn.io - names: - kind: Backup - listKind: BackupList - plural: backups - shortNames: - - lhb - singular: backup - scope: Namespaced - versions: - - additionalPrinterColumns: - - description: The snapshot name - jsonPath: .status.snapshotName - name: SnapshotName - type: string - - description: The snapshot size - jsonPath: .status.size - name: SnapshotSize - type: string - - description: The snapshot creation time - jsonPath: .status.snapshotCreatedAt - name: SnapshotCreatedAt - type: string - - description: The backup state - jsonPath: .status.state - name: State - type: string - - description: The backup last synced time - jsonPath: .status.lastSyncedAt - name: LastSyncedAt - type: string - name: v1beta1 - schema: - openAPIV3Schema: - description: Backup is where Longhorn stores backup object. - properties: - apiVersion: - description: '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' - type: string - kind: - description: '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' - type: string - metadata: - type: object - spec: - x-kubernetes-preserve-unknown-fields: true - status: - x-kubernetes-preserve-unknown-fields: true - type: object - served: true - storage: false - subresources: - status: {} - - additionalPrinterColumns: - - description: The snapshot name - jsonPath: .status.snapshotName - name: SnapshotName - type: string - - description: The snapshot size - jsonPath: .status.size - name: SnapshotSize - type: string - - description: The snapshot creation time - jsonPath: .status.snapshotCreatedAt - name: SnapshotCreatedAt - type: string - - description: The backup state - jsonPath: .status.state - name: State - type: string - - description: The backup last synced time - jsonPath: .status.lastSyncedAt - name: LastSyncedAt - type: string - name: v1beta2 - schema: - openAPIV3Schema: - description: Backup is where Longhorn stores backup object. - properties: - apiVersion: - description: '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' - type: string - kind: - description: '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' - type: string - metadata: - type: object - spec: - description: BackupSpec defines the desired state of the Longhorn backup - properties: - labels: - additionalProperties: - type: string - description: The labels of snapshot backup. - type: object - snapshotName: - description: The snapshot name. - type: string - syncRequestedAt: - description: The time to request run sync the remote backup. - format: date-time - nullable: true - type: string - type: object - status: - description: BackupStatus defines the observed state of the Longhorn backup - properties: - backupCreatedAt: - description: The snapshot backup upload finished time. - type: string - compressionMethod: - description: Compression method - type: string - error: - description: The error message when taking the snapshot backup. - type: string - labels: - additionalProperties: - type: string - description: The labels of snapshot backup. - nullable: true - type: object - lastSyncedAt: - description: The last time that the backup was synced with the remote backup target. - format: date-time - nullable: true - type: string - messages: - additionalProperties: - type: string - description: The error messages when calling longhorn engine on listing or inspecting backups. - nullable: true - type: object - ownerID: - description: The node ID on which the controller is responsible to reconcile this backup CR. - type: string - progress: - description: The snapshot backup progress. - type: integer - replicaAddress: - description: The address of the replica that runs snapshot backup. - type: string - size: - description: The snapshot size. - type: string - snapshotCreatedAt: - description: The snapshot creation time. - type: string - snapshotName: - description: The snapshot name. - type: string - state: - description: The backup creation state. Can be "", "InProgress", "Completed", "Error", "Unknown". - type: string - url: - description: The snapshot backup URL. - type: string - volumeBackingImageName: - description: The volume's backing image name. - type: string - volumeCreated: - description: The volume creation time. - type: string - volumeName: - description: The volume name. - type: string - volumeSize: - description: The volume size. - type: string - type: object - type: object - served: true - storage: true - subresources: - status: {} -status: - acceptedNames: - kind: "" - plural: "" - conditions: [] - storedVersions: [] ---- -# Source: longhorn/templates/crds.yaml -apiVersion: apiextensions.k8s.io/v1 -kind: CustomResourceDefinition -metadata: - annotations: - controller-gen.kubebuilder.io/version: v0.7.0 - creationTimestamp: null - labels: - app.kubernetes.io/name: longhorn - app.kubernetes.io/instance: longhorn - app.kubernetes.io/version: v1.4.0-dev - longhorn-manager: "" - name: backuptargets.longhorn.io -spec: - conversion: - strategy: Webhook - webhook: - clientConfig: - service: - name: longhorn-conversion-webhook - namespace: longhorn-system - path: /v1/webhook/conversion - port: 9501 - conversionReviewVersions: - - v1beta2 - - v1beta1 - group: longhorn.io - names: - kind: BackupTarget - listKind: BackupTargetList - plural: backuptargets - shortNames: - - lhbt - singular: backuptarget - scope: Namespaced - versions: - - additionalPrinterColumns: - - description: The backup target URL - jsonPath: .spec.backupTargetURL - name: URL - type: string - - description: The backup target credential secret - jsonPath: .spec.credentialSecret - name: Credential - type: string - - description: The backup target poll interval - jsonPath: .spec.pollInterval - name: LastBackupAt - type: string - - description: Indicate whether the backup target is available or not - jsonPath: .status.available - name: Available - type: boolean - - description: The backup target last synced time - jsonPath: .status.lastSyncedAt - name: LastSyncedAt - type: string - name: v1beta1 - schema: - openAPIV3Schema: - description: BackupTarget is where Longhorn stores backup target object. - properties: - apiVersion: - description: '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' - type: string - kind: - description: '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' - type: string - metadata: - type: object - spec: - x-kubernetes-preserve-unknown-fields: true - status: - x-kubernetes-preserve-unknown-fields: true - type: object - served: true - storage: false - subresources: - status: {} - - additionalPrinterColumns: - - description: The backup target URL - jsonPath: .spec.backupTargetURL - name: URL - type: string - - description: The backup target credential secret - jsonPath: .spec.credentialSecret - name: Credential - type: string - - description: The backup target poll interval - jsonPath: .spec.pollInterval - name: LastBackupAt - type: string - - description: Indicate whether the backup target is available or not - jsonPath: .status.available - name: Available - type: boolean - - description: The backup target last synced time - jsonPath: .status.lastSyncedAt - name: LastSyncedAt - type: string - name: v1beta2 - schema: - openAPIV3Schema: - description: BackupTarget is where Longhorn stores backup target object. - properties: - apiVersion: - description: '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' - type: string - kind: - description: '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' - type: string - metadata: - type: object - spec: - description: BackupTargetSpec defines the desired state of the Longhorn backup target - properties: - backupTargetURL: - description: The backup target URL. - type: string - credentialSecret: - description: The backup target credential secret. - type: string - pollInterval: - description: The interval that the cluster needs to run sync with the backup target. - type: string - syncRequestedAt: - description: The time to request run sync the remote backup target. - format: date-time - nullable: true - type: string - type: object - status: - description: BackupTargetStatus defines the observed state of the Longhorn backup target - properties: - available: - description: Available indicates if the remote backup target is available or not. - type: boolean - conditions: - description: Records the reason on why the backup target is unavailable. - items: - properties: - lastProbeTime: - description: Last time we probed the condition. - type: string - lastTransitionTime: - description: Last time the condition transitioned from one status to another. - type: string - message: - description: Human-readable message indicating details about last transition. - type: string - reason: - description: Unique, one-word, CamelCase reason for the condition's last transition. - type: string - status: - description: Status is the status of the condition. Can be True, False, Unknown. - type: string - type: - description: Type is the type of the condition. - type: string - type: object - nullable: true - type: array - lastSyncedAt: - description: The last time that the controller synced with the remote backup target. - format: date-time - nullable: true - type: string - ownerID: - description: The node ID on which the controller is responsible to reconcile this backup target CR. - type: string - type: object - type: object - served: true - storage: true - subresources: - status: {} -status: - acceptedNames: - kind: "" - plural: "" - conditions: [] - storedVersions: [] ---- -# Source: longhorn/templates/crds.yaml -apiVersion: apiextensions.k8s.io/v1 -kind: CustomResourceDefinition -metadata: - annotations: - controller-gen.kubebuilder.io/version: v0.7.0 - creationTimestamp: null - labels: - app.kubernetes.io/name: longhorn - app.kubernetes.io/instance: longhorn - app.kubernetes.io/version: v1.4.0-dev - longhorn-manager: "" - name: backupvolumes.longhorn.io -spec: - group: longhorn.io - names: - kind: BackupVolume - listKind: BackupVolumeList - plural: backupvolumes - shortNames: - - lhbv - singular: backupvolume - scope: Namespaced - versions: - - additionalPrinterColumns: - - description: The backup volume creation time - jsonPath: .status.createdAt - name: CreatedAt - type: string - - description: The backup volume last backup name - jsonPath: .status.lastBackupName - name: LastBackupName - type: string - - description: The backup volume last backup time - jsonPath: .status.lastBackupAt - name: LastBackupAt - type: string - - description: The backup volume last synced time - jsonPath: .status.lastSyncedAt - name: LastSyncedAt - type: string - name: v1beta1 - schema: - openAPIV3Schema: - description: BackupVolume is where Longhorn stores backup volume object. - properties: - apiVersion: - description: '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' - type: string - kind: - description: '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' - type: string - metadata: - type: object - spec: - x-kubernetes-preserve-unknown-fields: true - status: - x-kubernetes-preserve-unknown-fields: true - type: object - served: true - storage: false - subresources: - status: {} - - additionalPrinterColumns: - - description: The backup volume creation time - jsonPath: .status.createdAt - name: CreatedAt - type: string - - description: The backup volume last backup name - jsonPath: .status.lastBackupName - name: LastBackupName - type: string - - description: The backup volume last backup time - jsonPath: .status.lastBackupAt - name: LastBackupAt - type: string - - description: The backup volume last synced time - jsonPath: .status.lastSyncedAt - name: LastSyncedAt - type: string - name: v1beta2 - schema: - openAPIV3Schema: - description: BackupVolume is where Longhorn stores backup volume object. - properties: - apiVersion: - description: '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' - type: string - kind: - description: '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' - type: string - metadata: - type: object - spec: - description: BackupVolumeSpec defines the desired state of the Longhorn backup volume - properties: - syncRequestedAt: - description: The time to request run sync the remote backup volume. - format: date-time - nullable: true - type: string - type: object - status: - description: BackupVolumeStatus defines the observed state of the Longhorn backup volume - properties: - backingImageChecksum: - description: the backing image checksum. - type: string - backingImageName: - description: The backing image name. - type: string - createdAt: - description: The backup volume creation time. - type: string - dataStored: - description: The backup volume block count. - type: string - labels: - additionalProperties: - type: string - description: The backup volume labels. - nullable: true - type: object - lastBackupAt: - description: The latest volume backup time. - type: string - lastBackupName: - description: The latest volume backup name. - type: string - lastModificationTime: - description: The backup volume config last modification time. - format: date-time - nullable: true - type: string - lastSyncedAt: - description: The last time that the backup volume was synced into the cluster. - format: date-time - nullable: true - type: string - messages: - additionalProperties: - type: string - description: The error messages when call longhorn engine on list or inspect backup volumes. - nullable: true - type: object - ownerID: - description: The node ID on which the controller is responsible to reconcile this backup volume CR. - type: string - size: - description: The backup volume size. - type: string - storageClassName: - description: the storage class name of pv/pvc binding with the volume. - type: string - type: object - type: object - served: true - storage: true - subresources: - status: {} -status: - acceptedNames: - kind: "" - plural: "" - conditions: [] - storedVersions: [] ---- -# Source: longhorn/templates/crds.yaml -apiVersion: apiextensions.k8s.io/v1 -kind: CustomResourceDefinition -metadata: - annotations: - controller-gen.kubebuilder.io/version: v0.7.0 - creationTimestamp: null - labels: - app.kubernetes.io/name: longhorn - app.kubernetes.io/instance: longhorn - app.kubernetes.io/version: v1.4.0-dev - longhorn-manager: "" - name: engineimages.longhorn.io -spec: - preserveUnknownFields: false - conversion: - strategy: Webhook - webhook: - clientConfig: - service: - name: longhorn-conversion-webhook - namespace: longhorn-system - path: /v1/webhook/conversion - port: 9501 - conversionReviewVersions: - - v1beta2 - - v1beta1 - group: longhorn.io - names: - kind: EngineImage - listKind: EngineImageList - plural: engineimages - shortNames: - - lhei - singular: engineimage - scope: Namespaced - versions: - - additionalPrinterColumns: - - description: State of the engine image - jsonPath: .status.state - name: State - type: string - - description: The Longhorn engine image - jsonPath: .spec.image - name: Image - type: string - - description: Number of resources using the engine image - jsonPath: .status.refCount - name: RefCount - type: integer - - description: The build date of the engine image - jsonPath: .status.buildDate - name: BuildDate - type: date - - jsonPath: .metadata.creationTimestamp - name: Age - type: date - name: v1beta1 - schema: - openAPIV3Schema: - description: EngineImage is where Longhorn stores engine image object. - properties: - apiVersion: - description: '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' - type: string - kind: - description: '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' - type: string - metadata: - type: object - spec: - x-kubernetes-preserve-unknown-fields: true - status: - x-kubernetes-preserve-unknown-fields: true - type: object - served: true - storage: false - subresources: - status: {} - - additionalPrinterColumns: - - description: State of the engine image - jsonPath: .status.state - name: State - type: string - - description: The Longhorn engine image - jsonPath: .spec.image - name: Image - type: string - - description: Number of resources using the engine image - jsonPath: .status.refCount - name: RefCount - type: integer - - description: The build date of the engine image - jsonPath: .status.buildDate - name: BuildDate - type: date - - jsonPath: .metadata.creationTimestamp - name: Age - type: date - name: v1beta2 - schema: - openAPIV3Schema: - description: EngineImage is where Longhorn stores engine image object. - properties: - apiVersion: - description: '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' - type: string - kind: - description: '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' - type: string - metadata: - type: object - spec: - description: EngineImageSpec defines the desired state of the Longhorn engine image - properties: - image: - minLength: 1 - type: string - required: - - image - type: object - status: - description: EngineImageStatus defines the observed state of the Longhorn engine image - properties: - buildDate: - type: string - cliAPIMinVersion: - type: integer - cliAPIVersion: - type: integer - conditions: - items: - properties: - lastProbeTime: - description: Last time we probed the condition. - type: string - lastTransitionTime: - description: Last time the condition transitioned from one status to another. - type: string - message: - description: Human-readable message indicating details about last transition. - type: string - reason: - description: Unique, one-word, CamelCase reason for the condition's last transition. - type: string - status: - description: Status is the status of the condition. Can be True, False, Unknown. - type: string - type: - description: Type is the type of the condition. - type: string - type: object - nullable: true - type: array - controllerAPIMinVersion: - type: integer - controllerAPIVersion: - type: integer - dataFormatMinVersion: - type: integer - dataFormatVersion: - type: integer - gitCommit: - type: string - noRefSince: - type: string - nodeDeploymentMap: - additionalProperties: - type: boolean - nullable: true - type: object - ownerID: - type: string - refCount: - type: integer - state: - type: string - version: - type: string - type: object - type: object - served: true - storage: true - subresources: - status: {} -status: - acceptedNames: - kind: "" - plural: "" - conditions: [] - storedVersions: [] ---- -# Source: longhorn/templates/crds.yaml -apiVersion: apiextensions.k8s.io/v1 -kind: CustomResourceDefinition -metadata: - annotations: - controller-gen.kubebuilder.io/version: v0.7.0 - creationTimestamp: null - labels: - app.kubernetes.io/name: longhorn - app.kubernetes.io/instance: longhorn - app.kubernetes.io/version: v1.4.0-dev - longhorn-manager: "" - name: engines.longhorn.io -spec: - group: longhorn.io - names: - kind: Engine - listKind: EngineList - plural: engines - shortNames: - - lhe - singular: engine - scope: Namespaced - versions: - - additionalPrinterColumns: - - description: The current state of the engine - jsonPath: .status.currentState - name: State - type: string - - description: The node that the engine is on - jsonPath: .spec.nodeID - name: Node - type: string - - description: The instance manager of the engine - jsonPath: .status.instanceManagerName - name: InstanceManager - type: string - - description: The current image of the engine - jsonPath: .status.currentImage - name: Image - type: string - - jsonPath: .metadata.creationTimestamp - name: Age - type: date - name: v1beta1 - schema: - openAPIV3Schema: - description: Engine is where Longhorn stores engine object. - properties: - apiVersion: - description: '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' - type: string - kind: - description: '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' - type: string - metadata: - type: object - spec: - x-kubernetes-preserve-unknown-fields: true - status: - x-kubernetes-preserve-unknown-fields: true - type: object - served: true - storage: false - subresources: - status: {} - - additionalPrinterColumns: - - description: The current state of the engine - jsonPath: .status.currentState - name: State - type: string - - description: The node that the engine is on - jsonPath: .spec.nodeID - name: Node - type: string - - description: The instance manager of the engine - jsonPath: .status.instanceManagerName - name: InstanceManager - type: string - - description: The current image of the engine - jsonPath: .status.currentImage - name: Image - type: string - - jsonPath: .metadata.creationTimestamp - name: Age - type: date - name: v1beta2 - schema: - openAPIV3Schema: - description: Engine is where Longhorn stores engine object. - properties: - apiVersion: - description: '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' - type: string - kind: - description: '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' - type: string - metadata: - type: object - spec: - description: EngineSpec defines the desired state of the Longhorn engine - properties: - active: - type: boolean - backendStoreDriver: - enum: - - v1 - - v2 - type: string - backupVolume: - type: string - desireState: - type: string - disableFrontend: - type: boolean - engineImage: - type: string - frontend: - enum: - - blockdev - - iscsi - - nvmf - - "" - type: string - logRequested: - type: boolean - nodeID: - type: string - replicaAddressMap: - additionalProperties: - type: string - type: object - requestedBackupRestore: - type: string - requestedDataSource: - type: string - revisionCounterDisabled: - type: boolean - salvageRequested: - type: boolean - unmapMarkSnapChainRemovedEnabled: - type: boolean - upgradedReplicaAddressMap: - additionalProperties: - type: string - type: object - volumeName: - type: string - volumeSize: - format: int64 - type: string - type: object - status: - description: EngineStatus defines the observed state of the Longhorn engine - properties: - backupStatus: - additionalProperties: - properties: - backupURL: - type: string - error: - type: string - progress: - type: integer - replicaAddress: - type: string - snapshotName: - type: string - state: - type: string - type: object - nullable: true - type: object - cloneStatus: - additionalProperties: - properties: - error: - type: string - fromReplicaAddress: - type: string - isCloning: - type: boolean - progress: - type: integer - snapshotName: - type: string - state: - type: string - type: object - nullable: true - type: object - conditions: - items: - properties: - lastProbeTime: - description: Last time we probed the condition. - type: string - lastTransitionTime: - description: Last time the condition transitioned from one status to another. - type: string - message: - description: Human-readable message indicating details about last transition. - type: string - reason: - description: Unique, one-word, CamelCase reason for the condition's last transition. - type: string - status: - description: Status is the status of the condition. Can be True, False, Unknown. - type: string - type: - description: Type is the type of the condition. - type: string - type: object - nullable: true - type: array - currentImage: - type: string - currentReplicaAddressMap: - additionalProperties: - type: string - nullable: true - type: object - currentSize: - format: int64 - type: string - currentState: - type: string - endpoint: - type: string - instanceManagerName: - type: string - ip: - type: string - isExpanding: - type: boolean - lastExpansionError: - type: string - lastExpansionFailedAt: - type: string - lastRestoredBackup: - type: string - logFetched: - type: boolean - ownerID: - type: string - port: - type: integer - purgeStatus: - additionalProperties: - properties: - error: - type: string - isPurging: - type: boolean - progress: - type: integer - state: - type: string - type: object - nullable: true - type: object - rebuildStatus: - additionalProperties: - properties: - error: - type: string - fromReplicaAddress: - type: string - isRebuilding: - type: boolean - progress: - type: integer - state: - type: string - type: object - nullable: true - type: object - replicaModeMap: - additionalProperties: - type: string - nullable: true - type: object - restoreStatus: - additionalProperties: - properties: - backupURL: - type: string - currentRestoringBackup: - type: string - error: - type: string - filename: - type: string - isRestoring: - type: boolean - lastRestored: - type: string - progress: - type: integer - state: - type: string - type: object - nullable: true - type: object - salvageExecuted: - type: boolean - snapshots: - additionalProperties: - properties: - children: - additionalProperties: - type: boolean - nullable: true - type: object - created: - type: string - labels: - additionalProperties: - type: string - nullable: true - type: object - name: - type: string - parent: - type: string - removed: - type: boolean - size: - type: string - usercreated: - type: boolean - type: object - nullable: true - type: object - snapshotsError: - type: string - started: - type: boolean - storageIP: - type: string - unmapMarkSnapChainRemovedEnabled: - type: boolean - type: object - type: object - served: true - storage: true - subresources: - status: {} -status: - acceptedNames: - kind: "" - plural: "" - conditions: [] - storedVersions: [] ---- -# Source: longhorn/templates/crds.yaml -apiVersion: apiextensions.k8s.io/v1 -kind: CustomResourceDefinition -metadata: - annotations: - controller-gen.kubebuilder.io/version: v0.7.0 - creationTimestamp: null - labels: - app.kubernetes.io/name: longhorn - app.kubernetes.io/instance: longhorn - app.kubernetes.io/version: v1.4.0-dev - longhorn-manager: "" - name: instancemanagers.longhorn.io -spec: - group: longhorn.io - names: - kind: InstanceManager - listKind: InstanceManagerList - plural: instancemanagers - shortNames: - - lhim - singular: instancemanager - scope: Namespaced - versions: - - additionalPrinterColumns: - - description: The state of the instance manager - jsonPath: .status.currentState - name: State - type: string - - description: The type of the instance manager (engine or replica) - jsonPath: .spec.type - name: Type - type: string - - description: The node that the instance manager is running on - jsonPath: .spec.nodeID - name: Node - type: string - - jsonPath: .metadata.creationTimestamp - name: Age - type: date - name: v1beta1 - schema: - openAPIV3Schema: - description: InstanceManager is where Longhorn stores instance manager object. - properties: - apiVersion: - description: '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' - type: string - kind: - description: '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' - type: string - metadata: - type: object - spec: - x-kubernetes-preserve-unknown-fields: true - status: - x-kubernetes-preserve-unknown-fields: true - type: object - served: true - storage: false - subresources: - status: {} - - additionalPrinterColumns: - - description: The state of the instance manager - jsonPath: .status.currentState - name: State - type: string - - description: The type of the instance manager (engine or replica) - jsonPath: .spec.type - name: Type - type: string - - description: The node that the instance manager is running on - jsonPath: .spec.nodeID - name: Node - type: string - - jsonPath: .metadata.creationTimestamp - name: Age - type: date - name: v1beta2 - schema: - openAPIV3Schema: - description: InstanceManager is where Longhorn stores instance manager object. - properties: - apiVersion: - description: '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' - type: string - kind: - description: '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' - type: string - metadata: - type: object - spec: - description: InstanceManagerSpec defines the desired state of the Longhorn instancer manager - properties: - image: - type: string - nodeID: - type: string - type: - enum: - - aio - - engine - - replica - type: string - type: object - status: - description: InstanceManagerStatus defines the observed state of the Longhorn instance manager - properties: - apiMinVersion: - type: integer - apiVersion: - type: integer - proxyApiMinVersion: - type: integer - proxyApiVersion: - type: integer - currentState: - type: string - instanceEngines: - additionalProperties: - properties: - spec: - properties: - backendStoreDriver: - type: string - name: - type: string - type: object - status: - properties: - endpoint: - type: string - errorMsg: - type: string - listen: - type: string - portEnd: - format: int32 - type: integer - portStart: - format: int32 - type: integer - resourceVersion: - format: int64 - type: integer - state: - type: string - type: - type: string - type: object - type: object - nullable: true - type: object - instanceReplicas: - additionalProperties: - properties: - spec: - properties: - backendStoreDriver: - type: string - name: - type: string - type: object - status: - properties: - endpoint: - type: string - errorMsg: - type: string - listen: - type: string - portEnd: - format: int32 - type: integer - portStart: - format: int32 - type: integer - resourceVersion: - format: int64 - type: integer - state: - type: string - type: - type: string - type: object - type: object - nullable: true - type: object - instances: - additionalProperties: - properties: - spec: - properties: - backendStoreDriver: - type: string - name: - type: string - type: object - status: - properties: - endpoint: - type: string - errorMsg: - type: string - listen: - type: string - portEnd: - format: int32 - type: integer - portStart: - format: int32 - type: integer - resourceVersion: - format: int64 - type: integer - state: - type: string - type: - type: string - type: object - type: object - nullable: true - description: 'Deprecated: Replaced by InstanceEngines and InstanceReplicas' - type: object - ip: - type: string - ownerID: - type: string - type: object - type: object - served: true - storage: true - subresources: - status: {} -status: - acceptedNames: - kind: "" - plural: "" - conditions: [] - storedVersions: [] ---- -# Source: longhorn/templates/crds.yaml -apiVersion: apiextensions.k8s.io/v1 -kind: CustomResourceDefinition -metadata: - annotations: - controller-gen.kubebuilder.io/version: v0.7.0 - creationTimestamp: null - labels: - app.kubernetes.io/name: longhorn - app.kubernetes.io/instance: longhorn - app.kubernetes.io/version: v1.4.0-dev - longhorn-manager: "" - name: nodes.longhorn.io -spec: - preserveUnknownFields: false - conversion: - strategy: Webhook - webhook: - clientConfig: - service: - name: longhorn-conversion-webhook - namespace: longhorn-system - path: /v1/webhook/conversion - port: 9501 - conversionReviewVersions: - - v1beta2 - - v1beta1 - group: longhorn.io - names: - kind: Node - listKind: NodeList - plural: nodes - shortNames: - - lhn - singular: node - scope: Namespaced - versions: - - additionalPrinterColumns: - - description: Indicate whether the node is ready - jsonPath: .status.conditions['Ready']['status'] - name: Ready - type: string - - description: Indicate whether the user disabled/enabled replica scheduling for the node - jsonPath: .spec.allowScheduling - name: AllowScheduling - type: boolean - - description: Indicate whether Longhorn can schedule replicas on the node - jsonPath: .status.conditions['Schedulable']['status'] - name: Schedulable - type: string - - jsonPath: .metadata.creationTimestamp - name: Age - type: date - name: v1beta1 - schema: - openAPIV3Schema: - description: Node is where Longhorn stores Longhorn node object. - properties: - apiVersion: - description: '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' - type: string - kind: - description: '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' - type: string - metadata: - type: object - spec: - x-kubernetes-preserve-unknown-fields: true - status: - x-kubernetes-preserve-unknown-fields: true - type: object - served: true - storage: false - subresources: - status: {} - - additionalPrinterColumns: - - description: Indicate whether the node is ready - jsonPath: .status.conditions[?(@.type=='Ready')].status - name: Ready - type: string - - description: Indicate whether the user disabled/enabled replica scheduling for the node - jsonPath: .spec.allowScheduling - name: AllowScheduling - type: boolean - - description: Indicate whether Longhorn can schedule replicas on the node - jsonPath: .status.conditions[?(@.type=='Schedulable')].status - name: Schedulable - type: string - - jsonPath: .metadata.creationTimestamp - name: Age - type: date - name: v1beta2 - schema: - openAPIV3Schema: - description: Node is where Longhorn stores Longhorn node object. - properties: - apiVersion: - description: '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' - type: string - kind: - description: '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' - type: string - metadata: - type: object - spec: - description: NodeSpec defines the desired state of the Longhorn node - properties: - allowScheduling: - type: boolean - disks: - additionalProperties: - properties: - allowScheduling: - type: boolean - evictionRequested: - type: boolean - path: - type: string - storageReserved: - format: int64 - type: integer - tags: - items: - type: string - type: array - diskType: - enum: - - filesystem - - block - type: string - type: object - type: object - evictionRequested: - type: boolean - instanceManagerCPURequest: - type: integer - name: - type: string - tags: - items: - type: string - type: array - type: object - status: - description: NodeStatus defines the observed state of the Longhorn node - properties: - conditions: - items: - properties: - lastProbeTime: - description: Last time we probed the condition. - type: string - lastTransitionTime: - description: Last time the condition transitioned from one status to another. - type: string - message: - description: Human-readable message indicating details about last transition. - type: string - reason: - description: Unique, one-word, CamelCase reason for the condition's last transition. - type: string - status: - description: Status is the status of the condition. Can be True, False, Unknown. - type: string - type: - description: Type is the type of the condition. - type: string - type: object - nullable: true - type: array - diskStatus: - additionalProperties: - properties: - conditions: - items: - properties: - lastProbeTime: - description: Last time we probed the condition. - type: string - lastTransitionTime: - description: Last time the condition transitioned from one status to another. - type: string - message: - description: Human-readable message indicating details about last transition. - type: string - reason: - description: Unique, one-word, CamelCase reason for the condition's last transition. - type: string - status: - description: Status is the status of the condition. Can be True, False, Unknown. - type: string - type: - description: Type is the type of the condition. - type: string - type: object - nullable: true - type: array - diskType: - type: string - diskUUID: - type: string - scheduledReplica: - additionalProperties: - format: int64 - type: integer - nullable: true - type: object - storageAvailable: - format: int64 - type: integer - storageMaximum: - format: int64 - type: integer - storageScheduled: - format: int64 - type: integer - type: object - nullable: true - type: object - region: - type: string - snapshotCheckStatus: - properties: - lastPeriodicCheckedAt: - format: date-time - type: string - snapshotCheckState: - type: string - type: object - zone: - type: string - type: object - type: object - served: true - storage: true - subresources: - status: {} -status: - acceptedNames: - kind: "" - plural: "" - conditions: [] - storedVersions: [] ---- -# Source: longhorn/templates/crds.yaml -apiVersion: apiextensions.k8s.io/v1 -kind: CustomResourceDefinition -metadata: - annotations: - controller-gen.kubebuilder.io/version: v0.7.0 - creationTimestamp: null - labels: - app.kubernetes.io/name: longhorn - app.kubernetes.io/instance: longhorn - app.kubernetes.io/version: v1.4.0-dev - longhorn-manager: "" - name: orphans.longhorn.io -spec: - group: longhorn.io - names: - kind: Orphan - listKind: OrphanList - plural: orphans - shortNames: - - lho - singular: orphan - scope: Namespaced - versions: - - additionalPrinterColumns: - - description: The type of the orphan - jsonPath: .spec.orphanType - name: Type - type: string - - description: The node that the orphan is on - jsonPath: .spec.nodeID - name: Node - type: string - name: v1beta2 - schema: - openAPIV3Schema: - description: Orphan is where Longhorn stores orphan object. - properties: - apiVersion: - description: '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' - type: string - kind: - description: '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' - type: string - metadata: - type: object - spec: - description: OrphanSpec defines the desired state of the Longhorn orphaned data - properties: - nodeID: - description: The node ID on which the controller is responsible to reconcile this orphan CR. - type: string - orphanType: - description: The type of the orphaned data. Can be "replica". - type: string - parameters: - additionalProperties: - type: string - description: The parameters of the orphaned data - type: object - type: object - status: - description: OrphanStatus defines the observed state of the Longhorn orphaned data - properties: - conditions: - items: - properties: - lastProbeTime: - description: Last time we probed the condition. - type: string - lastTransitionTime: - description: Last time the condition transitioned from one status to another. - type: string - message: - description: Human-readable message indicating details about last transition. - type: string - reason: - description: Unique, one-word, CamelCase reason for the condition's last transition. - type: string - status: - description: Status is the status of the condition. Can be True, False, Unknown. - type: string - type: - description: Type is the type of the condition. - type: string - type: object - nullable: true - type: array - ownerID: - type: string - type: object - type: object - served: true - storage: true - subresources: - status: {} -status: - acceptedNames: - kind: "" - plural: "" - conditions: [] - storedVersions: [] ---- -# Source: longhorn/templates/crds.yaml -apiVersion: apiextensions.k8s.io/v1 -kind: CustomResourceDefinition -metadata: - annotations: - controller-gen.kubebuilder.io/version: v0.7.0 - creationTimestamp: null - labels: - longhorn-manager: "" - name: recurringjobs.longhorn.io -spec: - group: longhorn.io - names: - kind: RecurringJob - listKind: RecurringJobList - plural: recurringjobs - shortNames: - - lhrj - singular: recurringjob - scope: Namespaced - versions: - - additionalPrinterColumns: - - description: Sets groupings to the jobs. When set to "default" group will be added to the volume label when no other job label exist in volume - jsonPath: .spec.groups - name: Groups - type: string - - description: Should be one of "backup" or "snapshot" - jsonPath: .spec.task - name: Task - type: string - - description: The cron expression represents recurring job scheduling - jsonPath: .spec.cron - name: Cron - type: string - - description: The number of snapshots/backups to keep for the volume - jsonPath: .spec.retain - name: Retain - type: integer - - description: The concurrent job to run by each cron job - jsonPath: .spec.concurrency - name: Concurrency - type: integer - - jsonPath: .metadata.creationTimestamp - name: Age - type: date - - description: Specify the labels - jsonPath: .spec.labels - name: Labels - type: string - name: v1beta1 - schema: - openAPIV3Schema: - description: RecurringJob is where Longhorn stores recurring job object. - properties: - apiVersion: - description: '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' - type: string - kind: - description: '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' - type: string - metadata: - type: object - spec: - x-kubernetes-preserve-unknown-fields: true - status: - x-kubernetes-preserve-unknown-fields: true - type: object - served: true - storage: false - subresources: - status: {} - - additionalPrinterColumns: - - description: Sets groupings to the jobs. When set to "default" group will be added to the volume label when no other job label exist in volume - jsonPath: .spec.groups - name: Groups - type: string - - description: Should be one of "snapshot", "snapshot-force-create", "snapshot-cleanup", "snapshot-delete", "backup", "backup-force-create" or "filesystem-trim" - jsonPath: .spec.task - name: Task - type: string - - description: The cron expression represents recurring job scheduling - jsonPath: .spec.cron - name: Cron - type: string - - description: The number of snapshots/backups to keep for the volume - jsonPath: .spec.retain - name: Retain - type: integer - - description: The concurrent job to run by each cron job - jsonPath: .spec.concurrency - name: Concurrency - type: integer - - jsonPath: .metadata.creationTimestamp - name: Age - type: date - - description: Specify the labels - jsonPath: .spec.labels - name: Labels - type: string - name: v1beta2 - schema: - openAPIV3Schema: - description: RecurringJob is where Longhorn stores recurring job object. - properties: - apiVersion: - description: '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' - type: string - kind: - description: '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' - type: string - metadata: - type: object - spec: - description: RecurringJobSpec defines the desired state of the Longhorn recurring job - properties: - concurrency: - description: The concurrency of taking the snapshot/backup. - type: integer - cron: - description: The cron setting. - type: string - groups: - description: The recurring job group. - items: - type: string - type: array - labels: - additionalProperties: - type: string - description: The label of the snapshot/backup. - type: object - name: - description: The recurring job name. - type: string - retain: - description: The retain count of the snapshot/backup. - type: integer - task: - description: The recurring job task. Can be "snapshot", "snapshot-force-create", "snapshot-cleanup", "snapshot-delete", "backup", "backup-force-create" or "filesystem-trim" - enum: - - snapshot - - snapshot-force-create - - snapshot-cleanup - - snapshot-delete - - backup - - backup-force-create - - filesystem-trim - type: string - type: object - status: - description: RecurringJobStatus defines the observed state of the Longhorn recurring job - properties: - ownerID: - description: The owner ID which is responsible to reconcile this recurring job CR. - type: string - type: object - type: object - served: true - storage: true - subresources: - status: {} -status: - acceptedNames: - kind: "" - plural: "" - conditions: [] - storedVersions: [] ---- -# Source: longhorn/templates/crds.yaml -apiVersion: apiextensions.k8s.io/v1 -kind: CustomResourceDefinition -metadata: - annotations: - controller-gen.kubebuilder.io/version: v0.7.0 - creationTimestamp: null - labels: - app.kubernetes.io/name: longhorn - app.kubernetes.io/instance: longhorn - app.kubernetes.io/version: v1.4.0-dev - longhorn-manager: "" - name: replicas.longhorn.io -spec: - group: longhorn.io - names: - kind: Replica - listKind: ReplicaList - plural: replicas - shortNames: - - lhr - singular: replica - scope: Namespaced - versions: - - additionalPrinterColumns: - - description: The current state of the replica - jsonPath: .status.currentState - name: State - type: string - - description: The node that the replica is on - jsonPath: .spec.nodeID - name: Node - type: string - - description: The disk that the replica is on - jsonPath: .spec.diskID - name: Disk - type: string - - description: The instance manager of the replica - jsonPath: .status.instanceManagerName - name: InstanceManager - type: string - - description: The current image of the replica - jsonPath: .status.currentImage - name: Image - type: string - - jsonPath: .metadata.creationTimestamp - name: Age - type: date - name: v1beta1 - schema: - openAPIV3Schema: - description: Replica is where Longhorn stores replica object. - properties: - apiVersion: - description: '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' - type: string - kind: - description: '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' - type: string - metadata: - type: object - spec: - x-kubernetes-preserve-unknown-fields: true - status: - x-kubernetes-preserve-unknown-fields: true - type: object - served: true - storage: false - subresources: - status: {} - - additionalPrinterColumns: - - description: The current state of the replica - jsonPath: .status.currentState - name: State - type: string - - description: The node that the replica is on - jsonPath: .spec.nodeID - name: Node - type: string - - description: The disk that the replica is on - jsonPath: .spec.diskID - name: Disk - type: string - - description: The instance manager of the replica - jsonPath: .status.instanceManagerName - name: InstanceManager - type: string - - description: The current image of the replica - jsonPath: .status.currentImage - name: Image - type: string - - jsonPath: .metadata.creationTimestamp - name: Age - type: date - name: v1beta2 - schema: - openAPIV3Schema: - description: Replica is where Longhorn stores replica object. - properties: - apiVersion: - description: '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' - type: string - kind: - description: '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' - type: string - metadata: - type: object - spec: - description: ReplicaSpec defines the desired state of the Longhorn replica - properties: - active: - type: boolean - backendStoreDriver: - enum: - - v1 - - v2 - type: string - backingImage: - type: string - dataDirectoryName: - type: string - desireState: - type: string - diskID: - type: string - diskPath: - type: string - engineImage: - type: string - engineName: - type: string - failedAt: - type: string - hardNodeAffinity: - type: string - healthyAt: - type: string - logRequested: - type: boolean - nodeID: - type: string - rebuildRetryCount: - type: integer - revisionCounterDisabled: - type: boolean - salvageRequested: - type: boolean - unmapMarkDiskChainRemovedEnabled: - type: boolean - volumeName: - type: string - volumeSize: - format: int64 - type: string - type: object - status: - description: ReplicaStatus defines the observed state of the Longhorn replica - properties: - conditions: - items: - properties: - lastProbeTime: - description: Last time we probed the condition. - type: string - lastTransitionTime: - description: Last time the condition transitioned from one status to another. - type: string - message: - description: Human-readable message indicating details about last transition. - type: string - reason: - description: Unique, one-word, CamelCase reason for the condition's last transition. - type: string - status: - description: Status is the status of the condition. Can be True, False, Unknown. - type: string - type: - description: Type is the type of the condition. - type: string - type: object - nullable: true - type: array - currentImage: - type: string - currentState: - type: string - evictionRequested: - type: boolean - instanceManagerName: - type: string - ip: - type: string - logFetched: - type: boolean - ownerID: - type: string - port: - type: integer - salvageExecuted: - type: boolean - started: - type: boolean - storageIP: - type: string - type: object - type: object - served: true - storage: true - subresources: - status: {} -status: - acceptedNames: - kind: "" - plural: "" - conditions: [] - storedVersions: [] ---- -# Source: longhorn/templates/crds.yaml -apiVersion: apiextensions.k8s.io/v1 -kind: CustomResourceDefinition -metadata: - annotations: - controller-gen.kubebuilder.io/version: v0.7.0 - creationTimestamp: null - labels: - app.kubernetes.io/name: longhorn - app.kubernetes.io/instance: longhorn - app.kubernetes.io/version: v1.4.0-dev - longhorn-manager: "" - name: settings.longhorn.io -spec: - group: longhorn.io - names: - kind: Setting - listKind: SettingList - plural: settings - shortNames: - - lhs - singular: setting - scope: Namespaced - versions: - - additionalPrinterColumns: - - description: The value of the setting - jsonPath: .value - name: Value - type: string - - jsonPath: .metadata.creationTimestamp - name: Age - type: date - name: v1beta1 - schema: - openAPIV3Schema: - description: Setting is where Longhorn stores setting object. - properties: - apiVersion: - description: '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' - type: string - kind: - description: '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' - type: string - metadata: - type: object - value: - type: string - required: - - value - type: object - served: true - storage: false - subresources: - status: {} - - additionalPrinterColumns: - - description: The value of the setting - jsonPath: .value - name: Value - type: string - - jsonPath: .metadata.creationTimestamp - name: Age - type: date - name: v1beta2 - schema: - openAPIV3Schema: - description: Setting is where Longhorn stores setting object. - properties: - apiVersion: - description: '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' - type: string - kind: - description: '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' - type: string - metadata: - type: object - value: - type: string - required: - - value - type: object - served: true - storage: true - subresources: - status: {} -status: - acceptedNames: - kind: "" - plural: "" - conditions: [] - storedVersions: [] ---- -# Source: longhorn/templates/crds.yaml -apiVersion: apiextensions.k8s.io/v1 -kind: CustomResourceDefinition -metadata: - annotations: - controller-gen.kubebuilder.io/version: v0.7.0 - creationTimestamp: null - labels: - app.kubernetes.io/name: longhorn - app.kubernetes.io/instance: longhorn - app.kubernetes.io/version: v1.4.0-dev - longhorn-manager: "" - name: sharemanagers.longhorn.io -spec: - group: longhorn.io - names: - kind: ShareManager - listKind: ShareManagerList - plural: sharemanagers - shortNames: - - lhsm - singular: sharemanager - scope: Namespaced - versions: - - additionalPrinterColumns: - - description: The state of the share manager - jsonPath: .status.state - name: State - type: string - - description: The node that the share manager is owned by - jsonPath: .status.ownerID - name: Node - type: string - - jsonPath: .metadata.creationTimestamp - name: Age - type: date - name: v1beta1 - schema: - openAPIV3Schema: - description: ShareManager is where Longhorn stores share manager object. - properties: - apiVersion: - description: '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' - type: string - kind: - description: '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' - type: string - metadata: - type: object - spec: - x-kubernetes-preserve-unknown-fields: true - status: - x-kubernetes-preserve-unknown-fields: true - type: object - served: true - storage: false - subresources: - status: {} - - additionalPrinterColumns: - - description: The state of the share manager - jsonPath: .status.state - name: State - type: string - - description: The node that the share manager is owned by - jsonPath: .status.ownerID - name: Node - type: string - - jsonPath: .metadata.creationTimestamp - name: Age - type: date - name: v1beta2 - schema: - openAPIV3Schema: - description: ShareManager is where Longhorn stores share manager object. - properties: - apiVersion: - description: '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' - type: string - kind: - description: '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' - type: string - metadata: - type: object - spec: - description: ShareManagerSpec defines the desired state of the Longhorn share manager - properties: - image: - description: Share manager image used for creating a share manager pod - type: string - type: object - status: - description: ShareManagerStatus defines the observed state of the Longhorn share manager - properties: - endpoint: - description: NFS endpoint that can access the mounted filesystem of the volume - type: string - ownerID: - description: The node ID on which the controller is responsible to reconcile this share manager resource - type: string - state: - description: The state of the share manager resource - type: string - type: object - type: object - served: true - storage: true - subresources: - status: {} -status: - acceptedNames: - kind: "" - plural: "" - conditions: [] - storedVersions: [] ---- -# Source: longhorn/templates/crds.yaml -apiVersion: apiextensions.k8s.io/v1 -kind: CustomResourceDefinition -metadata: - annotations: - controller-gen.kubebuilder.io/version: v0.7.0 - creationTimestamp: null - labels: - app.kubernetes.io/name: longhorn - app.kubernetes.io/instance: longhorn - app.kubernetes.io/version: v1.4.0-dev - longhorn-manager: "" - name: snapshots.longhorn.io -spec: - group: longhorn.io - names: - kind: Snapshot - listKind: SnapshotList - plural: snapshots - shortNames: - - lhsnap - singular: snapshot - scope: Namespaced - versions: - - additionalPrinterColumns: - - description: The volume that this snapshot belongs to - jsonPath: .spec.volume - name: Volume - type: string - - description: Timestamp when the point-in-time snapshot was taken - jsonPath: .status.creationTime - name: CreationTime - type: string - - description: Indicates if the snapshot is ready to be used to restore/backup a volume - jsonPath: .status.readyToUse - name: ReadyToUse - type: boolean - - description: Represents the minimum size of volume required to rehydrate from this snapshot - jsonPath: .status.restoreSize - name: RestoreSize - type: string - - description: The actual size of the snapshot - jsonPath: .status.size - name: Size - type: string - - jsonPath: .metadata.creationTimestamp - name: Age - type: date - name: v1beta2 - schema: - openAPIV3Schema: - description: Snapshot is the Schema for the snapshots API - properties: - apiVersion: - description: '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' - type: string - kind: - description: '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' - type: string - metadata: - type: object - spec: - description: SnapshotSpec defines the desired state of Longhorn Snapshot - properties: - createSnapshot: - description: require creating a new snapshot - type: boolean - labels: - additionalProperties: - type: string - description: The labels of snapshot - nullable: true - type: object - volume: - description: the volume that this snapshot belongs to. This field is immutable after creation. Required - type: string - required: - - volume - type: object - status: - description: SnapshotStatus defines the observed state of Longhorn Snapshot - properties: - checksum: - type: string - children: - additionalProperties: - type: boolean - nullable: true - type: object - creationTime: - type: string - error: - type: string - labels: - additionalProperties: - type: string - nullable: true - type: object - markRemoved: - type: boolean - ownerID: - type: string - parent: - type: string - readyToUse: - type: boolean - restoreSize: - format: int64 - type: integer - size: - format: int64 - type: integer - userCreated: - type: boolean - type: object - type: object - served: true - storage: true - subresources: - status: {} -status: - acceptedNames: - kind: "" - plural: "" - conditions: [] - storedVersions: [] ---- -# Source: longhorn/templates/crds.yaml -apiVersion: apiextensions.k8s.io/v1 -kind: CustomResourceDefinition -metadata: - annotations: - controller-gen.kubebuilder.io/version: v0.7.0 - creationTimestamp: null - labels: - app.kubernetes.io/name: longhorn - app.kubernetes.io/instance: longhorn - app.kubernetes.io/version: v1.4.0-dev - longhorn-manager: "" - name: supportbundles.longhorn.io -spec: - group: longhorn.io - names: - kind: SupportBundle - listKind: SupportBundleList - plural: supportbundles - shortNames: - - lhbundle - singular: supportbundle - scope: Namespaced - versions: - - additionalPrinterColumns: - - description: The state of the support bundle - jsonPath: .status.state - name: State - type: string - - description: The issue URL - jsonPath: .spec.issueURL - name: Issue - type: string - - description: A brief description of the issue - jsonPath: .spec.description - name: Description - type: string - - jsonPath: .metadata.creationTimestamp - name: Age - type: date - name: v1beta2 - schema: - openAPIV3Schema: - description: SupportBundle is where Longhorn stores support bundle object - properties: - apiVersion: - description: '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' - type: string - kind: - description: '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' - type: string - metadata: - type: object - spec: - description: SupportBundleSpec defines the desired state of the Longhorn SupportBundle - properties: - description: - description: A brief description of the issue - type: string - issueURL: - description: The issue URL - nullable: true - type: string - nodeID: - description: The preferred responsible controller node ID. - type: string - required: - - description - type: object - status: - description: SupportBundleStatus defines the observed state of the Longhorn SupportBundle - properties: - conditions: - items: - properties: - lastProbeTime: - description: Last time we probed the condition. - type: string - lastTransitionTime: - description: Last time the condition transitioned from one status to another. - type: string - message: - description: Human-readable message indicating details about last transition. - type: string - reason: - description: Unique, one-word, CamelCase reason for the condition's last transition. - type: string - status: - description: Status is the status of the condition. Can be True, False, Unknown. - type: string - type: - description: Type is the type of the condition. - type: string - type: object - type: array - filename: - type: string - filesize: - format: int64 - type: integer - image: - description: The support bundle manager image - type: string - managerIP: - description: The support bundle manager IP - type: string - ownerID: - description: The current responsible controller node ID - type: string - progress: - type: integer - state: - type: string - type: object - type: object - served: true - storage: true - subresources: - status: {} -status: - acceptedNames: - kind: "" - plural: "" - conditions: [] - storedVersions: [] ---- -# Source: longhorn/templates/crds.yaml -apiVersion: apiextensions.k8s.io/v1 -kind: CustomResourceDefinition -metadata: - annotations: - controller-gen.kubebuilder.io/version: v0.7.0 - creationTimestamp: null - labels: - app.kubernetes.io/name: longhorn - app.kubernetes.io/instance: longhorn - app.kubernetes.io/version: v1.4.0-dev - longhorn-manager: "" - name: systembackups.longhorn.io -spec: - group: longhorn.io - names: - kind: SystemBackup - listKind: SystemBackupList - plural: systembackups - shortNames: - - lhsb - singular: systembackup - scope: Namespaced - versions: - - additionalPrinterColumns: - - description: The system backup Longhorn version - jsonPath: .status.version - name: Version - type: string - - description: The system backup state - jsonPath: .status.state - name: State - type: string - - description: The system backup creation time - jsonPath: .status.createdAt - name: Created - type: string - - description: The last time that the system backup was synced into the cluster - jsonPath: .status.lastSyncedAt - name: LastSyncedAt - type: string - name: v1beta2 - schema: - openAPIV3Schema: - description: SystemBackup is where Longhorn stores system backup object - properties: - apiVersion: - description: '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' - type: string - kind: - description: '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' - type: string - metadata: - type: object - spec: - description: SystemBackupSpec defines the desired state of the Longhorn SystemBackup - properties: - volumeBackupPolicy: - description: The create volume backup policy Can be "if-not-present", "always" or "disabled" - nullable: true - type: string - type: object - status: - description: SystemBackupStatus defines the observed state of the Longhorn SystemBackup - properties: - conditions: - items: - properties: - lastProbeTime: - description: Last time we probed the condition. - type: string - lastTransitionTime: - description: Last time the condition transitioned from one status to another. - type: string - message: - description: Human-readable message indicating details about last transition. - type: string - reason: - description: Unique, one-word, CamelCase reason for the condition's last transition. - type: string - status: - description: Status is the status of the condition. Can be True, False, Unknown. - type: string - type: - description: Type is the type of the condition. - type: string - type: object - nullable: true - type: array - createdAt: - description: The system backup creation time. - format: date-time - type: string - gitCommit: - description: The saved Longhorn manager git commit. - nullable: true - type: string - lastSyncedAt: - description: The last time that the system backup was synced into the cluster. - format: date-time - nullable: true - type: string - managerImage: - description: The saved manager image. - type: string - ownerID: - description: The node ID of the responsible controller to reconcile this SystemBackup. - type: string - state: - description: The system backup state. - type: string - version: - description: The saved Longhorn version. - nullable: true - type: string - type: object - type: object - served: true - storage: true - subresources: - status: {} -status: - acceptedNames: - kind: "" - plural: "" - conditions: [] - storedVersions: [] ---- -# Source: longhorn/templates/crds.yaml -apiVersion: apiextensions.k8s.io/v1 -kind: CustomResourceDefinition -metadata: - annotations: - controller-gen.kubebuilder.io/version: v0.7.0 - creationTimestamp: null - labels: - app.kubernetes.io/name: longhorn - app.kubernetes.io/instance: longhorn - app.kubernetes.io/version: v1.4.0-dev - longhorn-manager: "" - name: systemrestores.longhorn.io -spec: - group: longhorn.io - names: - kind: SystemRestore - listKind: SystemRestoreList - plural: systemrestores - shortNames: - - lhsr - singular: systemrestore - scope: Namespaced - versions: - - additionalPrinterColumns: - - description: The system restore state - jsonPath: .status.state - name: State - type: string - - jsonPath: .metadata.creationTimestamp - name: Age - type: date - name: v1beta2 - schema: - openAPIV3Schema: - description: SystemRestore is where Longhorn stores system restore object - properties: - apiVersion: - description: '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' - type: string - kind: - description: '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' - type: string - metadata: - type: object - spec: - description: SystemRestoreSpec defines the desired state of the Longhorn SystemRestore - properties: - systemBackup: - description: The system backup name in the object store. - type: string - required: - - systemBackup - type: object - status: - description: SystemRestoreStatus defines the observed state of the Longhorn SystemRestore - properties: - conditions: - items: - properties: - lastProbeTime: - description: Last time we probed the condition. - type: string - lastTransitionTime: - description: Last time the condition transitioned from one status to another. - type: string - message: - description: Human-readable message indicating details about last transition. - type: string - reason: - description: Unique, one-word, CamelCase reason for the condition's last transition. - type: string - status: - description: Status is the status of the condition. Can be True, False, Unknown. - type: string - type: - description: Type is the type of the condition. - type: string - type: object - nullable: true - type: array - ownerID: - description: The node ID of the responsible controller to reconcile this SystemRestore. - type: string - sourceURL: - description: The source system backup URL. - type: string - state: - description: The system restore state. - type: string - type: object - type: object - served: true - storage: true - subresources: - status: {} -status: - acceptedNames: - kind: "" - plural: "" - conditions: [] - storedVersions: [] ---- -# Source: longhorn/templates/crds.yaml -apiVersion: apiextensions.k8s.io/v1 -kind: CustomResourceDefinition -metadata: - annotations: - controller-gen.kubebuilder.io/version: v0.7.0 - labels: - app.kubernetes.io/name: longhorn - app.kubernetes.io/instance: longhorn - app.kubernetes.io/version: v1.4.0-dev - longhorn-manager: "" - name: volumes.longhorn.io -spec: - preserveUnknownFields: false - conversion: - strategy: Webhook - webhook: - clientConfig: - service: - name: longhorn-conversion-webhook - namespace: longhorn-system - path: /v1/webhook/conversion - port: 9501 - conversionReviewVersions: - - v1beta2 - - v1beta1 - group: longhorn.io - names: - kind: Volume - listKind: VolumeList - plural: volumes - shortNames: - - lhv - singular: volume - scope: Namespaced - versions: - - additionalPrinterColumns: - - description: The state of the volume - jsonPath: .status.state - name: State - type: string - - description: The robustness of the volume - jsonPath: .status.robustness - name: Robustness - type: string - - description: The scheduled condition of the volume - jsonPath: .status.conditions['scheduled']['status'] - name: Scheduled - type: string - - description: The size of the volume - jsonPath: .spec.size - name: Size - type: string - - description: The node that the volume is currently attaching to - jsonPath: .status.currentNodeID - name: Node - type: string - - jsonPath: .metadata.creationTimestamp - name: Age - type: date - name: v1beta1 - schema: - openAPIV3Schema: - description: Volume is where Longhorn stores volume object. - properties: - apiVersion: - description: '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' - type: string - kind: - description: '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' - type: string - metadata: - type: object - spec: - x-kubernetes-preserve-unknown-fields: true - status: - x-kubernetes-preserve-unknown-fields: true - type: object - served: true - storage: false - subresources: - status: {} - - additionalPrinterColumns: - - description: The state of the volume - jsonPath: .status.state - name: State - type: string - - description: The robustness of the volume - jsonPath: .status.robustness - name: Robustness - type: string - - description: The scheduled condition of the volume - jsonPath: .status.conditions[?(@.type=='Schedulable')].status - name: Scheduled - type: string - - description: The size of the volume - jsonPath: .spec.size - name: Size - type: string - - description: The node that the volume is currently attaching to - jsonPath: .status.currentNodeID - name: Node - type: string - - jsonPath: .metadata.creationTimestamp - name: Age - type: date - name: v1beta2 - schema: - openAPIV3Schema: - description: Volume is where Longhorn stores volume object. - properties: - apiVersion: - description: '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' - type: string - kind: - description: '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' - type: string - metadata: - type: object - spec: - description: VolumeSpec defines the desired state of the Longhorn volume - properties: - Standby: - type: boolean - accessMode: - enum: - - rwo - - rwx - type: string - backendStoreDriver: - enum: - - v1 - - v2 - type: string - backingImage: - type: string - backupCompressionMethod: - enum: - - none - - lz4 - - gzip - type: string - dataLocality: - enum: - - disabled - - best-effort - - strict-local - type: string - dataSource: - type: string - disableFrontend: - type: boolean - diskSelector: - items: - type: string - type: array - encrypted: - type: boolean - engineImage: - type: string - fromBackup: - type: string - frontend: - enum: - - blockdev - - iscsi - - nvmf - - "" - type: string - lastAttachedBy: - type: string - migratable: - type: boolean - migrationNodeID: - type: string - nodeID: - type: string - nodeSelector: - items: - type: string - type: array - numberOfReplicas: - type: integer - offlineReplicaRebuilding: - description: OfflineReplicaRebuilding is used to determine if the offline replica rebuilding feature is enabled or not - enum: - - ignored - - disabled - - enabled - type: string - replicaAutoBalance: - enum: - - ignored - - disabled - - least-effort - - best-effort - type: string - replicaSoftAntiAffinity: - description: Replica soft anti affinity of the volume. Set enabled to allow replicas to be scheduled on the same node - enum: - - ignored - - enabled - - disabled - type: string - replicaZoneSoftAntiAffinity: - description: Replica zone soft anti affinity of the volume. Set enabled to allow replicas to be scheduled in the same zone - enum: - - ignored - - enabled - - disabled - type: string - restoreVolumeRecurringJob: - enum: - - ignored - - enabled - - disabled - type: string - revisionCounterDisabled: - type: boolean - size: - format: int64 - type: string - snapshotDataIntegrity: - enum: - - ignored - - disabled - - enabled - - fast-check - type: string - staleReplicaTimeout: - type: integer - unmapMarkSnapChainRemoved: - enum: - - ignored - - disabled - - enabled - type: string - type: object - status: - description: VolumeStatus defines the observed state of the Longhorn volume - properties: - actualSize: - format: int64 - type: integer - cloneStatus: - properties: - snapshot: - type: string - sourceVolume: - type: string - state: - type: string - type: object - conditions: - items: - properties: - lastProbeTime: - description: Last time we probed the condition. - type: string - lastTransitionTime: - description: Last time the condition transitioned from one status to another. - type: string - message: - description: Human-readable message indicating details about last transition. - type: string - reason: - description: Unique, one-word, CamelCase reason for the condition's last transition. - type: string - status: - description: Status is the status of the condition. Can be True, False, Unknown. - type: string - type: - description: Type is the type of the condition. - type: string - type: object - nullable: true - type: array - currentImage: - type: string - currentMigrationNodeID: - description: the node that this volume is currently migrating to - type: string - currentNodeID: - type: string - expansionRequired: - type: boolean - frontendDisabled: - type: boolean - isStandby: - type: boolean - kubernetesStatus: - properties: - lastPVCRefAt: - type: string - lastPodRefAt: - type: string - namespace: - description: determine if PVC/Namespace is history or not - type: string - pvName: - type: string - pvStatus: - type: string - pvcName: - type: string - workloadsStatus: - description: determine if Pod/Workload is history or not - items: - properties: - podName: - type: string - podStatus: - type: string - workloadName: - type: string - workloadType: - type: string - type: object - nullable: true - type: array - type: object - lastBackup: - type: string - lastBackupAt: - type: string - lastDegradedAt: - type: string - offlineReplicaRebuildingRequired: - type: boolean - ownerID: - type: string - pendingNodeID: - description: Deprecated. - type: string - remountRequestedAt: - type: string - restoreInitiated: - type: boolean - restoreRequired: - type: boolean - robustness: - type: string - shareEndpoint: - type: string - shareState: - type: string - state: - type: string - type: object - type: object - served: true - storage: true - subresources: - status: {} -status: - acceptedNames: - kind: "" - plural: "" - conditions: [] - storedVersions: [] ---- -# Source: longhorn/templates/crds.yaml -apiVersion: apiextensions.k8s.io/v1 -kind: CustomResourceDefinition -metadata: - annotations: - controller-gen.kubebuilder.io/version: v0.7.0 - creationTimestamp: null - labels: - app.kubernetes.io/name: longhorn - app.kubernetes.io/instance: longhorn - app.kubernetes.io/version: v1.4.0-dev - longhorn-manager: "" - name: volumeattachments.longhorn.io -spec: - group: longhorn.io - names: - kind: VolumeAttachment - listKind: VolumeAttachmentList - plural: volumeattachments - shortNames: - - lhva - singular: volumeattachment - scope: Namespaced - versions: - - additionalPrinterColumns: - - jsonPath: .metadata.creationTimestamp - name: Age - type: date - name: v1beta2 - schema: - openAPIV3Schema: - description: VolumeAttachment stores attachment information of a Longhorn volume - properties: - apiVersion: - description: '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' - type: string - kind: - description: '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' - type: string - metadata: - type: object - spec: - description: VolumeAttachmentSpec defines the desired state of Longhorn VolumeAttachment - properties: - attachmentTickets: - additionalProperties: - properties: - generation: - description: A sequence number representing a specific generation of the desired state. Populated by the system. Read-only. - format: int64 - type: integer - id: - description: The unique ID of this attachment. Used to differentiate different attachments of the same volume. - type: string - nodeID: - description: The node that this attachment is requesting - type: string - parameters: - additionalProperties: - type: string - description: Optional additional parameter for this attachment - type: object - type: - type: string - type: object - type: object - volume: - description: The name of Longhorn volume of this VolumeAttachment - type: string - required: - - volume - type: object - status: - description: VolumeAttachmentStatus defines the observed state of Longhorn VolumeAttachment - properties: - attachmentTicketStatuses: - additionalProperties: - properties: - conditions: - description: Record any error when trying to fulfill this attachment - items: - properties: - lastProbeTime: - description: Last time we probed the condition. - type: string - lastTransitionTime: - description: Last time the condition transitioned from one status to another. - type: string - message: - description: Human-readable message indicating details about last transition. - type: string - reason: - description: Unique, one-word, CamelCase reason for the condition's last transition. - type: string - status: - description: Status is the status of the condition. Can be True, False, Unknown. - type: string - type: - description: Type is the type of the condition. - type: string - type: object - nullable: true - type: array - generation: - description: A sequence number representing a specific generation of the desired state. Populated by the system. Read-only. - format: int64 - type: integer - id: - description: The unique ID of this attachment. Used to differentiate different attachments of the same volume. - type: string - satisfied: - description: Indicate whether this attachment ticket has been satisfied - type: boolean - required: - - conditions - - satisfied - type: object - type: object - type: object - type: object - served: true - storage: true - subresources: - status: {} -status: - acceptedNames: - kind: "" - plural: "" - conditions: [] - storedVersions: [] ---- -# Source: longhorn/templates/clusterrole.yaml -apiVersion: rbac.authorization.k8s.io/v1 -kind: ClusterRole -metadata: - name: longhorn-role - labels: - app.kubernetes.io/name: longhorn - app.kubernetes.io/instance: longhorn - app.kubernetes.io/version: v1.4.0-dev -rules: -- apiGroups: - - apiextensions.k8s.io - resources: - - customresourcedefinitions - verbs: - - "*" -- apiGroups: [""] - resources: ["pods", "events", "persistentvolumes", "persistentvolumeclaims","persistentvolumeclaims/status", "nodes", "proxy/nodes", "pods/log", "secrets", "services", "endpoints", "configmaps", "serviceaccounts"] - verbs: ["*"] -- apiGroups: [""] - resources: ["namespaces"] - verbs: ["get", "list"] -- apiGroups: ["apps"] - resources: ["daemonsets", "statefulsets", "deployments"] - verbs: ["*"] -- apiGroups: ["batch"] - resources: ["jobs", "cronjobs"] - verbs: ["*"] -- apiGroups: ["policy"] - resources: ["poddisruptionbudgets", "podsecuritypolicies"] - verbs: ["*"] -- apiGroups: ["scheduling.k8s.io"] - resources: ["priorityclasses"] - verbs: ["watch", "list"] -- apiGroups: ["storage.k8s.io"] - resources: ["storageclasses", "volumeattachments", "volumeattachments/status", "csinodes", "csidrivers"] - verbs: ["*"] -- apiGroups: ["snapshot.storage.k8s.io"] - resources: ["volumesnapshotclasses", "volumesnapshots", "volumesnapshotcontents", "volumesnapshotcontents/status"] - verbs: ["*"] -- apiGroups: ["longhorn.io"] - resources: ["volumes", "volumes/status", "engines", "engines/status", "replicas", "replicas/status", "settings", - "engineimages", "engineimages/status", "nodes", "nodes/status", "instancemanagers", "instancemanagers/status", - "sharemanagers", "sharemanagers/status", "backingimages", "backingimages/status", - "backingimagemanagers", "backingimagemanagers/status", "backingimagedatasources", "backingimagedatasources/status", - "backuptargets", "backuptargets/status", "backupvolumes", "backupvolumes/status", "backups", "backups/status", - "recurringjobs", "recurringjobs/status", "orphans", "orphans/status", "snapshots", "snapshots/status", - "supportbundles", "supportbundles/status", "systembackups", "systembackups/status", "systemrestores", "systemrestores/status", - "volumeattachments", "volumeattachments/status"] - verbs: ["*"] -- apiGroups: ["coordination.k8s.io"] - resources: ["leases"] - verbs: ["*"] -- apiGroups: ["metrics.k8s.io"] - resources: ["pods", "nodes"] - verbs: ["get", "list"] -- apiGroups: ["apiregistration.k8s.io"] - resources: ["apiservices"] - verbs: ["list", "watch"] -- apiGroups: ["admissionregistration.k8s.io"] - resources: ["mutatingwebhookconfigurations", "validatingwebhookconfigurations"] - verbs: ["get", "list", "create", "patch", "delete"] -- apiGroups: ["rbac.authorization.k8s.io"] - resources: ["roles", "rolebindings", "clusterrolebindings", "clusterroles"] - verbs: ["*"] ---- -# Source: longhorn/templates/clusterrolebinding.yaml -apiVersion: rbac.authorization.k8s.io/v1 -kind: ClusterRoleBinding -metadata: - name: longhorn-bind - labels: - app.kubernetes.io/name: longhorn - app.kubernetes.io/instance: longhorn - app.kubernetes.io/version: v1.4.0-dev -roleRef: - apiGroup: rbac.authorization.k8s.io - kind: ClusterRole - name: longhorn-role -subjects: -- kind: ServiceAccount - name: longhorn-service-account - namespace: longhorn-system ---- -# Source: longhorn/templates/clusterrolebinding.yaml -apiVersion: rbac.authorization.k8s.io/v1 -kind: ClusterRoleBinding -metadata: - name: longhorn-support-bundle - labels: - app.kubernetes.io/name: longhorn - app.kubernetes.io/instance: longhorn - app.kubernetes.io/version: v1.4.0-dev -roleRef: - apiGroup: rbac.authorization.k8s.io - kind: ClusterRole - name: cluster-admin -subjects: -- kind: ServiceAccount - name: longhorn-support-bundle - namespace: longhorn-system ---- -# Source: longhorn/templates/daemonset-sa.yaml -apiVersion: v1 -kind: Service -metadata: - labels: - app.kubernetes.io/name: longhorn - app.kubernetes.io/instance: longhorn - app.kubernetes.io/version: v1.4.0-dev - app: longhorn-manager - name: longhorn-backend - namespace: longhorn-system -spec: - type: ClusterIP - sessionAffinity: ClientIP - selector: - app: longhorn-manager - ports: - - name: manager - port: 9500 - targetPort: manager ---- -# Source: longhorn/templates/deployment-ui.yaml -kind: Service -apiVersion: v1 -metadata: - labels: - app.kubernetes.io/name: longhorn - app.kubernetes.io/instance: longhorn - app.kubernetes.io/version: v1.4.0-dev - app: longhorn-ui - name: longhorn-frontend - namespace: longhorn-system -spec: - type: ClusterIP - selector: - app: longhorn-ui - ports: - - name: http - port: 80 - targetPort: http - nodePort: null ---- -# Source: longhorn/templates/services.yaml -apiVersion: v1 -kind: Service -metadata: - labels: - app.kubernetes.io/name: longhorn - app.kubernetes.io/instance: longhorn - app.kubernetes.io/version: v1.4.0-dev - app: longhorn-conversion-webhook - name: longhorn-conversion-webhook - namespace: longhorn-system -spec: - type: ClusterIP - sessionAffinity: ClientIP - selector: - app: longhorn-manager - ports: - - name: conversion-webhook - port: 9501 - targetPort: conversion-wh ---- -# Source: longhorn/templates/services.yaml -apiVersion: v1 -kind: Service -metadata: - labels: - app.kubernetes.io/name: longhorn - app.kubernetes.io/instance: longhorn - app.kubernetes.io/version: v1.4.0-dev - app: longhorn-admission-webhook - name: longhorn-admission-webhook - namespace: longhorn-system -spec: - type: ClusterIP - sessionAffinity: ClientIP - selector: - app: longhorn-manager - ports: - - name: admission-webhook - port: 9502 - targetPort: admission-wh ---- -# Source: longhorn/templates/services.yaml -apiVersion: v1 -kind: Service -metadata: - labels: - app.kubernetes.io/name: longhorn - app.kubernetes.io/instance: longhorn - app.kubernetes.io/version: v1.4.0-dev - app: longhorn-recovery-backend - name: longhorn-recovery-backend - namespace: longhorn-system -spec: - type: ClusterIP - sessionAffinity: ClientIP - selector: - app: longhorn-manager - ports: - - name: recovery-backend - port: 9503 - targetPort: recov-backend ---- -# Source: longhorn/templates/services.yaml -apiVersion: v1 -kind: Service -metadata: - labels: - app.kubernetes.io/name: longhorn - app.kubernetes.io/instance: longhorn - app.kubernetes.io/version: v1.4.0-dev - name: longhorn-engine-manager - namespace: longhorn-system -spec: - clusterIP: None - selector: - longhorn.io/component: instance-manager - longhorn.io/instance-manager-type: engine ---- -# Source: longhorn/templates/services.yaml -apiVersion: v1 -kind: Service -metadata: - labels: - app.kubernetes.io/name: longhorn - app.kubernetes.io/instance: longhorn - app.kubernetes.io/version: v1.4.0-dev - name: longhorn-replica-manager - namespace: longhorn-system -spec: - clusterIP: None - selector: - longhorn.io/component: instance-manager - longhorn.io/instance-manager-type: replica ---- -# Source: longhorn/templates/daemonset-sa.yaml -apiVersion: apps/v1 -kind: DaemonSet -metadata: - labels: - app.kubernetes.io/name: longhorn - app.kubernetes.io/instance: longhorn - app.kubernetes.io/version: v1.4.0-dev - app: longhorn-manager - name: longhorn-manager - namespace: longhorn-system -spec: - selector: - matchLabels: - app: longhorn-manager - template: - metadata: - labels: - app.kubernetes.io/name: longhorn - app.kubernetes.io/instance: longhorn - app.kubernetes.io/version: v1.4.0-dev - app: longhorn-manager - spec: - affinity: - nodeAffinity: - requiredDuringSchedulingIgnoredDuringExecution: - nodeSelectorTerms: - - matchExpressions: - - key: type - operator: NotIn - values: - - "outbound" - containers: - - name: longhorn-manager - image: longhornio/longhorn-manager:master-head - imagePullPolicy: IfNotPresent - securityContext: - privileged: true - command: - - longhorn-manager - - -d - - daemon - - --engine-image - - "longhornio/longhorn-engine:master-head" - - --instance-manager-image - - "longhornio/longhorn-instance-manager:master-head" - - --share-manager-image - - "longhornio/longhorn-share-manager:master-head" - - --backing-image-manager-image - - "longhornio/backing-image-manager:master-head" - - --support-bundle-manager-image - - "longhornio/support-bundle-kit:v0.0.24" - - --manager-image - - "longhornio/longhorn-manager:master-head" - - --service-account - - longhorn-service-account - ports: - - containerPort: 9500 - name: manager - - containerPort: 9501 - name: conversion-wh - - containerPort: 9502 - name: admission-wh - - containerPort: 9503 - name: recov-backend - readinessProbe: - httpGet: - path: /v1/healthz - port: 9501 - scheme: HTTPS - volumeMounts: - - name: dev - mountPath: /host/dev/ - - name: proc - mountPath: /host/proc/ - - name: longhorn - mountPath: /var/lib/longhorn/ - mountPropagation: Bidirectional - - name: longhorn-grpc-tls - mountPath: /tls-files/ - env: - - name: POD_NAMESPACE - valueFrom: - fieldRef: - fieldPath: metadata.namespace - - name: POD_IP - valueFrom: - fieldRef: - fieldPath: status.podIP - - name: NODE_NAME - valueFrom: - fieldRef: - fieldPath: spec.nodeName - volumes: - - name: dev - hostPath: - path: /dev/ - - name: proc - hostPath: - path: /proc/ - - name: longhorn - hostPath: - path: /var/lib/longhorn/ - - name: longhorn-grpc-tls - secret: - secretName: longhorn-grpc-tls - optional: true - serviceAccountName: longhorn-service-account - updateStrategy: - rollingUpdate: - maxUnavailable: "100%" ---- -# Source: longhorn/templates/deployment-driver.yaml -apiVersion: apps/v1 -kind: Deployment -metadata: - name: longhorn-driver-deployer - namespace: longhorn-system - labels: - app.kubernetes.io/name: longhorn - app.kubernetes.io/instance: longhorn - app.kubernetes.io/version: v1.4.0-dev -spec: - replicas: 1 - selector: - matchLabels: - app: longhorn-driver-deployer - template: - metadata: - labels: - app.kubernetes.io/name: longhorn - app.kubernetes.io/instance: longhorn - app.kubernetes.io/version: v1.4.0-dev - app: longhorn-driver-deployer - spec: - affinity: - nodeAffinity: - requiredDuringSchedulingIgnoredDuringExecution: - nodeSelectorTerms: - - matchExpressions: - - key: type - operator: NotIn - values: - - "outbound" - initContainers: - - name: wait-longhorn-manager - image: longhornio/longhorn-manager:master-head - command: ['sh', '-c', 'while [ $(curl -m 1 -s -o /dev/null -w "%{http_code}" http://longhorn-backend:9500/v1) != "200" ]; do echo waiting; sleep 2; done'] - containers: - - name: longhorn-driver-deployer - image: longhornio/longhorn-manager:master-head - imagePullPolicy: IfNotPresent - command: - - longhorn-manager - - -d - - deploy-driver - - --manager-image - - "longhornio/longhorn-manager:master-head" - - --manager-url - - http://longhorn-backend:9500/v1 - env: - - name: POD_NAMESPACE - valueFrom: - fieldRef: - fieldPath: metadata.namespace - - name: NODE_NAME - valueFrom: - fieldRef: - fieldPath: spec.nodeName - - name: SERVICE_ACCOUNT - valueFrom: - fieldRef: - fieldPath: spec.serviceAccountName - - name: CSI_ATTACHER_IMAGE - value: "longhornio/csi-attacher:v4.2.0" - - name: CSI_PROVISIONER_IMAGE - value: "longhornio/csi-provisioner:v3.4.1" - - name: CSI_NODE_DRIVER_REGISTRAR_IMAGE - value: "longhornio/csi-node-driver-registrar:v2.7.0" - - name: CSI_RESIZER_IMAGE - value: "longhornio/csi-resizer:v1.7.0" - - name: CSI_SNAPSHOTTER_IMAGE - value: "longhornio/csi-snapshotter:v6.2.1" - - name: CSI_LIVENESS_PROBE_IMAGE - value: "longhornio/livenessprobe:v2.9.0" - serviceAccountName: longhorn-service-account - securityContext: - runAsUser: 0 ---- -# Source: longhorn/templates/deployment-ui.yaml -apiVersion: apps/v1 -kind: Deployment -metadata: - labels: - app.kubernetes.io/name: longhorn - app.kubernetes.io/instance: longhorn - app.kubernetes.io/version: v1.4.0-dev - app: longhorn-ui - name: longhorn-ui - namespace: longhorn-system -spec: - replicas: 2 - selector: - matchLabels: - app: longhorn-ui - template: - metadata: - labels: - app.kubernetes.io/name: longhorn - app.kubernetes.io/instance: longhorn - app.kubernetes.io/version: v1.4.0-dev - app: longhorn-ui - spec: - affinity: - podAntiAffinity: - preferredDuringSchedulingIgnoredDuringExecution: - - weight: 1 - podAffinityTerm: - labelSelector: - matchExpressions: - - key: app - operator: In - values: - - longhorn-ui - topologyKey: kubernetes.io/hostname - nodeAffinity: - requiredDuringSchedulingIgnoredDuringExecution: - nodeSelectorTerms: - - matchExpressions: - - key: type - operator: NotIn - values: - - "outbound" - containers: - - name: longhorn-ui - image: longhornio/longhorn-ui:master-head - imagePullPolicy: IfNotPresent - volumeMounts: - - name : nginx-cache - mountPath: /var/cache/nginx/ - - name : nginx-config - mountPath: /var/config/nginx/ - - name: var-run - mountPath: /var/run/ - ports: - - containerPort: 8000 - name: http - env: - - name: LONGHORN_MANAGER_IP - value: "http://longhorn-backend:9500" - - name: LONGHORN_UI_PORT - value: "8000" - volumes: - - emptyDir: {} - name: nginx-cache - - emptyDir: {} - name: nginx-config - - emptyDir: {} - name: var-run ---- -# Source: longhorn/templates/validate-psp-install.yaml -#