网易首页 > 网易号 > 正文 申请入驻

K8S 集群内 Debug 微服务的最佳实践

0
分享至


为了达到目标效果,我主要用如下工具:

在 K8s 集群中调试微服务很困难。有时我们遇到在不真实的环境下难以复现的 bug。在本机用你最习惯的工具调试达到和在集群中运行服务一样的效果,这其实只需要运行几个命令。

Gebug

https://github.com/moshebe/gebug

这个开源工具让调试容器化了的Go程序非常方便,它是通过开启热更新和debugger配置实现的。我就是这个工具的作者嘻嘻。

Telepresence

https://www.telepresence.io/

这是一个很厉害的 CNCF 项目,这个项目可以用来与集群网络做网络隧道。

我认为,熟悉一个工具最好的办法就是去用它,接着就来配置demo环境。

Kubernetes集群

我们使用一个小kubernetes集群,跑一个hello-world deployment、暴露一个服务。

既然是要做demo,我就用minikube了。如果你已经有一个运行中的非生产环境集群,那么你就用你的集群。注意不要在生产环境做测试。

kubectl create deployment hello-world --image=datawire/hello-world
kubectl expose deployment hello-world --type=LoadBalancer --port=8000

当前kubernets集群状态

查看service external endpoint并跑些测试:

使用minikube提供的命令拉取外部地址。也可以通过kubectl get service hello world命令并查看 EXTERNAL_IP 字段内的信息。img

hello world 服务

我们的hello-world部署很成功。我们来做一次把http返回做成json格式。

当然也可以编译你的程序、打镜像、push到仓库、编辑deployment、等等等等,最后搞定。我们来用短平快的办法做这事。

这是个简单HTTP server:

package main
import (
"fmt"
"net/http"
)
func main() {
http.HandleFunc("/", func(w http.ResponseWriter, r *http.Request) {
fmt.Println("Got request ")
fmt.Fprintf(w, `{"hello":"world"}`)
})
http.ListenAndServe(":8000", nil)
}
这是Gebug配置:
name: my-server
output_binary: /app
build_command: go build -gcflags="all=-N -l" -o /app
run_command: /app
runtime_image: golang:1.15.2
debugger_enabled: true
debugger_port: 4321
expose_ports:
- 8000:8000
networks: []
environment: []

注意,如果没有安装Gebug可以运行go get -u github.com/moshebe/gebug安装。

Telepresence
这个强大的工具让我们绕过了复杂难懂的网络配置,可以直接把服务连接到集群中。

安装指南: https://www.telepresence.io/reference/install

下一步是暴露本地的服务、把流量连接到集群,就可以替换掉已经存在的deployment了。

我们的deployment叫hello-world,暴露8000端口,命令如下:

telepresence --swap-deployment hello-world --expose 8000:8000 --method inject-tcp --run gebug start

上面这个命令做了几件事:

开一个程序负责把命中的DNS和IP段的请求重定向到k8s集群上

swap-deployment 这个选项是让Telepresence用运行在Telepresence代理上的东西替换掉已经存在的hello-world pod。一旦我们退出,老pod也会被恢复。

run 选项告诉Telepresence用Gebug工具运行我们的服务,把这个服务和网络代理绑定。

只要 http server 在 telepresence 中运行着,就可以从 k8s 集群内部访问这个服务。

本文地址:https://www.linuxprobe.com/debug-shijian.html

特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。

Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.

相关推荐
热点推荐
东莞长安被封的第2天,所有门面都关门,大街上空无一人

东莞长安被封的第2天,所有门面都关门,大街上空无一人

童童聊娱乐啊
2026-06-29 19:08:37
风波升级!前央视主持人张泽群晒韩红朋友圈:哭着道歉并退出公益

风波升级!前央视主持人张泽群晒韩红朋友圈:哭着道歉并退出公益

四斤
2026-06-29 11:06:19
别再关注韩红了,冯小刚的《抓特务》,问题超乎你的想象!

别再关注韩红了,冯小刚的《抓特务》,问题超乎你的想象!

青橘罐头
2026-06-27 09:29:46
陈震:韩红误会走个面意思了,在北京这是抱怨的意思

陈震:韩红误会走个面意思了,在北京这是抱怨的意思

映射生活的身影
2026-06-29 17:04:11
五发三中,“火烈鸟”重创“街垒”工厂!荷兰赠送700枚巡航导弹

五发三中,“火烈鸟”重创“街垒”工厂!荷兰赠送700枚巡航导弹

