Coder Social home page Coder Social logo

kubectl-sick-pods's Introduction

kubectl-sick-pods

GitHub Release

kubectl plugins for diagnosing Pods.

The idea for these plugins has been shamelessly stolen from Melanie Cebula's QCOn London Talk and enhanced to be slightly less opinionated.

This plugin helps find and debug Kubernetes Pods that are "Not Ready" (that have failing Pod Conditions or Containers)

This plugin also supports the standard Pod selection arguments as well as one or multiple pod names to explicitly diagnose.

Installation

Using krew

kubectl krew install sick-pods

Manually for Mac / Linux

curl -sL https://raw.githubusercontent.com/alecjacobs5401/kubectl-sick-pods/master/install.sh | sh -s

Manually for Windows

Download Windows binaries from releases

Upgrading

Using krew

kubectl krew upgrade sick-pods

Manually

See installation.

Usage

kubectl sick-pods

usage: kubectl sick-pods [<flags>] [<pod>...]

A kubectl plugin used to find Pods that are in a 'NotReady' state and display debugging information about them

Flags:
  -h, --help                   Show context-sensitive help (also try --help-long and --help-man).
      --version                Show application version.
  -l, --selector=SELECTOR      Pod Selector (label query) to filter on, supports '=', '==', and '!='.(e.g. -l key1=value1,key2=value2)
      --field-selector=FIELD-SELECTOR
                               Pod Selector (field query) to filter on, supports '=', '==', and '!='.(e.g. --field-selector key1=value1,key2=value2). The server only supports a limited number of field queries per type.
      --kubeconfig=KUBECONFIG  The path to a pre-existing kubeconfig file that you want to have the new cluster authorization merged into. If not provided, the KUBECONFIG environment variable will be checked for a file. If that is empty, $HOME/.kube/config will be used.
  -n, --namespace=NAMESPACE    The Kubernetes namespace to use. Default to the current namespace in your kube config file.
      --context=CONTEXT        The Kubernetes context to use. Defaults to the current context in your kube config file.

Args:
  [<pod>]  A pod name to target (Accepts multiple pod names)

Example Usages

Without Arguments / Flags

$ kubectl sick-pods
'bad-pod-764ccf854d-kbsq2' is not ready! Reason Provided: None
	Failed Pod Conditions:
		CONDITION	    REASON		MESSAGE
		Ready		    ContainersNotReady	containers with unready status: [bad-container]
		ContainersReady	    ContainersNotReady	containers with unready status: [bad-container]

	Pod Events:
		LAST SEEN			TYPE	REASON			MESSAGE
		2020-05-29 14:15:32 -0700 PDT	Warning	DNSConfigForming	Search Line limits were exceeded, some search paths have been omitted, the applied search line is: some-namespace.svc.cluster.local svc.cluster.local cluster.local ec2.internal cluster-dns dns

	Container 'bad-container' is not ready!
		Container Logs:
			-e:1:in `<main>': ah (RuntimeError)
			yo

With provided pod names

kubectl sick-pods pod-abc-123 pod-def-456

Looking for kubectl-podevents?

kubectl-podevents has been migrated to its own repository

kubectl-sick-pods's People

Contributors

alecjacobs5401 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.