Last.Backend container management platform is the new and modern open-source container management system with service discovery, overlay networks and more..
- About
- Key Features
- Runtime design principles
- Endpoint Interface
- Current State
- How to get started
- Maintainers
- Roadmap
- Community
- Authors
- License
Container platform is an open-source system for automating deployment, scaling, and management of containerized applications. It contains a set of technologies like: container scheduling, service discovery, overlay network, container runtime, container images runtime, load-balancing and more. All of these technologies provided out of the box and don't requiring additional research and setup.
Platform structure:
- REST API server
- State controller
- Resources Scheduler
- Node agent
- Service discovery
- Ingress proxy
- Log collector
- IPVS-based load-balancer
- VxLAN-based overlay network
- Storage runtime driver
- Container runtime
- Container images runtime
- Fast application deploying to any server
- Easy application sharing
- Easy application management
- Deploying application by url
- Deploying scheduling
- Deploying stateful services.
- Developer-friendly CLI
Our design principles allows us to create extendable and powerful system. We separated runtime into particular package and use interfaces to add ability to extend supported technologies. By default Last.Backend operate with this runtimes:
- CRI - container runtime interface: docker by default
- CII - container image interface: docker by default
- CSI - container storage interface: host directory by default
- CNI - container network interface: vxlan by default
- CPI - container proxy interface: IPVS by default
All these runtimes are documented in runtime section, where are described all methods, types and algorithms.
The main endpoint to manage cluster is REST API interface.
Our team use swagger for generation API documentation. To create swagger spec, just execute make swagger-spec
command in root of repository.
You can use REST API in these options:
- directly with CURL or another apps
- using Last.Backend CLI (located in separate repo lastbackend/cli)
- for building custom go apps - you can use golang client located in
pgk/api/client
package
Current version is in public beta stage and include:
- cluster management
- node management
- overlay network based on vxlan
- internal endpoints for pods balancing based on IPVS
- ingress server based on haproxy
- internal discovery server
- services management with basic blue/green deployments
- volumes management
All of these functionality is under active test now, so don't surprised by frequent PRs please.
Join us in Gitter This project has Roadmap, feel free to offer your features.
We are actively searching for contributors! If you want to help our project and to make developers life easier, please read our Contibuting guideliness.
If you want to dive into project, the best place to start - is our documentation.
We have separated maintainers page
Note: Last.Backend is under active development stage and our team is working day and night to make it better. Your suggestions, comments and contributions will be very helpful for us!
For details on our planned features and future direction please refer to our roadmap.
Join us on social media:
The repository is owned by Last.Backend LLC company.
The main contributors are:
- Alexander: https://github.com/undassa
- Konstantin: https://github.com/unloop
Origin is licensed under the Apache License, Version 2.0.