鹰眼Defence
2026-06-28 16:30:10
商务部副部长盛秋平,调任江西省委常委、南昌市委书记

商务部副部长盛秋平,调任江西省委常委、南昌市委书记

观察者网
2026-06-29 16:16:03
不卖了!雷霆预计执行多尔特球队选项 交易两人后薪资压力缓解

不卖了!雷霆预计执行多尔特球队选项 交易两人后薪资压力缓解

醉卧浮生
2026-06-29 21:40:27
东大玩阳谋有多牛 看网友讲述外国人不是我们的对手真不是没道理

东大玩阳谋有多牛 看网友讲述外国人不是我们的对手真不是没道理

侃神评故事
2026-06-29 07:16:43
大宝贝和黄教主及大佬的瓜!

大宝贝和黄教主及大佬的瓜!

八卦疯叔
2026-06-29 09:50:03
比亚迪分家后,四个品牌走出四条路

比亚迪分家后,四个品牌走出四条路

生活魔术专家
2026-06-29 17:59:54
魏敏芝现状:在美国当导演,全家定居夏威夷,如今40岁胖到不敢认

魏敏芝现状:在美国当导演,全家定居夏威夷,如今40岁胖到不敢认

白面书誏
2026-06-29 21:16:24
北京市率先建立平台经济“破卷向善”协商对话机制,围绕餐饮外卖商家降本增利开展协商

北京市率先建立平台经济“破卷向善”协商对话机制,围绕餐饮外卖商家降本增利开展协商

界面新闻
2026-06-29 15:10:22
腾讯被曝与长鑫存储签下超200亿大单

腾讯被曝与长鑫存储签下超200亿大单

观察者网
2026-06-29 23:00:03
委内瑞拉球员妻子地震遇难,坍塌瞬间用身体护住女儿,感动无数人

委内瑞拉球员妻子地震遇难,坍塌瞬间用身体护住女儿,感动无数人

译言
2026-06-29 09:49:54
善恶终有报!“港独分子”陈方安生,弟弟自杀女儿去世,晚景凄凉

善恶终有报!“港独分子”陈方安生,弟弟自杀女儿去世,晚景凄凉

莫地方
2026-06-29 01:10:03
大S俩孩子已回北京,汪小菲携一家五口逛国贸,张兰好开心

大S俩孩子已回北京,汪小菲携一家五口逛国贸,张兰好开心

奇怪的鲨鱼们
2026-06-29 04:12:46
凄惨!阿根廷球星全家殒命!妻儿全部遇难,一夜间沦为孤家寡人

凄惨!阿根廷球星全家殒命!妻儿全部遇难,一夜间沦为孤家寡人

草莓解说体育
2026-06-29 19:16:39
瞒不住了!台海都是假象,美国真正的恶仗,已经打到中国家门口

瞒不住了!台海都是假象,美国真正的恶仗,已经打到中国家门口

小樾说历史
2026-06-28 12:04:30
新华社消息|外交部:中方绝不允许日菲侵害中方海洋权益

新华社消息|外交部:中方绝不允许日菲侵害中方海洋权益

新华社
2026-06-29 18:43:01
不留退路!俄罗斯法院裁定:没收欧洲清算银行2490亿美元资产

不留退路!俄罗斯法院裁定:没收欧洲清算银行2490亿美元资产

小正说娱乐
2026-05-19 03:01:40
2026-06-29 23:27:00
linux系统运维之家
linux系统运维之家
科技资讯
1392文章数 7550关注度
往期回顾 全部

科技要闻

杀疯了!深圳一天出两家200亿具身智能公司

头条要闻

小米SU7加速向左偏减速向右偏 车主维权近1年4S店松口

头条要闻

小米SU7加速向左偏减速向右偏 车主维权近1年4S店松口

体育要闻

他和伊朗队,再次赢得全世界的尊重

娱乐要闻

跟风电影《给阿公的牛肉丸》开机

财经要闻

万达广场批量易主 多位投资人正式入局

汽车要闻

全新宝马iX3长轴版将于成都车展预售 四季度交付

态度原创

艺术
家居
手机
健康
公开课

艺术要闻

他爱上自己的缪斯,把她画成女神,却眼睁睁看着她死去

家居要闻

传奇筑 日常诗

手机要闻

屏幕反人类,但AI绝了!酷派小方块上手:没法当主力机用

狂吃“糯叽叽”小心肠梗阻!

公开课

李玫瑾:为什么性格比能力更重要?

无障碍浏览 进入关怀版