forked from k-space/kube
		
	
		
			
				
	
	
		
			42 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
			
		
		
	
	
			42 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
| # Longhorn distributed block storage system
 | |
| 
 | |
| ## For users
 | |
| 
 | |
| You should really avoid using Longhorn as it has over time
 | |
| [proven to be unreliable system](https://www.reddit.com/r/kubernetes/comments/1cbggo8/longhorn_is_unreliable/).
 | |
| Prefer using remote databases in your application via
 | |
| the Kubernetes operator pattern.
 | |
| 
 | |
| Use Longhorn for applications that need persistent storage, but are unable
 | |
| to provide replication in the application layer:
 | |
| 
 | |
| * Applications that insist writing into filesystem
 | |
| * Applications that serve Git repositories (eg Gitea)
 | |
| * Applications that check out Git repositories (eg Woodpecker, Drone and CI systems)
 | |
| * Applications that need to use SQLite
 | |
| 
 | |
| Instead of using built-in `longhorn` storage class, please add new storage class
 | |
| with suitable replication, data locality parameters and reclaim policy
 | |
| [here](https://git.k-space.ee/k-space/kube/src/branch/master/storage-class.yaml)
 | |
| 
 | |
| Longhorn backups are made once per day and it's configured to be uploaded to
 | |
| the Minio S3 bucket hosted at nas.k-space.ee
 | |
| 
 | |
| 
 | |
| ## For administrators
 | |
| 
 | |
| Longhorn was last upgraded with following snippet:
 | |
| 
 | |
| ```
 | |
| wget https://raw.githubusercontent.com/longhorn/longhorn/v1.6.2/deploy/longhorn.yaml
 | |
| patch -p0 < changes.diff
 | |
| kubectl -n longhorn-system apply -f longhorn.yml -f application-extras.yml -f backup.yaml
 | |
| ```
 | |
| 
 | |
| After initial deployment `dedicated=storage:NoSchedule` was specified
 | |
| for `Kubernetes Taint Toleration` under `Setting -> General` on
 | |
| [Longhorn Dashboard](https://longhorn.k-space.ee/).
 | |
| Suitable nodes were tagged with  `storage` and Longhorn scheduling was disabled on others.
 | |
| This is to prevent scheduling Longhorn data on arbitrary Kubernetes nodes as
 | |
| `storage[1-4].kube.k-space.ee` nodes are the ones which have additional 200G volume mounted at `/mnt/persistent/`
 |