内容简介:Kubedog CLI 有两个功能:在 Kubernetes 上运行应用时,通常的做法是使用
Kubedog 是一个开源的 Golang 项目,使用 watch 方式对 Kubernetes 资源进行跟踪,能够方便的用于日常运维和 CI/CD 过程之中,项目中除了一个 CLI 小 工具 之外,还提供了一组 SDK,用户可以将其中的 Watch 功能集成到自己的系统之中。安装过程非常简单,在项目网页直接下载即可。
Kubedog CLI 有两个功能: rollout track
和 follow
。
rollout track
在 Kubernetes 上运行应用时,通常的做法是使用 kubectl apply
提交 YAML 之后,使用 kubectl get -w
或者 watch kubectl get
之类的命令等待 Pod 启动。如果启动成功,则进行测试等后续动作;如果启动失败,就需要用 kubectl logs
、 kubectl describe
等命令来查看失败原因。kubedog 能在一定程度上简化这一过程。
例如使用 kubectl run
命令创建一个新的 Deployment 资源,并使用 kubedog
跟进创建进程:
$ kubectl run nginx --image=nginx22 ... deployment.apps/nginx created $ kubedog rollout track deployment nginx # deploy/nginx added # deploy/nginx rs/nginx-6cc78cbf64 added # deploy/nginx po/nginx-6cc78cbf64-8pnjz added # deploy/nginx po/nginx-6cc78cbf64-8pnjz nginx error: ImagePullBackOff: Back-off pulling image "nginx22" deploy/nginx po/nginx-6cc78cbf64-8pnjz nginx failed: ImagePullBackOff: Back-off pulling image "nginx22" $ echo $? 130
很方便的看出,运行失败的状态及其原因,并且可以使用返回码来进行判断,方便在 Pipeline 中的运行。接下来可以使用 kubectl edit
命令编辑 Deployment,修改正确的镜像名称。然后再次进行验证:
$ kubectl edit deployment nginx deployment.extensions/nginx edited $ kubedog rollout track deployment nginx # deploy/nginx added # deploy/nginx rs/nginx-dbddb74b8 added # deploy/nginx po/nginx-dbddb74b8-x4nkm added # deploy/nginx event: po/nginx-dbddb74b8-x4nkm Pulled: Successfully pulled image "nginx" # deploy/nginx event: po/nginx-dbddb74b8-x4nkm Created: Created container # deploy/nginx event: po/nginx-dbddb74b8-x4nkm Started: Started container # deploy/nginx event: ScalingReplicaSet: Scaled down replica set nginx-6cc78cbf64 to 0 # deploy/nginx become READY $ echo $? 0
修改完成,重新运行 kubedog,会看到成功运行的情况,并且返回值也变成了 0。
follow
follow 命令的功能和 kubetail 的功能有少量重叠,可以用 Deployment/Job/Daemonset 等为单位,查看其中所有 Pod 的日志,例如前面用的 Nginx,如果有访问的话,就会看到如下结果:
$ kubedog follow deployment nginx # deploy/nginx appears to be ready # deploy/nginx rs/nginx-6cc78cbf64 added # deploy/nginx new rs/nginx-dbddb74b8 added # deploy/nginx rs/nginx-dbddb74b8(new) po/nginx-dbddb74b8-x4nkm added # deploy/nginx rs/nginx-6cc54845d9 added # deploy/nginx event: ScalingReplicaSet: Scaled up replica set nginx-6cc54845d9 to 1 # deploy/nginx rs/nginx-6cc54845d9(new) po/nginx-6cc54845d9-nhlvs added # deploy/nginx event: po/nginx-6cc54845d9-nhlvs Pulling: pulling image "nginx:alpine" # deploy/nginx event: po/nginx-6cc54845d9-nhlvs Pulled: Successfully pulled image "nginx:alpine" # deploy/nginx event: po/nginx-6cc54845d9-nhlvs Created: Created container # deploy/nginx event: po/nginx-6cc54845d9-nhlvs Started: Started container # deploy/nginx event: ScalingReplicaSet: Scaled down replica set nginx-dbddb74b8 to 0 # deploy/nginx become READY # deploy/nginx event: po/nginx-dbddb74b8-x4nkm Killing: Killing container with id docker://nginx:Need to kill Pod >> deploy/nginx rs/nginx-dbddb74b8 po/nginx-dbddb74b8-x4nkm nginx >> deploy/nginx rs/nginx-6cc54845d9(new) po/nginx-6cc54845d9-nhlvs nginx 127.0.0.1 - - [02/Jun/2019:11:35:08 +0000] "GET / HTTP/1.1" 200 612 "-" "Wget" "-" 127.0.0.1 - - [02/Jun/2019:11:35:11 +0000] "GET / HTTP/1.1" 200 612 "-" "Wget" "-"
项目地址
https://github.com/flant/kubedog
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网
猜你喜欢:- 介绍一个小工具:Ksniff
- 9 款 AI 测试工具介绍
- [安全技巧] 网络十大黑客工具介绍
- Linux 系统监测工具 sysstat 介绍
- 自动化测试工具Serverwalker介绍
- Linux统计/监控工具SAR详细介绍
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
CLR via C#
Jeffrey Richter / 周靖 / 清华大学出版社 / 2015-1-1 / CNY 109.00
《CLR via C#(第4版)》针对CLR和.NET Framework 4.5进行深入、全面的探讨,并结合实例介绍了如何利用它们进行设计、开发和调试。全书5部分共29章。第Ⅰ部分介绍CLR基础,第Ⅱ部分解释如何设计类型,第Ⅲ部分介绍基本类型,第Ⅳ部分以核心机制为主题,第Ⅴ部分重点介绍线程处理。 通过本书的阅读,读者可以掌握CLR和.NET Framework的精髓,轻松、高效地创建高性能......一起来看看 《CLR via C#》 这本书的介绍吧!