Coder Social home page Coder Social logo

k9s's Introduction

K9s - Kubernetes CLI To Manage Your Clusters In Style!

K9s provides a curses based terminal UI to interact with your Kubernetes clusters. The aim of this project is to make it easier to navigate, observe and manage your applications in the wild. K9s continually watches Kubernetes for changes and offers subsequent commands to interact with observed resources.


Go Report Card Build Status release


Installation

K9s is available on Linux, OSX and Windows platforms.

  • Binaries for Linux, Windows and Mac are available as tarballs in the release page.

  • For OSX using Homebrew

    brew tap derailed/k9s && brew install k9s
  • Building from source K9s was built using go 1.11 or above. In order to build K9 from source you must:

    1. Clone the repo

    2. Set env var GO111MODULE=on

    3. Add the following command in your go.mod file

      replace (
       github.com/derailed/k9s => MY_K9S_CLONED_GIT_REPO
      )
      
    4. Build and run the executable

      go run main.go

The Command Line

# List all available CLI options
k9s -h
# To get info about K9s runtime (logs, configs, etc..)
k9s info
# To run K9s in a given namespace
k9s -n mybitchns
# Start K9s in an existing KubeConfig context
k9s --context coolCtx

PreFlight Checks

  • K9s uses 256 colors terminal mode. On `Nix system make sure TERM is set accordingly.

    export TERM=xterm-256color

K9s config file ($HOME/.k9s/config.yml)

K9s keeps its configurations in a dot file in your home directory.

NOTE: This is still in flux and will change while in pre-release stage!

k9s:
  refreshRate: 2
  logBufferSize: 200
  currentContext: minikube
  currentCluster: minikube
  clusters:
    bitchn:
      namespace:
        active: coolio
        favorites:
        - cassandra
        - default
      view:
        active: po
    minikube:
      namespace:
        active: all
        favorites:
        - all
        - kube-system
        - default
      view:
        active: dp

Key Bindings

K9s uses aliases to navigate most K8s resources.

Command Result Example
:alias<ENTER> View a Kubernetes resource :po<ENTER>
'?' Show all command aliases select+ to view
/filterENTER> Filter out a resource view given a filter /bumblebeetuna
<Esc> Bails out of command mode
d,v, e, l,... Key mapping to describe, view, edit, view logs,... d (describes a resource)
:ctx<ENTER> To view and switch to another Kubernetes context :+ctx+<ENTER>
q, Ctrl-c To bail out of K9s

Demo Video

  1. K9s Demo

Screenshots

  1. Pods
  2. Logs
  3. Deployments

Known Issues

This initial drop is brittle. K9s will most likely blow up if...

  1. You don't have enough RBAC fu to manage your cluster
  2. Your cluster does not run a metric server.

Disclaimer

This is still work in progress! If there is enough interest in the Kubernetes community, we will enhance per your recommendations/contributions. Also if you dig this effort, please let us know that too!


ATTA Girls/Boys!

K9s sits on top of many of opensource projects and libraries. Our sincere appreciations to all the OSS contributors that work nights and weekends to make this project a reality!


Contact Info

  1. Email: [email protected]
  2. Twitter: @kitesurfer

ยฉ 2018 Imhotep Software LLC. All materials licensed under Apache v2.0

k9s's People

Contributors

derailed avatar akumria avatar orthros avatar cmattoon avatar saromanov avatar snakel avatar d-kuro avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.