forked from k-space/kube
4304 lines
147 KiB
YAML
4304 lines
147 KiB
YAML
---
|
|
# 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
|
|
---
|
|
# 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
|
|
---
|
|
# 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
|
|
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
|
|
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: "Retain"
|
|
volumeBindingMode: Immediate
|
|
parameters:
|
|
numberOfReplicas: "2"
|
|
staleReplicaTimeout: "30"
|
|
fromBackup: ""
|
|
fsType: "xfs"
|
|
dataLocality: "best-effort"
|
|
---
|
|
# 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
|
|
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
|
|
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
|
|
directory:
|
|
description: 'Deprecated: This field is useless.'
|
|
type: string
|
|
downloadProgress:
|
|
description: 'Deprecated: This field is renamed to `Progress`.'
|
|
type: integer
|
|
message:
|
|
type: string
|
|
name:
|
|
type: string
|
|
progress:
|
|
type: integer
|
|
senderManagerAddress:
|
|
type: string
|
|
sendingReference:
|
|
type: integer
|
|
size:
|
|
format: int64
|
|
type: integer
|
|
state:
|
|
type: string
|
|
url:
|
|
description: 'Deprecated: This field is useless now. The manager of backing image files doesn''t care if a file is downloaded and how.'
|
|
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
|
|
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: 9443
|
|
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
|
|
imageURL:
|
|
description: 'Deprecated: This kind of info will be included in the related BackingImageDataSource.'
|
|
type: string
|
|
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
|
|
diskDownloadProgressMap:
|
|
additionalProperties:
|
|
type: integer
|
|
description: 'Deprecated: Replaced by field `Progress` in `DiskFileStatusMap`.'
|
|
nullable: true
|
|
type: object
|
|
diskDownloadStateMap:
|
|
additionalProperties:
|
|
description: BackingImageDownloadState is replaced by BackingImageState.
|
|
type: string
|
|
description: 'Deprecated: Replaced by field `State` in `DiskFileStatusMap`.'
|
|
nullable: true
|
|
type: object
|
|
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
|
|
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
|
|
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
|
|
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: 9443
|
|
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
|
|
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
|
|
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
|
|
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: 9443
|
|
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
|
|
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
|
|
backupVolume:
|
|
type: string
|
|
desireState:
|
|
type: string
|
|
disableFrontend:
|
|
type: boolean
|
|
engineImage:
|
|
type: string
|
|
frontend:
|
|
enum:
|
|
- blockdev
|
|
- iscsi
|
|
- ""
|
|
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
|
|
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:
|
|
engineImage:
|
|
description: 'TODO: deprecate this field'
|
|
type: string
|
|
image:
|
|
type: string
|
|
nodeID:
|
|
type: string
|
|
type:
|
|
enum:
|
|
- 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
|
|
instances:
|
|
additionalProperties:
|
|
properties:
|
|
spec:
|
|
properties:
|
|
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
|
|
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
|
|
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: 9443
|
|
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
|
|
type: object
|
|
type: object
|
|
engineManagerCPURequest:
|
|
type: integer
|
|
evictionRequested:
|
|
type: boolean
|
|
name:
|
|
type: string
|
|
replicaManagerCPURequest:
|
|
type: integer
|
|
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
|
|
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
|
|
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 "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: 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 type. Can be "snapshot" or "backup".
|
|
enum:
|
|
- snapshot
|
|
- backup
|
|
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
|
|
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
|
|
backingImage:
|
|
type: string
|
|
baseImage:
|
|
description: Deprecated. Rename to BackingImage
|
|
type: string
|
|
dataDirectoryName:
|
|
type: string
|
|
dataPath:
|
|
description: Deprecated
|
|
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
|
|
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
|
|
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:
|
|
type: string
|
|
type: object
|
|
status:
|
|
description: ShareManagerStatus defines the observed state of the Longhorn share manager
|
|
properties:
|
|
endpoint:
|
|
type: string
|
|
ownerID:
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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: 9443
|
|
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
|
|
backingImage:
|
|
type: string
|
|
baseImage:
|
|
description: Deprecated. Rename to BackingImage
|
|
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
|
|
restoreVolumeRecurringJob:
|
|
enum:
|
|
- ignored
|
|
- enabled
|
|
- disabled
|
|
type: string
|
|
frontend:
|
|
enum:
|
|
- blockdev
|
|
- iscsi
|
|
- ""
|
|
type: string
|
|
lastAttachedBy:
|
|
type: string
|
|
migratable:
|
|
type: boolean
|
|
migrationNodeID:
|
|
type: string
|
|
nodeID:
|
|
type: string
|
|
nodeSelector:
|
|
items:
|
|
type: string
|
|
type: array
|
|
numberOfReplicas:
|
|
type: integer
|
|
recurringJobs:
|
|
description: Deprecated. Replaced by a separate resource named "RecurringJob"
|
|
items:
|
|
description: 'VolumeRecurringJobSpec is a deprecated struct. TODO: Should be removed when recurringJobs gets removed from the volume spec.'
|
|
properties:
|
|
concurrency:
|
|
type: integer
|
|
cron:
|
|
type: string
|
|
groups:
|
|
items:
|
|
type: string
|
|
type: array
|
|
labels:
|
|
additionalProperties:
|
|
type: string
|
|
type: object
|
|
name:
|
|
type: string
|
|
retain:
|
|
type: integer
|
|
task:
|
|
enum:
|
|
- snapshot
|
|
- backup
|
|
type: string
|
|
type: object
|
|
type: array
|
|
replicaAutoBalance:
|
|
enum:
|
|
- ignored
|
|
- disabled
|
|
- least-effort
|
|
- best-effort
|
|
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
|
|
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
|
|
ownerID:
|
|
type: string
|
|
pendingNodeID:
|
|
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/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
|
|
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"]
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
app: longhorn-conversion-webhook
|
|
name: longhorn-conversion-webhook
|
|
namespace: longhorn-system
|
|
spec:
|
|
type: ClusterIP
|
|
sessionAffinity: ClientIP
|
|
selector:
|
|
app: longhorn-conversion-webhook
|
|
ports:
|
|
- name: conversion-webhook
|
|
port: 9443
|
|
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
|
|
app: longhorn-admission-webhook
|
|
name: longhorn-admission-webhook
|
|
namespace: longhorn-system
|
|
spec:
|
|
type: ClusterIP
|
|
sessionAffinity: ClientIP
|
|
selector:
|
|
app: longhorn-admission-webhook
|
|
ports:
|
|
- name: admission-webhook
|
|
port: 9443
|
|
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
|
|
app: longhorn-recovery-backend
|
|
name: longhorn-recovery-backend
|
|
namespace: longhorn-system
|
|
spec:
|
|
type: ClusterIP
|
|
sessionAffinity: ClientIP
|
|
selector:
|
|
app: longhorn-recovery-backend
|
|
ports:
|
|
- name: recovery-backend
|
|
port: 9600
|
|
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
|
|
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
|
|
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
|
|
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
|
|
app: longhorn-manager
|
|
spec:
|
|
tolerations:
|
|
- key: dedicated
|
|
operator: Equal
|
|
value: storage
|
|
effect: NoSchedule
|
|
initContainers:
|
|
- name: wait-longhorn-admission-webhook
|
|
image: longhornio/longhorn-manager:v1.4.0
|
|
command: ['sh', '-c', 'while [ $(curl -m 1 -s -o /dev/null -w "%{http_code}" -k https://longhorn-admission-webhook:9443/v1/healthz) != "200" ]; do echo waiting; sleep 2; done']
|
|
containers:
|
|
- name: longhorn-manager
|
|
image: longhornio/longhorn-manager:v1.4.0
|
|
imagePullPolicy: IfNotPresent
|
|
securityContext:
|
|
privileged: true
|
|
command:
|
|
- longhorn-manager
|
|
- -d
|
|
- daemon
|
|
- --engine-image
|
|
- "longhornio/longhorn-engine:v1.4.0"
|
|
- --instance-manager-image
|
|
- "longhornio/longhorn-instance-manager:v1.4.0"
|
|
- --share-manager-image
|
|
- "longhornio/longhorn-share-manager:v1.4.0"
|
|
- --backing-image-manager-image
|
|
- "longhornio/backing-image-manager:v1.4.0"
|
|
- --support-bundle-manager-image
|
|
- "longhornio/support-bundle-kit:v0.0.17"
|
|
- --manager-image
|
|
- "longhornio/longhorn-manager:v1.4.0"
|
|
- --service-account
|
|
- longhorn-service-account
|
|
ports:
|
|
- containerPort: 9500
|
|
name: manager
|
|
readinessProbe:
|
|
tcpSocket:
|
|
port: 9500
|
|
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
|
|
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
|
|
app: longhorn-driver-deployer
|
|
spec:
|
|
tolerations:
|
|
- key: dedicated
|
|
operator: Equal
|
|
value: storage
|
|
initContainers:
|
|
- name: wait-longhorn-manager
|
|
image: longhornio/longhorn-manager:v1.4.0
|
|
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:v1.4.0
|
|
imagePullPolicy: IfNotPresent
|
|
command:
|
|
- longhorn-manager
|
|
- -d
|
|
- deploy-driver
|
|
- --manager-image
|
|
- "longhornio/longhorn-manager:v1.4.0"
|
|
- --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:v3.4.0"
|
|
- name: CSI_PROVISIONER_IMAGE
|
|
value: "longhornio/csi-provisioner:v2.1.2"
|
|
- name: CSI_NODE_DRIVER_REGISTRAR_IMAGE
|
|
value: "longhornio/csi-node-driver-registrar:v2.5.0"
|
|
- name: CSI_RESIZER_IMAGE
|
|
value: "longhornio/csi-resizer:v1.3.0"
|
|
- name: CSI_SNAPSHOTTER_IMAGE
|
|
value: "longhornio/csi-snapshotter:v5.0.1"
|
|
- name: CSI_LIVENESS_PROBE_IMAGE
|
|
value: "longhornio/livenessprobe:v2.8.0"
|
|
serviceAccountName: longhorn-service-account
|
|
securityContext:
|
|
runAsUser: 0
|
|
---
|
|
# Source: longhorn/templates/deployment-recovery-backend.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
|
|
app: longhorn-recovery-backend
|
|
name: longhorn-recovery-backend
|
|
namespace: longhorn-system
|
|
spec:
|
|
replicas: 2
|
|
selector:
|
|
matchLabels:
|
|
app: longhorn-recovery-backend
|
|
template:
|
|
metadata:
|
|
labels:
|
|
app.kubernetes.io/name: longhorn
|
|
app.kubernetes.io/instance: longhorn
|
|
app.kubernetes.io/version: v1.4.0
|
|
app: longhorn-recovery-backend
|
|
spec:
|
|
tolerations:
|
|
- key: dedicated
|
|
operator: Equal
|
|
value: storage
|
|
effect: NoSchedule
|
|
affinity:
|
|
podAntiAffinity:
|
|
preferredDuringSchedulingIgnoredDuringExecution:
|
|
- weight: 1
|
|
podAffinityTerm:
|
|
labelSelector:
|
|
matchExpressions:
|
|
- key: app
|
|
operator: In
|
|
values:
|
|
- longhorn-recovery-backend
|
|
topologyKey: kubernetes.io/hostname
|
|
containers:
|
|
- name: longhorn-recovery-backend
|
|
image: longhornio/longhorn-manager:v1.4.0
|
|
imagePullPolicy: IfNotPresent
|
|
securityContext:
|
|
runAsUser: 2000
|
|
command:
|
|
- longhorn-manager
|
|
- recovery-backend
|
|
- --service-account
|
|
- longhorn-service-account
|
|
ports:
|
|
- containerPort: 9600
|
|
name: recov-backend
|
|
readinessProbe:
|
|
tcpSocket:
|
|
port: 9600
|
|
initialDelaySeconds: 3
|
|
periodSeconds: 5
|
|
env:
|
|
- name: POD_NAMESPACE
|
|
valueFrom:
|
|
fieldRef:
|
|
fieldPath: metadata.namespace
|
|
- name: NODE_NAME
|
|
valueFrom:
|
|
fieldRef:
|
|
fieldPath: spec.nodeName
|
|
serviceAccountName: longhorn-service-account
|
|
---
|
|
# 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
|
|
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
|
|
app: longhorn-ui
|
|
spec:
|
|
tolerations:
|
|
- key: dedicated
|
|
operator: Equal
|
|
value: storage
|
|
effect: NoSchedule
|
|
affinity:
|
|
podAntiAffinity:
|
|
preferredDuringSchedulingIgnoredDuringExecution:
|
|
- weight: 1
|
|
podAffinityTerm:
|
|
labelSelector:
|
|
matchExpressions:
|
|
- key: app
|
|
operator: In
|
|
values:
|
|
- longhorn-ui
|
|
topologyKey: kubernetes.io/hostname
|
|
containers:
|
|
- name: longhorn-ui
|
|
image: longhornio/longhorn-ui:v1.4.0
|
|
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/deployment-webhook.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
|
|
app: longhorn-conversion-webhook
|
|
name: longhorn-conversion-webhook
|
|
namespace: longhorn-system
|
|
spec:
|
|
replicas: 2
|
|
selector:
|
|
matchLabels:
|
|
app: longhorn-conversion-webhook
|
|
template:
|
|
metadata:
|
|
labels:
|
|
app.kubernetes.io/name: longhorn
|
|
app.kubernetes.io/instance: longhorn
|
|
app.kubernetes.io/version: v1.4.0
|
|
app: longhorn-conversion-webhook
|
|
spec:
|
|
tolerations:
|
|
- key: dedicated
|
|
operator: Equal
|
|
value: storage
|
|
effect: NoSchedule
|
|
affinity:
|
|
podAntiAffinity:
|
|
preferredDuringSchedulingIgnoredDuringExecution:
|
|
- weight: 1
|
|
podAffinityTerm:
|
|
labelSelector:
|
|
matchExpressions:
|
|
- key: app
|
|
operator: In
|
|
values:
|
|
- longhorn-conversion-webhook
|
|
topologyKey: kubernetes.io/hostname
|
|
containers:
|
|
- name: longhorn-conversion-webhook
|
|
image: longhornio/longhorn-manager:v1.4.0
|
|
imagePullPolicy: IfNotPresent
|
|
securityContext:
|
|
runAsUser: 2000
|
|
command:
|
|
- longhorn-manager
|
|
- conversion-webhook
|
|
- --service-account
|
|
- longhorn-service-account
|
|
ports:
|
|
- containerPort: 9443
|
|
name: conversion-wh
|
|
readinessProbe:
|
|
tcpSocket:
|
|
port: 9443
|
|
env:
|
|
- name: POD_NAMESPACE
|
|
valueFrom:
|
|
fieldRef:
|
|
fieldPath: metadata.namespace
|
|
serviceAccountName: longhorn-service-account
|
|
---
|
|
# Source: longhorn/templates/deployment-webhook.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
|
|
app: longhorn-admission-webhook
|
|
name: longhorn-admission-webhook
|
|
namespace: longhorn-system
|
|
spec:
|
|
replicas: 2
|
|
selector:
|
|
matchLabels:
|
|
app: longhorn-admission-webhook
|
|
template:
|
|
metadata:
|
|
labels:
|
|
app.kubernetes.io/name: longhorn
|
|
app.kubernetes.io/instance: longhorn
|
|
app.kubernetes.io/version: v1.4.0
|
|
app: longhorn-admission-webhook
|
|
spec:
|
|
tolerations:
|
|
- key: dedicated
|
|
operator: Equal
|
|
value: storage
|
|
effect: NoSchedule
|
|
affinity:
|
|
podAntiAffinity:
|
|
preferredDuringSchedulingIgnoredDuringExecution:
|
|
- weight: 1
|
|
podAffinityTerm:
|
|
labelSelector:
|
|
matchExpressions:
|
|
- key: app
|
|
operator: In
|
|
values:
|
|
- longhorn-admission-webhook
|
|
topologyKey: kubernetes.io/hostname
|
|
initContainers:
|
|
- name: wait-longhorn-conversion-webhook
|
|
image: longhornio/longhorn-manager:v1.4.0
|
|
command: ['sh', '-c', 'while [ $(curl -m 1 -s -o /dev/null -w "%{http_code}" -k https://longhorn-conversion-webhook:9443/v1/healthz) != "200" ]; do echo waiting; sleep 2; done']
|
|
imagePullPolicy: IfNotPresent
|
|
securityContext:
|
|
runAsUser: 2000
|
|
containers:
|
|
- name: longhorn-admission-webhook
|
|
image: longhornio/longhorn-manager:v1.4.0
|
|
imagePullPolicy: IfNotPresent
|
|
securityContext:
|
|
runAsUser: 2000
|
|
command:
|
|
- longhorn-manager
|
|
- admission-webhook
|
|
- --service-account
|
|
- longhorn-service-account
|
|
ports:
|
|
- containerPort: 9443
|
|
name: admission-wh
|
|
readinessProbe:
|
|
tcpSocket:
|
|
port: 9443
|
|
env:
|
|
- name: POD_NAMESPACE
|
|
valueFrom:
|
|
fieldRef:
|
|
fieldPath: metadata.namespace
|
|
- name: NODE_NAME
|
|
valueFrom:
|
|
fieldRef:
|
|
fieldPath: spec.nodeName
|
|
serviceAccountName: longhorn-service-account
|