码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • 3. Visual Studio: Debug within k8s Cluster Using Bridge to Kubernetes


    演示资源已提交:k8s-helm-tpl - Repos (azure.com)

    目录

    前言

    1. Bridge to Kubernetes

    2. launchSettings.json 新增启动类型

    3. Helm Upgrade

    4. Debug within Cluster 

    5. Override cluster env variables 

    隔离模式原理图


    前言

    通过前面两篇博客,我们使用helm将一个Blazor Server项目部署到了k8s,并为其配置了Ingress,

    1. HelmTemplate 3分钟将项目打包成Helm Chart并部署至k8s_郭麻花的博客-CSDN博客

    2.HelmTemplate Guidance and Enable Ingress for Blazor Server_郭麻花的博客-CSDN博客

    接下来,我们来探索一个少见但非常实用的操作:将程序桥接到Kubernetes Cluster中调试。

    首先声明:这是非常具有应用场景的技术,并且我们在研发阶段中已经采用了这种技术。

    当微服务体系中的服务越来越多时,在开发阶段怎么进行调试就成了问题。

    或许团队会搭建一套公用的测试环境,每个项目调试时会根据环境变量,连接到测试环境进行调试。那么这就带来一个问题,项目所有人共用的是同一个集群环境,同样微服务版本。假如测试环境提交了一个有故障的服务版本,那么可能导致所有的测试工作无法正常进行,或者影响到别人正在进行的调试工作。

    微软提供的这个VS插件可以让你的本地代码通过VS直接连接到现有的Cluster,无论是你本地的或者是云服务上面的。并且提供了隔离和非隔离两种调试模式。

    1. Bridge to Kubernetes

    接下来我们要介绍的这个Visual Studio 插件是微软团队研发的,它主要做了以下几点

    • 将集群流量重定向到Visual Studio
    • 从群集收集环境变量、服务、卷装载和secret等
    • 使用Visual Studio调试设置的变量
    • 更新本地Host文件
    • 运行调试

    并且它还具有路由隔离模式,假如你和其他开发人员共用一个cluster进行调试,你可以选择使用路由功能,仅将请求从每个子域重定向到开发计算机,从而避免中断群集中的其他流量

    !我并不清楚它现在可用性怎么样,仅作学习使用Bridge to Kubernetes on Visual Studio | Microsoft

    到 Visual Studio扩展市场下载Bridge to Kubernetes插件

    2. launchSettings.json 新增启动类型

    3. Helm Upgrade

    我在此注释掉了livenessProbe和readinessProbe,并且使用helm upgrade更新了cluster上的服务,否则调试起来的pod会失败。

    4. Debug within Cluster 

    1. 点击调试,会提示你连接到cluster,并且选择调试目标。

     2. 在页面点击 Fetch Data,命中断点

    5. Override cluster env variables 

    在.csproj同级目录下新建一个KubernetesLocalProcessConfig.yaml文件,在其中覆写Cluster中的环境变量。

    隔离模式原理图

    隔离模式下启用 Bridge to Kubernetes 复制服务和支持独立路由的 envoy pod。

  • 相关阅读:
    操作系统不等于 Linux,六问操作系统新时代 | 1024 程序员节
    Flink-源算子Source(获取数据源)的使用
    2022年上半年网络工程师上午真题及答案
    越来越重要的破坏性测试
    【Unity之竖屏游戏制作】如何做一个竖屏的手机游戏
    【物联网】802.15.4简介
    QT实现钟表
    【算法与数据结构】450、LeetCode删除二叉搜索树中的节点
    wav怎么转mp3?请看详细步骤
    SQL教程之作为 SQL 数据分析师给初学者的5个技巧提升
  • 原文地址:https://blog.csdn.net/qq_40404477/article/details/126909484
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号