- 3
- 0
- 约2.18千字
- 约 4页
- 2025-05-16 发布于四川
- 举报
第
goland远程调试k8s上容器的实现
目录选node并同步代码准备debug镜像创建deployment创建svc上次也遇到过一次需要在k8s的容器里debug程序的情况,当时找了个偷懒的办法绕过去了,这回绕不过去了,老老实实整一把。主要还是用dlv配合goland的远程调试功能。
选node并同步代码
可以用kubectltopnode查看资源使用情况,选一个相对清闲的node,记住这个主机名nodeName可以用scp或者goland的同步功能(最好是直接在node上gitclone便于分辨脏文件)将本地代码传到node上的某个路径下,记录这个代码路径codePath用这个nodeName和codePath创建deployment
准备debug镜像
在node上创建一个空文件夹(空文件夹编译更快)保存如下内容到fileName执行dockerbuild-ffileName-timage:tag.
#选用go1.19的alpine版本
FROMgolang:1.19-alpine
#设置go代理并下载dlv源码并编译安装
RUNgoenv-wGOPROXY=,directgomoddownload/go-delve/delve@v1.9.1
WORKDIR/go/pkg/mod//go-delve/delve@v1.9.1/
RUNgomodtidy
RUNgomodvendor
RUNgoinstall./cmd/dlv/
#替换源并下载gcc,非必须,看编译是否依赖
RUNsed-is///g/etc/apk/repositories
RUNapk--no-cacheaddgcc
WORKDIR/go
创建deployment
用上面的nodeNamecodePathimage:tag替换yaml中的变量
执行kubectlapply-fdeploy.yaml
apiVersion:apps/v1
kind:Deployment
metadata:
labels:
k8s-app:go-env
name:go-env
spec:
selector:
matchLabels:
k8s-app:go-env
template:
metadata:
creationTimestamp:null
labels:
k8s-app:go-env
spec:
containers:
-image:${ImageTag}
imagePullPolicy:IfNotPresent
name:go-env
stdin:true
terminationMessagePath:/dev/termination-log
terminationMessagePolicy:File
tty:true
volumeMounts:
-mountPath:/go/src/code
name:code
dnsPolicy:ClusterFirst
nodeName:${NodeName}#nodename
restartPolicy:Always
schedulerName:default-scheduler
volumes:
-hostPath:
path:${CodePath}#/path/to/code
type:Directory
name:code
创建svc
远程调试需要网络通信,创建svc将deploy的2345暴露到node的32345上
apiVersion:v1
kind:Service
metadata:
name:go-env
spec:
externalTrafficPolicy:Cluster
ipFamilies:
-IPv4
ipFamilyPolicy:SingleStack
ports:
-nodePort:32345
port:2345
protocol:TCP
targetPort:2345
selector:
k8s-app:go-env
sessionAffinity:None
type:NodePort
远程启动dlv
执行kubectlexec进入容器执行dlvdebu
您可能关注的文档
最近下载
- 2024年潍坊护理职业学院高职单招(英语/数学/语文)笔试2018-2023历年真题摘选带答案解析.docx VIP
- 《智能管理系统创新与发展》课件.ppt VIP
- 仁爱版七年级下册英语单词默写表(中文版).pdf VIP
- 2025年潍坊护理职业学院单招笔试数学试题库含答案解析.docx VIP
- 2025郑州中考一模化学试卷.docx VIP
- 2025河北单招第七类综合素质真题 .pdf VIP
- 2025黑龙江林业职业技术学院单招《数学》经典例题含答案详解(能力提升).docx VIP
- 大病低保申请书.docx VIP
- 发热伴血小板减少综合征药物治疗指南(2025年版)解读PPT课件.pptx VIP
- 2020泰和安TG3100广播控制盘安装使用说明书.pdf VIP
原创力文档

文档评论(0)