/ksctl

A Simple Multi-Environment Kubernetes management CLI tool

Primary LanguageGoApache License 2.0Apache-2.0

ksctl

A Kubernetes Distribution that can create clusters as well as high-availability clusters locally as well as on cloud platforms

Prerequisites

  • Docker installed (if using docker container to run the CLI and for Local clusters)

Supported Platforms

Platform Status
Linux ✔️
macOS ✔️
Windows ✔️

Project Scope

Many cloud providers offer their flavor of Kubernetes. Each provider has its unique CLI tool which is used to create and manage clusters on that particular cloud. When working in a multi-cloud environment, it can get difficult to create and manage so many clusters. ksctl is a single CLI tool that can interact with a multitude of cloud providers, making it easy for you to manage multi-cloud clusters, with just a single CLI tool. Currently, we support Civo and Local clusters.

You can also use ksctl to create clusters locally using docker.

Contribution Guidelines

Please refer to our contribution guide if you wish to contribute to the project 😄

Software Requirement Specification Docs

Google Doc Link

Demo Screenshot

Setup CLI

Linux

Install

make install_linux

macOS

Install

# macOS on M1
make install_macos

# macOS on INTEL
make install_macos_intel

Uninstall

make uninstall

Windows

Install

./install.ps1

Uninstall

./uninstall.ps1

Usage

Please refer to the usage guide to know how you can use ksctl

RoadMap

Legends


DONE -> GREEN

NOT STARTED -> RED

NO PLANS -> BLACK

BACKLOG -> BLUE


flowchart LR;
  classDef green color:#022e1f,fill:#00f500;
  classDef red color:#022e1f,fill:#f11111;
  classDef white color:#022e1f,fill:#fff;
  classDef black color:#fff,fill:#000;
  classDef blue color:#fff,fill:#00f;

  XX[CLI]:::white--providers-->web{API};
  web:::white--CIVO-->civo{Types};
  civo:::green--managed-->civom[Create & Delete]:::green;
  civo--HA-->civoha[Create & Delete]:::green;

  web--LOCAL-->local{Types};
  local:::green--managed-->localm[Create & Delete]:::green;
  local--HA-->localha[Create & Delete]:::black;

  web--EKS-->aws{Types};
  aws:::blue--managed-->awsm[Create & Delete]:::red;
  aws--HA-->awsha[Create & Delete]:::red;
  
  web--AKS-->az{Types};
  az:::blue--managed-->azsm[Create & Delete]:::red;
  az--HA-->azha[Create & Delete]:::red;

Loading