updated README
This commit is contained in:
		
							
								
								
									
										24
									
								
								README.md
									
									
									
									
									
								
							
							
						
						
									
										24
									
								
								README.md
									
									
									
									
									
								
							| @ -163,19 +163,11 @@ kubectl expose deployment nginx --port=80 --type=LoadBalancer -n nginx | |||||||
| kubectl delete namespace nginx | kubectl delete namespace nginx | ||||||
| ``` | ``` | ||||||
|  |  | ||||||
| ## 🤝 Contributing | ## Upgrade K3s cluster | ||||||
|  |  | ||||||
| Contributions welcome! Feel free to open issues or submit PRs. |  | ||||||
|  |  | ||||||
| ## 📝 License |  | ||||||
|  |  | ||||||
| MIT License - feel free to use this as a template for your own homelab! |  | ||||||
|  |  | ||||||
| # Upgrade K3s cluster |  | ||||||
|  |  | ||||||
| Ref: https://github.com/k3s-io/k3s-upgrade | Ref: https://github.com/k3s-io/k3s-upgrade | ||||||
|  |  | ||||||
| ## Deploying the K3s Upgrade Controller | ### Deploying the K3s Upgrade Controller | ||||||
|  |  | ||||||
| First deploy the k3s upgrade controller | First deploy the k3s upgrade controller | ||||||
|  |  | ||||||
| @ -193,7 +185,7 @@ kubectl create clusterrolebinding system-upgrade \ | |||||||
|     --serviceaccount=system-upgrade:system-upgrade |     --serviceaccount=system-upgrade:system-upgrade | ||||||
| ``` | ``` | ||||||
|  |  | ||||||
| ## Create the upgrade plan | ### Label the nodes | ||||||
|  |  | ||||||
| First label the selected node with `k3s-upgrade=true` label. This is | First label the selected node with `k3s-upgrade=true` label. This is | ||||||
| needed to select the node for upgrade. | needed to select the node for upgrade. | ||||||
| @ -206,7 +198,7 @@ It is best practice to upgrade node one by one. Thus, the cluster will | |||||||
| still be operational during the upgrade. And, for any issues, it is possible | still be operational during the upgrade. And, for any issues, it is possible | ||||||
| to rollback the upgrade. | to rollback the upgrade. | ||||||
|  |  | ||||||
| ## Create the upgrade plan | ### Create the upgrade plan | ||||||
|  |  | ||||||
| Then create the upgrade plan. The plan will be created in the `system-upgrade` | Then create the upgrade plan. The plan will be created in the `system-upgrade` | ||||||
| namespace. You can change the namespace by using the `--namespace` flag. | namespace. You can change the namespace by using the `--namespace` flag. | ||||||
| @ -227,3 +219,11 @@ kubectl drain vm4 --ignore-daemonsets \ | |||||||
|     --delete-emptydir-data \ |     --delete-emptydir-data \ | ||||||
|     --pod-selector='app!=csi-attacher,app!=csi-provisioner' |     --pod-selector='app!=csi-attacher,app!=csi-provisioner' | ||||||
| ``` | ``` | ||||||
|  |  | ||||||
|  | ## 🤝 Contributing | ||||||
|  |  | ||||||
|  | Contributions welcome! Feel free to open issues or submit PRs. | ||||||
|  |  | ||||||
|  | ## 📝 License | ||||||
|  |  | ||||||
|  | MIT License - feel free to use this as a template for your own homelab! | ||||||
|  | |||||||
| @ -148,9 +148,9 @@ services running locally or remotely. | |||||||
| ```bash | ```bash | ||||||
| source .env | source .env | ||||||
| kubectl create namespace external-services | kubectl create namespace external-services | ||||||
| kubectl get secret wildcard-cert-secret --namespace=cert -o yaml \ | kubectl get secret wildcard-cert-secret --namespace=cert-manager -o yaml \ | ||||||
|   | sed 's/namespace: cert/namespace: external-services/' | kubectl apply -f - |   | sed 's/namespace: cert-manager/namespace: external-services/' | kubectl apply -f - | ||||||
| envsubst < external-service/proxmox.yaml | \ | envsubst '${PROXMOX_IP} ${PROXMOX_HOST}' < external-service/proxmox.yaml | \ | ||||||
|   kubectl apply -n external-services -f - |   kubectl apply -n external-services -f - | ||||||
| ``` | ``` | ||||||
|  |  | ||||||
| @ -282,6 +282,13 @@ sudo mkfs.ext4 /dev/sda4 | |||||||
| sudo mkdir /mnt/longhorn | sudo mkdir /mnt/longhorn | ||||||
| sudo mount /dev/sda4 /mnt/longhorn | sudo mount /dev/sda4 /mnt/longhorn | ||||||
|  |  | ||||||
|  | # Add entry to /etc/fstab to persist across reboot | ||||||
|  | echo "/dev/sda4 /mnt/longhorn ext4 defaults 0 2" | sudo tee -a /etc/fstab | ||||||
|  | ``` | ||||||
|  | Deploy the longhorn helm chart. | ||||||
|  | Ref: https://github.com/longhorn/charts/tree/v1.8.x/charts/longhorn | ||||||
|  |  | ||||||
|  | ```bash | ||||||
| helm repo add longhorn https://charts.longhorn.io | helm repo add longhorn https://charts.longhorn.io | ||||||
| helm repo update | helm repo update | ||||||
|  |  | ||||||
| @ -299,6 +306,8 @@ kubectl -n longhorn-system edit svc longhorn-frontend | |||||||
|  |  | ||||||
| ## If the /mnt/longhorn is not shown | ## If the /mnt/longhorn is not shown | ||||||
|  |  | ||||||
|  | Ref: https://longhorn.io/docs/1.8.1/nodes-and-volumes/nodes/default-disk-and-node-config/ | ||||||
|  |  | ||||||
| kubectl -n longhorn-system get nodes.longhorn.io | kubectl -n longhorn-system get nodes.longhorn.io | ||||||
| kubectl -n longhorn-system edit nodes.longhorn.io <node-name> | kubectl -n longhorn-system edit nodes.longhorn.io <node-name> | ||||||
|  |  | ||||||
|  | |||||||
| @ -14,18 +14,18 @@ spec: | |||||||
|         app: proxmox-proxy |         app: proxmox-proxy | ||||||
|     spec: |     spec: | ||||||
|       containers: |       containers: | ||||||
|       - name: nginx |         - name: nginx | ||||||
|         image: nginx:alpine |           image: nginx:alpine | ||||||
|         ports: |           ports: | ||||||
|         - containerPort: 80 |             - containerPort: 80 | ||||||
|         volumeMounts: |           volumeMounts: | ||||||
|         - name: nginx-config |             - name: nginx-config | ||||||
|           mountPath: /etc/nginx/nginx.conf |               mountPath: /etc/nginx/nginx.conf | ||||||
|           subPath: nginx.conf |               subPath: nginx.conf | ||||||
|       volumes: |       volumes: | ||||||
|       - name: nginx-config |         - name: nginx-config | ||||||
|         configMap: |           configMap: | ||||||
|           name: proxmox-proxy-config |             name: proxmox-proxy-config | ||||||
| --- | --- | ||||||
| apiVersion: v1 | apiVersion: v1 | ||||||
| kind: Service | kind: Service | ||||||
| @ -36,8 +36,8 @@ spec: | |||||||
|   selector: |   selector: | ||||||
|     app: proxmox-proxy |     app: proxmox-proxy | ||||||
|   ports: |   ports: | ||||||
|   - port: 80 |     - port: 80 | ||||||
|     targetPort: 80 |       targetPort: 80 | ||||||
| --- | --- | ||||||
| apiVersion: v1 | apiVersion: v1 | ||||||
| kind: ConfigMap | kind: ConfigMap | ||||||
| @ -61,7 +61,7 @@ data: | |||||||
|       } |       } | ||||||
|     } |     } | ||||||
| --- | --- | ||||||
| apiVersion: traefik.containo.us/v1alpha1 | apiVersion: traefik.io/v1alpha1 | ||||||
| kind: IngressRoute | kind: IngressRoute | ||||||
| metadata: | metadata: | ||||||
|   name: proxmox-route |   name: proxmox-route | ||||||
| @ -70,10 +70,10 @@ spec: | |||||||
|   entryPoints: |   entryPoints: | ||||||
|     - websecure |     - websecure | ||||||
|   routes: |   routes: | ||||||
|   - match: Host(`${PROXMOX_HOST}`) |     - match: Host(`${PROXMOX_HOST}`) | ||||||
|     kind: Rule |       kind: Rule | ||||||
|     services: |       services: | ||||||
|     - name: proxmox-proxy |         - name: proxmox-proxy | ||||||
|       port: 80 |           port: 80 | ||||||
|   tls: |   tls: | ||||||
|     secretName: wildcard-cert-secret |     secretName: wildcard-cert-secret | ||||||
|  | |||||||
							
								
								
									
										333
									
								
								kubernetes/longhorn/values.yaml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										333
									
								
								kubernetes/longhorn/values.yaml
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,333 @@ | |||||||
|  | # Default values for longhorn. | ||||||
|  | # This is a YAML-formatted file. | ||||||
|  | # Declare variables to be passed into your templates. | ||||||
|  | global: | ||||||
|  |   cattle: | ||||||
|  |     systemDefaultRegistry: "" | ||||||
|  |     windowsCluster: | ||||||
|  |       # Enable this to allow Longhorn to run on the Rancher deployed Windows cluster | ||||||
|  |       enabled: false | ||||||
|  |       # Tolerate Linux node taint | ||||||
|  |       tolerations: | ||||||
|  |       - key: "cattle.io/os" | ||||||
|  |         value: "linux" | ||||||
|  |         effect: "NoSchedule" | ||||||
|  |         operator: "Equal" | ||||||
|  |       # Select Linux nodes | ||||||
|  |       nodeSelector: | ||||||
|  |         kubernetes.io/os: "linux" | ||||||
|  |       # Recognize toleration and node selector for Longhorn run-time created components | ||||||
|  |       defaultSetting: | ||||||
|  |         taintToleration: cattle.io/os=linux:NoSchedule | ||||||
|  |         systemManagedComponentsNodeSelector: kubernetes.io/os:linux | ||||||
|  |  | ||||||
|  | image: | ||||||
|  |   longhorn: | ||||||
|  |     engine: | ||||||
|  |       repository: longhornio/longhorn-engine | ||||||
|  |       tag: v1.4.0 | ||||||
|  |     manager: | ||||||
|  |       repository: longhornio/longhorn-manager | ||||||
|  |       tag: v1.4.0 | ||||||
|  |     ui: | ||||||
|  |       repository: longhornio/longhorn-ui | ||||||
|  |       tag: v1.4.0 | ||||||
|  |     instanceManager: | ||||||
|  |       repository: longhornio/longhorn-instance-manager | ||||||
|  |       tag: v1.4.0 | ||||||
|  |     shareManager: | ||||||
|  |       repository: longhornio/longhorn-share-manager | ||||||
|  |       tag: v1.4.0 | ||||||
|  |     backingImageManager: | ||||||
|  |       repository: longhornio/backing-image-manager | ||||||
|  |       tag: v1.4.0 | ||||||
|  |     supportBundleKit: | ||||||
|  |       repository: longhornio/support-bundle-kit | ||||||
|  |       tag: v0.0.17 | ||||||
|  |   csi: | ||||||
|  |     attacher: | ||||||
|  |       repository: longhornio/csi-attacher | ||||||
|  |       tag: v3.4.0 | ||||||
|  |     provisioner: | ||||||
|  |       repository: longhornio/csi-provisioner | ||||||
|  |       tag: v2.1.2 | ||||||
|  |     nodeDriverRegistrar: | ||||||
|  |       repository: longhornio/csi-node-driver-registrar | ||||||
|  |       tag: v2.5.0 | ||||||
|  |     resizer: | ||||||
|  |       repository: longhornio/csi-resizer | ||||||
|  |       tag: v1.3.0 | ||||||
|  |     snapshotter: | ||||||
|  |       repository: longhornio/csi-snapshotter | ||||||
|  |       tag: v5.0.1 | ||||||
|  |     livenessProbe: | ||||||
|  |       repository: longhornio/livenessprobe | ||||||
|  |       tag: v2.8.0 | ||||||
|  |   pullPolicy: IfNotPresent | ||||||
|  |  | ||||||
|  | service: | ||||||
|  |   ui: | ||||||
|  |     type: ClusterIP | ||||||
|  |     nodePort: null | ||||||
|  |   manager: | ||||||
|  |     type: ClusterIP | ||||||
|  |     nodePort: "" | ||||||
|  |     loadBalancerIP: "" | ||||||
|  |     loadBalancerSourceRanges: "" | ||||||
|  |  | ||||||
|  | persistence: | ||||||
|  |   defaultClass: true | ||||||
|  |   defaultFsType: ext4 | ||||||
|  |   defaultMkfsParams: "" | ||||||
|  |   defaultClassReplicaCount: 1 | ||||||
|  |   defaultDataLocality: disabled # best-effort otherwise | ||||||
|  |   defaultReplicaAutoBalance: ignored # "disabled", "least-effort" or "best-effort" otherwise | ||||||
|  |   reclaimPolicy: Delete | ||||||
|  |   migratable: false | ||||||
|  |   recurringJobSelector: | ||||||
|  |     enable: false | ||||||
|  |     jobList: [] | ||||||
|  |   backingImage: | ||||||
|  |     enable: false | ||||||
|  |     name: ~ | ||||||
|  |     dataSourceType: ~ | ||||||
|  |     dataSourceParameters: ~ | ||||||
|  |     expectedChecksum: ~ | ||||||
|  |   defaultNodeSelector: | ||||||
|  |     enable: false # disable by default | ||||||
|  |     selector: [] | ||||||
|  |   removeSnapshotsDuringFilesystemTrim: ignored # "enabled" or "disabled" otherwise | ||||||
|  |  | ||||||
|  | csi: | ||||||
|  |   kubeletRootDir: ~ | ||||||
|  |   attacherReplicaCount: ~ | ||||||
|  |   provisionerReplicaCount: ~ | ||||||
|  |   resizerReplicaCount: ~ | ||||||
|  |   snapshotterReplicaCount: ~ | ||||||
|  |  | ||||||
|  | defaultSettings: | ||||||
|  |   backupTarget: ~ | ||||||
|  |   backupTargetCredentialSecret: ~ | ||||||
|  |   allowRecurringJobWhileVolumeDetached: ~ | ||||||
|  |   createDefaultDiskLabeledNodes: ~ | ||||||
|  |   defaultDataPath: ~ | ||||||
|  |   defaultDataLocality: ~ | ||||||
|  |   replicaSoftAntiAffinity: ~ | ||||||
|  |   replicaAutoBalance: ~ | ||||||
|  |   storageOverProvisioningPercentage: ~ | ||||||
|  |   storageMinimalAvailablePercentage: ~ | ||||||
|  |   upgradeChecker: ~ | ||||||
|  |   defaultReplicaCount: 1 | ||||||
|  |   defaultLonghornStaticStorageClass: ~ | ||||||
|  |   backupstorePollInterval: ~ | ||||||
|  |   failedBackupTTL: ~ | ||||||
|  |   restoreVolumeRecurringJobs: ~ | ||||||
|  |   recurringSuccessfulJobsHistoryLimit: ~ | ||||||
|  |   recurringFailedJobsHistoryLimit: ~ | ||||||
|  |   supportBundleFailedHistoryLimit: ~ | ||||||
|  |   taintToleration: ~ | ||||||
|  |   systemManagedComponentsNodeSelector: ~ | ||||||
|  |   priorityClass: ~ | ||||||
|  |   autoSalvage: ~ | ||||||
|  |   autoDeletePodWhenVolumeDetachedUnexpectedly: ~ | ||||||
|  |   disableSchedulingOnCordonedNode: ~ | ||||||
|  |   replicaZoneSoftAntiAffinity: ~ | ||||||
|  |   nodeDownPodDeletionPolicy: ~ | ||||||
|  |   allowNodeDrainWithLastHealthyReplica: ~ | ||||||
|  |   mkfsExt4Parameters: ~ | ||||||
|  |   disableReplicaRebuild: ~ | ||||||
|  |   replicaReplenishmentWaitInterval: ~ | ||||||
|  |   concurrentReplicaRebuildPerNodeLimit: ~ | ||||||
|  |   concurrentVolumeBackupRestorePerNodeLimit: ~ | ||||||
|  |   disableRevisionCounter: ~ | ||||||
|  |   systemManagedPodsImagePullPolicy: ~ | ||||||
|  |   allowVolumeCreationWithDegradedAvailability: ~ | ||||||
|  |   autoCleanupSystemGeneratedSnapshot: ~ | ||||||
|  |   concurrentAutomaticEngineUpgradePerNodeLimit: ~ | ||||||
|  |   backingImageCleanupWaitInterval: ~ | ||||||
|  |   backingImageRecoveryWaitInterval: ~ | ||||||
|  |   guaranteedEngineManagerCPU: ~ | ||||||
|  |   guaranteedReplicaManagerCPU: ~ | ||||||
|  |   kubernetesClusterAutoscalerEnabled: ~ | ||||||
|  |   orphanAutoDeletion: ~ | ||||||
|  |   storageNetwork: ~ | ||||||
|  |   deletingConfirmationFlag: ~ | ||||||
|  |   engineReplicaTimeout: ~ | ||||||
|  |   snapshotDataIntegrity: ~ | ||||||
|  |   snapshotDataIntegrityImmediateCheckAfterSnapshotCreation: ~ | ||||||
|  |   snapshotDataIntegrityCronjob: ~ | ||||||
|  |   removeSnapshotsDuringFilesystemTrim: ~ | ||||||
|  |   fastReplicaRebuildEnabled: ~ | ||||||
|  |   replicaFileSyncHttpClientTimeout: ~ | ||||||
|  | privateRegistry: | ||||||
|  |   createSecret: ~ | ||||||
|  |   registryUrl: ~ | ||||||
|  |   registryUser: ~ | ||||||
|  |   registryPasswd: ~ | ||||||
|  |   registrySecret: ~ | ||||||
|  |  | ||||||
|  | longhornManager: | ||||||
|  |   log: | ||||||
|  |     ## Allowed values are `plain` or `json`. | ||||||
|  |     format: plain | ||||||
|  |   priorityClass: ~ | ||||||
|  |   tolerations: [] | ||||||
|  |   ## If you want to set tolerations for Longhorn Manager DaemonSet, delete the `[]` in the line above | ||||||
|  |   ## and uncomment this example block | ||||||
|  |   # - key: "key" | ||||||
|  |   #   operator: "Equal" | ||||||
|  |   #   value: "value" | ||||||
|  |   #   effect: "NoSchedule" | ||||||
|  |   nodeSelector: {} | ||||||
|  |   ## If you want to set node selector for Longhorn Manager DaemonSet, delete the `{}` in the line above | ||||||
|  |   ## and uncomment this example block | ||||||
|  |   #  label-key1: "label-value1" | ||||||
|  |   #  label-key2: "label-value2" | ||||||
|  |   serviceAnnotations: {} | ||||||
|  |   ## If you want to set annotations for the Longhorn Manager service, delete the `{}` in the line above | ||||||
|  |   ## and uncomment this example block | ||||||
|  |   #  annotation-key1: "annotation-value1" | ||||||
|  |   #  annotation-key2: "annotation-value2" | ||||||
|  |  | ||||||
|  | longhornDriver: | ||||||
|  |   priorityClass: ~ | ||||||
|  |   tolerations: [] | ||||||
|  |   ## If you want to set tolerations for Longhorn Driver Deployer Deployment, delete the `[]` in the line above | ||||||
|  |   ## and uncomment this example block | ||||||
|  |   # - key: "key" | ||||||
|  |   #   operator: "Equal" | ||||||
|  |   #   value: "value" | ||||||
|  |   #   effect: "NoSchedule" | ||||||
|  |   nodeSelector: {} | ||||||
|  |   ## If you want to set node selector for Longhorn Driver Deployer Deployment, delete the `{}` in the line above | ||||||
|  |   ## and uncomment this example block | ||||||
|  |   #  label-key1: "label-value1" | ||||||
|  |   #  label-key2: "label-value2" | ||||||
|  |  | ||||||
|  | longhornUI: | ||||||
|  |   replicas: 1 | ||||||
|  |   priorityClass: ~ | ||||||
|  |   tolerations: [] | ||||||
|  |   ## If you want to set tolerations for Longhorn UI Deployment, delete the `[]` in the line above | ||||||
|  |   ## and uncomment this example block | ||||||
|  |   # - key: "key" | ||||||
|  |   #   operator: "Equal" | ||||||
|  |   #   value: "value" | ||||||
|  |   #   effect: "NoSchedule" | ||||||
|  |   nodeSelector: {} | ||||||
|  |   ## If you want to set node selector for Longhorn UI Deployment, delete the `{}` in the line above | ||||||
|  |   ## and uncomment this example block | ||||||
|  |   #  label-key1: "label-value1" | ||||||
|  |   #  label-key2: "label-value2" | ||||||
|  |  | ||||||
|  | longhornConversionWebhook: | ||||||
|  |   replicas: 1 | ||||||
|  |   priorityClass: ~ | ||||||
|  |   tolerations: [] | ||||||
|  |   ## If you want to set tolerations for Longhorn conversion webhook Deployment, delete the `[]` in the line above | ||||||
|  |   ## and uncomment this example block | ||||||
|  |   # - key: "key" | ||||||
|  |   #   operator: "Equal" | ||||||
|  |   #   value: "value" | ||||||
|  |   #   effect: "NoSchedule" | ||||||
|  |   nodeSelector: {} | ||||||
|  |   ## If you want to set node selector for Longhorn conversion webhook Deployment, delete the `{}` in the line above | ||||||
|  |   ## and uncomment this example block | ||||||
|  |   #  label-key1: "label-value1" | ||||||
|  |   #  label-key2: "label-value2" | ||||||
|  |  | ||||||
|  | longhornAdmissionWebhook: | ||||||
|  |   replicas: 1 | ||||||
|  |   priorityClass: ~ | ||||||
|  |   tolerations: [] | ||||||
|  |   ## If you want to set tolerations for Longhorn admission webhook Deployment, delete the `[]` in the line above | ||||||
|  |   ## and uncomment this example block | ||||||
|  |   # - key: "key" | ||||||
|  |   #   operator: "Equal" | ||||||
|  |   #   value: "value" | ||||||
|  |   #   effect: "NoSchedule" | ||||||
|  |   nodeSelector: {} | ||||||
|  |   ## If you want to set node selector for Longhorn admission webhook Deployment, delete the `{}` in the line above | ||||||
|  |   ## and uncomment this example block | ||||||
|  |   #  label-key1: "label-value1" | ||||||
|  |   #  label-key2: "label-value2" | ||||||
|  |  | ||||||
|  | longhornRecoveryBackend: | ||||||
|  |   replicas: 1 | ||||||
|  |   priorityClass: ~ | ||||||
|  |   tolerations: [] | ||||||
|  |   ## If you want to set tolerations for Longhorn recovery backend Deployment, delete the `[]` in the line above | ||||||
|  |   ## and uncomment this example block | ||||||
|  |   # - key: "key" | ||||||
|  |   #   operator: "Equal" | ||||||
|  |   #   value: "value" | ||||||
|  |   #   effect: "NoSchedule" | ||||||
|  |   nodeSelector: {} | ||||||
|  |   ## If you want to set node selector for Longhorn recovery backend Deployment, delete the `{}` in the line above | ||||||
|  |   ## and uncomment this example block | ||||||
|  |   #  label-key1: "label-value1" | ||||||
|  |   #  label-key2: "label-value2" | ||||||
|  |  | ||||||
|  | ingress: | ||||||
|  |   ## Set to true to enable ingress record generation | ||||||
|  |   enabled: false | ||||||
|  |  | ||||||
|  |   ## Add ingressClassName to the Ingress | ||||||
|  |   ## Can replace the kubernetes.io/ingress.class annotation on v1.18+ | ||||||
|  |   ingressClassName: ~ | ||||||
|  |  | ||||||
|  |   host: sslip.io | ||||||
|  |  | ||||||
|  |   ## Set this to true in order to enable TLS on the ingress record | ||||||
|  |   tls: false | ||||||
|  |  | ||||||
|  |   ## Enable this in order to enable that the backend service will be connected at port 443 | ||||||
|  |   secureBackends: false | ||||||
|  |  | ||||||
|  |   ## If TLS is set to true, you must declare what secret will store the key/certificate for TLS | ||||||
|  |   tlsSecret: longhorn.local-tls | ||||||
|  |  | ||||||
|  |   ## If ingress is enabled you can set the default ingress path | ||||||
|  |   ## then you can access the UI by using the following full path {{host}}+{{path}} | ||||||
|  |   path: / | ||||||
|  |  | ||||||
|  |   ## Ingress annotations done as key:value pairs | ||||||
|  |   ## If you're using kube-lego, you will want to add: | ||||||
|  |   ## kubernetes.io/tls-acme: true | ||||||
|  |   ## | ||||||
|  |   ## For a full list of possible ingress annotations, please see | ||||||
|  |   ## ref: https://github.com/kubernetes/ingress-nginx/blob/master/docs/annotations.md | ||||||
|  |   ## | ||||||
|  |   ## If tls is set to true, annotation ingress.kubernetes.io/secure-backends: "true" will automatically be set | ||||||
|  |   annotations: | ||||||
|  |   #  kubernetes.io/ingress.class: nginx | ||||||
|  |   #  kubernetes.io/tls-acme: true | ||||||
|  |  | ||||||
|  |   secrets: | ||||||
|  |   ## If you're providing your own certificates, please use this to add the certificates as secrets | ||||||
|  |   ## key and certificate should start with -----BEGIN CERTIFICATE----- or | ||||||
|  |   ## -----BEGIN RSA PRIVATE KEY----- | ||||||
|  |   ## | ||||||
|  |   ## name should line up with a tlsSecret set further up | ||||||
|  |   ## If you're using kube-lego, this is unneeded, as it will create the secret for you if it is not set | ||||||
|  |   ## | ||||||
|  |   ## It is also possible to create and manage the certificates outside of this helm chart | ||||||
|  |   ## Please see README.md for more information | ||||||
|  |   # - name: longhorn.local-tls | ||||||
|  |   #   key: | ||||||
|  |   #   certificate: | ||||||
|  |  | ||||||
|  | #  For Kubernetes < v1.25, if your cluster enables Pod Security Policy admission controller, | ||||||
|  | #  set this to `true` to ship longhorn-psp which allow privileged Longhorn pods to start | ||||||
|  | enablePSP: false | ||||||
|  |  | ||||||
|  | ## Specify override namespace, specifically this is useful for using longhorn as sub-chart | ||||||
|  | ## and its release namespace is not the `longhorn-system` | ||||||
|  | namespaceOverride: "" | ||||||
|  |  | ||||||
|  | # Annotations to add to the Longhorn Manager DaemonSet Pods. Optional. | ||||||
|  | annotations: {} | ||||||
|  |  | ||||||
|  | serviceAccount: | ||||||
|  |   # Annotations to add to the service account | ||||||
|  |   annotations: {} | ||||||
		Reference in New Issue
	
	Block a user