diff --git a/README.md b/README.md index 14f7621..f3f13c5 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,17 @@ # cctl -CLI tool for Kubernetes cluster management. This tool lets you create, scale, backup and restore your air-gapped, on-premise Kubernetes cluster. +cctl is a cluster lifecycle management tool that adopts the Kubernetes community's Cluster API and uses nodeadm and etcdadm to easily deploy and maintain highly-available Kubernetes clusters in on-premises, even air-gapped environments. + +Along with [etcdadm](https://github.com/kubernetes-sigs/etcdadm) and [nodeadm](https://github.com/platform9/nodeadm), this tool makes up _klusterkit_, which lets you create, scale, backup and restore your air-gapped, on-premise Kubernetes cluster. + +## Features +* Highly-available Kubernetes control plane and etcd +* Deploy & manage secure etcd clusters +* Works in air-gapped environments +* Rolling upgrade support with rollback capability +* Flannel (vxlan) CNI backend with plans to support other CNI backends +* Backup & recovery of etcd clusters from quorum loss +* Control plane protection from low memory/cpu situations ## Installation ``` @@ -30,6 +41,8 @@ $GOPATH/bin/cctl [command] ## Getting Started +If your setup has internet connectivity, follow these steps. For an airgapped environment, please see documentation [wiki](https://github.com/platform9/cctl/wiki). + Ensure the correct version of the `nodeadm` and `etcdadm` binaries are placed in the `/opt/bin` directory of all nodes that will make up your cluster. First, create the credentials used for the cluster. @@ -47,3 +60,5 @@ Finally, create the first machine in your cluster. $GOPATH/bin/cctl create machine --ip $MACHINE_IP --role master ``` + +#### For detailed documentation see [wiki](https://github.com/platform9/cctl/wiki)