/longhorn

Cloud-Native distributed storage built on and for Kubernetes

Primary LanguageShellApache License 2.0Apache-2.0

Longhorn

Longhorn is a distributed block storage system for Kubernetes. Longhorn is cloud native storage because it is built using Kubernetes and container primitives.

Longhorn is lightweight, reliable, and powerful. You can install Longhorn on an existing Kubernetes cluster with one kubectl apply command or using Helm charts. Once Longhorn is installed, it adds persistent volume support to the Kubernetes cluster.

Longhorn implements distributed block storage using containers and microservices. Longhorn creates a dedicated storage controller for each block device volume and synchronously replicates the volume across multiple replicas stored on multiple nodes. The storage controller and replicas are themselves orchestrated using Kubernetes. Here are some notable features of Longhorn:

  1. Enterprise-grade distributed storage with no single point of failure
  2. Incremental snapshot of block storage
  3. Backup to secondary storage (NFSv4 or S3-compatible object storage) built on efficient change block detection
  4. Recurring snapshot and backup
  5. Automated non-disruptive upgrade. You can upgrade the entire Longhorn software stack without disrupting running volumes!
  6. Intuitive GUI dashboard

You can read more technical details of Longhorn here.

Current Status

The latest release of Longhorn is Releases

Build Status

  • Engine: Build StatusGo Report CardFOSSA Status
  • Manager: Build StatusGo Report CardFOSSA Status
  • Instance Manager: Build StatusGo Report CardFOSSA Status
  • Share Manager: Build StatusGo Report CardFOSSA Status
  • Backing Image Manager: Build StatusGo Report CardFOSSA Status
  • UI: Build StatusFOSSA Status
  • Test: Build Status

Release Status

Release Version Type
1.2 1.2.3 Stable, Latest
1.1 1.1.3 Stable, Latest

Get Involved

Community Meeting and Office Hours

Hosted by the core maintainers of Longhorn: 4th Friday of the every month at 09:00 (CET) or 16:00 (CST) at https://community.cncf.io/longhorn-community/.

Longhorn Mailing List

Stay up to date on the latest news and events: https://lists.cncf.io/g/cncf-longhorn

You can read more about the community and its events here: https://github.com/longhorn/community

Source code

Longhorn is 100% open source software. Project source code is spread across a number of repos:

Component What it does GitHub repo
Longhorn Backing Image Manager Backing image download, sync, and deletion in a disk longhorn/backing-image-manager
Longhorn Engine Core controller/replica logic longhorn/longhorn-engine
Longhorn Instance Manager Controller/replica instance lifecycle management longhorn/longhorn-instance-manager
Longhorn Manager Longhorn orchestration, includes CSI driver for Kubernetes longhorn/longhorn-manager
Longhorn Share Manager NFS provisioner that exposes Longhorn volumes as ReadWriteMany volumes longhorn/longhorn-share-manager
Longhorn UI The Longhorn dashboard longhorn/longhorn-ui

Longhorn UI

Requirements

For the installation requirements, refer to the Longhorn documentation.

Installation

Longhorn can be installed on a Kubernetes cluster in several ways:

Documentation

The official Longhorn documentation is here.

Community

Longhorn is open source software, so contributions are greatly welcome. Please read Code of Conduct and Contributing Guideline before contributing.

Contributing code is not the only way of contributing. We value feedbacks very much and many of the Longhorn features are originated from users' feedback. If you have any feedbacks, feel free to file an issue and talk to the developers at the CNCF #longhorn Slack channel.

If having any discussion, feedbacks, requests, issues or security reports, please follow below ways. We also have a CNCF Slack channel: longhorn for discussion.

Discussions or Feedbacks

If having any discussions or feedbacks, feel free to file a discussion.

Requests or Issues

If having any issues, feel free to file an issue. We have a weekly community issue review meeting to review all reported issues or enhancement requests.

When creating a bug issue, please help upload the support bundle to the issue or send to longhorn-support-bundle.

Report Vulnerabilities

If having any vulnerabilities found, please report to longhorn-security.

License

Copyright (c) 2014-2021 The Longhorn Authors

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

Longhorn is a CNCF Incubating Project