Cluster Manager
Cluster Manager manages the life cycle of Kubernetes clusters from different cloud providers.
Before You Begin
Cluster Manager supports provisioning, scaling up, scaling down and shutting down of Kubernetes clusters on various
cloud providers. Currently AWS and Oracle Wercker Clusters are supported. Support for more providers will be added in
the near future
The Cluster Manager supports the following operations on clusters:
- Provisioning: Cluster Manager can create creates a new Kubernetes cluster on a cloud provider.
- Scale Up: Cluster Manager can scale up nodes on a currently provisioned cluster on any supported cloud provider
- Scale Down: Cluster Manager can scale down nodes on a currently provisioned cluster on any supported cloud provider
- Shutdown: Cluster Manager can shutdown a currently provisioned cluster on any supported cloud provider
Cluster Manager may be used in tandem with Navarkos
to help scale out deployments to various cloud providers.
Figure:1 cluster-manager with Navarkos Architecture
Deploy
Please refer to Deployment README.md on how to deploy Cluster Manager and use it provision and
managed clusters
Build
Contributions to this code are welcome! The code in this repository can be built and tested using the Makefile.
Requirements
Cluster Manager build has been currently tested with go version 1.8.x
Clone Repository
Clone the source to a local repository
export K8S_INCUBATOR_DIR="$GOPATH/src/github.com/kubernetes-incubator"
mkdir -p $K8S_INCUBATOR_DIR
cd $K8S_INCUBATOR_DIR
git clone https://github.com/oracle/cluster-manager
Build Project
Project Makefile supports the following targets
make build-local
- cleans up and build Cluster Manager binary.
make build-image
- invokes 'build-local' defined above followed by building Cluster Manager docker image.
make build-docker
- cleans up and build docker image of Cluster Manager using docker multi-stage build.
make push-image
- pushes an already create Cluster Manager docker image to registry of choice. Use ${DOCKER_REGISTRY} environment variable to specify the registry.
make build-push-image
- cleans up, build and push Cluster Manager docker image to a registry of choice. Use ${DOCKER_REGISTRY} environment variable to specify the registry,
Please refer to RELEASE.md about the process of release of this project
Community, discussion, contribution, and support
Learn how to engage with the Kubernetes community on the community page.
You can reach the maintainers of this project at:
Please refer to CONTRIBUTING.md on how to contribute to the project
Kubernetes Incubator - Pending proposal
This is a Kubernetes Incubator project. The project was established 2017-12-08. The incubator team for the project is:
- Sponsor: tbd
- Champion: tbd
- SIG:
sig-multicluster tbd
Code of conduct
Participation in the Kubernetes community is governed by the Kubernetes Code of Conduct.
(Optional) Authors - Kubernetes authors
See also the list of contributors who participated in this project.