Giter VIP home page Giter VIP logo

kubecarrier's Introduction

KubeCarrier


KubeCarrier is an open source system for managing applications and services across multiple Kubernetes Clusters; providing a framework to centralize the management of services and provide these services with external users in a self service hub.



Project Status

KubeCarrier is currently in early development and is not ready for production use, the APIs are not yet final and breaking changes might be introduced in every release.

Features

  • Cross Cluster Management of CRD instances
  • Service Hub
  • Multi Tenancy
  • Account Management
  • Integration with any existing operator

Documentation

KubeCarrier is documented on docs.kubermatic.io alongside our other open source projects.

Troubleshooting

If you encounter issues file an issue or talk to us on the #kubecarrier channel on the Kubermatic Slack.

Contributing

Thanks for taking the time to join our community and start contributing! Feedback and discussion are available on the mailing list.

Before you start

  • Please familiarize yourself with the Code of Conduct before contributing.
  • See CONTRIBUTING.md for instructions on the developer certificate of origin that we require.

Pull requests

  • We welcome pull requests. Feel free to dig through the issues and jump in.

FAQ

What`s the difference to OLM / Crossplane?

The Operator Lifecycle Manager from RedHat and Crossplane are both projects that manage installation, upgrade and deletion of Operators and their CustomResourceDefinitions in a Kubernetes cluster.

KubeCarrier on the other hand is just working with existing CustomResourceDefinitions and already installed Operators. As both OLM and Crossplane are driven by CRDs, they can be combined with KubeCarrier to manage their configuration across clusters.

What`s the difference to KubeFed - Kubernetes Federation?

The Kubernetes Federation Project was created to distribute Workload across Kubernetes Clusters for e.g. geo-replication and disaster recovery. It's intentionally low-level to work for generic workload to be spread across clusters.

While KubeCarrier is also operating on multiple clusters, KubeCarrier operates on a higher abstraction level. KubeCarrier assigns applications onto single pre-determined Kubernetes clusters. Kubernetes Operators that enable these applications, may still use KubeFed underneath to spread the workload across clusters.

Changelog

See the list of releases to find out about feature changes.

Roadmap

v0.4 - Enhance Core Features

Region API Aggregation Provide a single API to access and work with the object across multiple regions

Project Bulward Integration Advanced multi-tenancy on Kubernetes. Enable the management of custom sub-roles for KubeCarrier Account.

v0.5 - Integrations

Client Operator Kubernetes Operator to enable the provisioning of new services, provided with KubeCarrier from within your own client Kubernetes cluster.

Secret Management Credential propagation mechanism to utilize Kubernetes Secrets.

Service Groups Combine multiple related APIs e.g.(EtcdClusters, EtcdBackups, EtcdRestores) into a group for easier discovery.

v0.x - Ease of Use

Audit Logging Multi-Tenancy audit logging within KubeCarrier.

UI TBD

kubecarrier's People

Contributors

aborilov avatar jiachengxu avatar nmiculinic avatar thetechnick avatar xrstf avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.