Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/kubermatic/kubermatic
Kubermatic Kubernetes Platform - the Central Kubernetes Management Platform For Any Infrastructure
https://github.com/kubermatic/kubermatic
cluster-api kubermatic-kubernetes-platform kubernetes
Last synced: 21 days ago
JSON representation
Kubermatic Kubernetes Platform - the Central Kubernetes Management Platform For Any Infrastructure
- Host: GitHub
- URL: https://github.com/kubermatic/kubermatic
- Owner: kubermatic
- License: other
- Created: 2016-01-30T17:05:09.000Z (almost 9 years ago)
- Default Branch: main
- Last Pushed: 2024-04-12T15:42:31.000Z (7 months ago)
- Last Synced: 2024-04-13T21:51:15.271Z (7 months ago)
- Topics: cluster-api, kubermatic-kubernetes-platform, kubernetes
- Language: Go
- Homepage: https://www.kubermatic.com
- Size: 160 MB
- Stars: 1,026
- Watchers: 19
- Forks: 153
- Open Issues: 274
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
Awesome Lists containing this project
- awesome-ccamel - kubermatic/kubermatic - Kubermatic Kubernetes Platform - the Central Kubernetes Management Platform For Any Infrastructure (Go)
- awesome-repositories - kubermatic/kubermatic - Kubermatic Kubernetes Platform - the Central Kubernetes Management Platform For Any Infrastructure (Go)
- awesome-starts - kubermatic/kubermatic - Kubermatic Kubernetes Platform - the Central Kubernetes Management Platform For Any Infrastructure (Go)
- awesome-cloud-native - kubermatic - The Central Kubernetes Management Platform For Any Infrastructure. (Cluster)
- awesome-starred - kubermatic/kubermatic - Kubermatic Kubernetes Platform - the Central Kubernetes Management Platform For Any Infrastructure (kubernetes)
README
## Overview / User Guides
Kubermatic Kubernetes Platform is in an open source project to centrally manage the global automation of thousands of Kubernetes clusters across multicloud, on-prem and edge with unparalleled density and resilience.
All user documentation is available at the [Kubermatic Kubernetes Platform docs website][21].
## Editions
There are two editions of Kubermatic Kubernetes Platform:
Kubermatic Kubernetes Platform Community Edition (CE) is available freely under the Apache License, Version 2.0.
Kubermatic Kubernetes Platform Enterprise Edition (EE) includes premium features that are most useful for organizations with large-scale Kubernetes installations with more than 50 clusters. To access the Enterprise Edition and get official support please become a subscriber.## Licensing
See the [LICENSE](LICENSE) file for licensing information as it pertains to files in this repository.
## Installation
We strongly recommend that you use an official release of Kubermatic Kubernetes Platform. Follow the instructions under the **Installation** section of [our documentation][21] to get started.
_The code and sample YAML files in the main branch of the kubermatic repository are under active development and are not guaranteed to be stable. Use them at your own risk!_
## More information
[The documentation][21] provides a getting started guide, plus information about building from source, architecture, extending kubermatic, and more.
Please use the version selector at the top of the site to ensure you are using the appropriate documentation for your version of kubermatic.
## Troubleshooting
If you encounter issues [file an issue][1] or talk to us on the [#kubermatic channel][12] on the [Kubermatic Community Slack][15] ([click here to join][16]).
## Contributing
Thanks for taking the time to join our community and start contributing!
### Before you start
* Please familiarize yourself with the [Code of Conduct][4] before contributing.
* See [CONTRIBUTING.md][2] for instructions on the developer certificate of origin that we require.### Repository layout
```
├── addons # Default Kubernetes addons
├── charts # The Helm charts we use to deploy
├── cmd # Various Kubermatic binaries for the controller-managers, operator etc.
├── codegen # Helper programs to generate Go code and Helm charts
├── docs # Some basic developer-oriented documentation
├── hack # scripts for development and CI
└── pkg # most of the actual codebase
```### Development environment
```bash
git clone [email protected]:kubermatic/kubermatic.git
cd kubermatic
```There are a couple of scripts in the `hacks` directory to aid in running the components locally
for testing purposes.#### Running components locally
##### user-cluster-controller-manager
In order to instrument the seed-controller to allow for a local user-cluster-controller-manager, you need to add a `worker-name` label with your local machine's name as its value. Additionally, you need to scale down the already running deployment.
```sh
# Using a kubeconfig, which points to the seed-cluster
export cluster_id=""
kubectl label cluster ${cluster_id} worker-name=$(uname -n)
kubectl scale deployment -n cluster-${cluster_id} usercluster-controller --replicas=0
```Afterwards, you can start your local user-cluster-controller-manager.
```sh
# Using a kubeconfig, which points to the seed-cluster
./hack/run-user-cluster-controller-manager.sh
```##### seed-controller-manager
```bash
./hack/run-seed-controller-manager.sh
```##### master-controller-manager
```bash
./hack/run-master-controller-manager.sh
```#### Run linters
Before every push, make sure you run:
```bash
make lint
```
#### Run tests```bash
make test
```#### Update code generation
The Kubernetes code-generator tool does not work outside of `GOPATH`
([upstream issue](https://github.com/kubernetes/kubernetes/issues/86753)), so the script
below will automatically run the code generation in a Docker container.```bash
hack/update-codegen.sh
```### Pull requests
* We welcome pull requests. Feel free to dig through the [issues][1] and jump in.
## Changelog
See [the list of releases][3] to find out about feature changes.
[1]: https://github.com/kubermatic/kubermatic/issues
[2]: https://github.com/kubermatic/kubermatic/blob/main/CONTRIBUTING.md
[3]: https://github.com/kubermatic/kubermatic/releases
[4]: https://github.com/kubermatic/kubermatic/blob/main/CODE_OF_CONDUCT.md[12]: https://kubermatic-community.slack.com/messages/kubermatic
[15]: http://kubermatic-community.slack.com
[16]: https://join.slack.com/t/kubermatic-community/shared_invite/zt-vqjjqnza-dDw8BuUm3HvD4VGrVQ_ptw[21]: https://docs.kubermatic.com/kubermatic/