• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

pulumi/kubespy: Tools for observing Kubernetes resources in real time, powered b ...

原作者: [db:作者] 来自: 网络 收藏 邀请

开源软件名称(OpenSource Name):

pulumi/kubespy

开源软件地址(OpenSource Url):

https://github.com/pulumi/kubespy

开源编程语言(OpenSource Language):

Go 99.3%

开源软件介绍(OpenSource Introduction):

kubespy: tools for observing Kubernetes resources in real time

What happens when you boot up a Pod? What happens to a Service before it is allocated a public IP address? How often is a Deployment's status changing?

kubespy is a small tool that makes it easy to observe how Kubernetes resources change in real time, derived from the work we did to make Kubernetes deployments predictable in Pulumi's CLI. Run kubespy at any point in time, and it will watch and report information about a Kubernetes resource continuously until you kill it.

Examples

kubespy trace deployment nginx will "trace" the complex changes a complex Kubernetes resource makes in the cluster (in this case, a Deployment called nginx), and aggregate them into a high-level summary, which is updated in real time.

Changes

kubespy status v1 Pod nginx will wait for a Pod called nginx to be created, and then continuously emit changes made to its .status field, as syntax-highlighted JSON diffs:

Changes

Installation

You can install kubespy in the following ways:

Homebrew (Mac)

Prerequisite: homebrew

brew install kubespy

Binary

Get the latest release, rename it to kubespy, run chmod +x kubespy to make it executable and move it in your path (can be /usr/local/bin).

Kubectl Plugin

Prerequisite: kubectl v1.12.0 or later

With kubectl v1.12.0 introducing easy pluggability of external functions, kubespy can be invoked as kubectl spy just by renaming it to kubectl-spy and having it available in your path.

via Golang

Prerequisite: Go version 1.11 or later

kubespy can be installed via golang by running the following:

git clone [email protected]:pulumi/kubespy.git
cd kubespy
# If $GOPATH is not set, you can run `go build` instead, and then put in a
# binary directory on your path
GO111MODULE=on go install

Usage

kubespy has three commands:

  • status <apiVersion> <kind> [<namespace>/]<name>, which in real time emits all changes made to the .status field of an arbitrary Kubernetes resource, as a JSON diff.
  • changes <apiVersion> <kind> [<namespace>/]<name>, which in real time emits all changes to any field in a Kubernetes resource, as a JSON diff.
  • trace <kind> [<namespace>/]<name>, which "traces" the changes a complex Kubernetes resource makes throughout a cluster, and aggregates them into a high-level summary, which is updated in real time.

Several more commands are planned as well.

Examples

For a concrete example you can run using either Pulumi CLI or kubectl, check out examples/trivial-pulumi-example.

Features

  • Supports any resources the API server knows about, including CRDs (i.e., uses the discovery client to discover the available API resources, and allows users to query any of them).
  • Displays changes to API objects in real time.
  • Supports case-insensitive aliases (e.g. kubespy status v1 pod <name> instead of kubespy status v1 Pod <name>).
  • Supports status updates from regex and/or fuzzy matching (i.e., make it easy to watch the status of Pods generated by Deployments and ReplicaSets).



鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap