Kubernetes Development Kit (KDK)
This Quickstart assumes that you have installed all of the dependencies.
Mac and Linux
curl -sSL https://raw.githubusercontent.com/cisco-sso/kdk/master/files/install | bash kdk init && kdk ssh
Please use Windows10 powershell for installation.
Set-ExecutionPolicy Bypass -Scope Process -Force iex ((New-Object System.Net.WebClient).DownloadString('https://raw.githubusercontent.com/cisco-sso/kdk/master/files/install.ps1')) kdk init ; kdk ssh
NOTE: After installation, Windows CMD prompt will work. The KDK has not been tested with Cygwin, Mingw, or Windows Subsystem for Linux.
Detailed installation instructions of the KDK along with all of its dependencies are found here:
The kdk repository may be used to create a docker container with all of the tools that one would typically use in order to develop and operate kubernetes clusters.
Getting setup to create and operate a Kubernetes cluster in AWS, Openstack, or even locally may be painful because a user may be running Windows10 or OSX, and one must configure 20+ tools for cluster automation to work effectively. We've created a Docker Image to enable every one of us to work in the same environment, with the same tools, at the same versions.
Tools include: docker, kubectl, helm, multihelm, kops, terraform, ansible, minio-cli, aws-cli, direnv, golang, git, vi/vim, emacs, python 2/3, jq, zsh, helm-s3, kafkacat, dig, ssh-keygen, gitslave, dep, gomplate, minikube, awscli, docker-compose, neutronclient, openstackclient, supernova, virtualenv, yq, colordiff, nmap, screen, tmux, yadm, and many others.
- Some example use cases include:
- Operating Kubernetes clusters.
- Deploying Kubernetes clusters to AWS using
- Developing and applying Helm Charts and mh Apps.
- Developing docker containers.
- Create or re-create the config
- Connect or reconnect to the KDK (will pull and start container if necessary)
- Destroy the KDK
- Update the KDK (binary, config, and container)
Running Multiple KDK Containers
You might have a need to run multiple KDK containers. The KDK CLI can do that!
- Create a new KDK config
- NOTE: name parameter must be unique (no other container can have this name)
kdk init --name kdk1
- Connect to
kdk ssh --name kdk1
NOTE: There are many configuration options available in
kdk init --help for details