云原生时代如何方便的进行本地调试

云原生时代如何方便的进行本地调试

云原生的四要素:持续交付、DevOps、微服务、容器,虽然极大的解放了生产力,可是不可避免的也带来了诸多问题,本文不作延伸,感兴趣的,能够自行百度。
本文只为解决微服务(本文以Spring Cloud为例)+Kubernetes开发调试低效问题。java

07e15debbba7479aabef8f861f3ef5f4.jpg

telepresence

若是团队内成员都有k8s基础,而且都用win10或者linux,macos,那建议直接用telepresence,简单直接。详见 Fast development workflow with Docker and KubernetesA development workflow for Kubernetes servicesmysql

Service映射

若是团队内k8s基础弱,或者硬件条件不知足,能够使用Service映射方案,在k8s集群里建立一个Service和Endpoint,而后进行绑定。可是适用于单向的,好比,k8s访问外部mysql,若是要逆向访问,很差意思,不支持。linux

静态路由

github.com/jkwong888/k…git

TDD

若是团队对于单院测试和Mock掌握的比较好,能够直接开启TDD模式,省事省心github

远程调试

k8s集群暴露远程调试接口。Remote debugging Spring Boot on Kubernetesspring

开发机归入集群

应用发到本地pod里,省的走cicd那么费劲了sql

热部署

开发机归入集群后,把target\class挂载到本地卷,而且配置上rebel.xml,idea build后生成class,而后pod里触发jrebel的热部署。 参考 www.telepresence.io/tutorials/j…docker

相关文章
相关标签/搜索