如何远程调试托管在Azure K8s集群中的应用程序 [英] How to remote debug an application hosted in Azure K8s Cluster

查看:0
本文介绍了如何远程调试托管在Azure K8s集群中的应用程序的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

基本背景

我的应用程序是一个Java应用程序,我的应用程序正在Azure集群中部署。 一切都很好。但我想知道如何将Eclipse调试器与Azure群集中运行的应用程序连接。

在启动脚本中,JPDA端口与8000绑定,dockerfile8000端口暴露。

问题是如何将eclipse调试器与在Azure群集中运行的代码连接。

我尝试将IP地址放入Remote Java Application连接属性Host:,但未成功。

需要过程,以进行远程调试。

推荐答案

所以在谷歌之后,我找到了一个忍者技巧🤣🤣。一种我们称为port-forwarding的技术。

因此,基本思路是将正在运行的应用程序的端口转发到本地系统的可用端口。

所以我找到了一个端口转发命令:

kubectl port-forward pods/<podName> 8000:8000 -n <namespace>

在此命令中,我们需要知道。为此,我们需要知道Azure上Kubernetes集群中运行的Pod。这意味着我们需要使用Azure连接或验证您的本地计算机CLI。

从此链接下载Azure CLI并安装 https://docs.microsoft.com/en-us/cli/azure/install-azure-cli?view=azure-cli-latest

  • 现在打开PowerShell运行命令

    az login

  • 您的默认浏览器将打开添加您的Azure凭据并进行身份验证,因此您的PowerShell将在authentication完成时向您显示以下消息。

 
C:UsersMachineName> az login
You have logged in. Now let us find all the subscriptions to which you have access...

[
  {
    "cloudName": "",
    "id": "",
    "isDefault": true,
    "name": "",
    "state": "Enabled",
    "user": {
      "name": "",
      "type": ""
    }
  }
]
  • 现在要运行的下一个命令是:

    az aks get-credentials --resource-group <ResourseGroupName> --name <Name of Kubernetes cluster>

  • 运行命令以获取特定命名空间中正在运行的Pod(如果已定义)。

    kubectl get pods -n <namespace>

  • 现在,您的运行Pod将位于Azure云的Kubernetes群集的特定命名空间中。


NAME                         READY STATUS  RESTARTS    AGE

application-8664866df5-x4zns 2/2           Running 0   21m
  • 运行初始命令的时间。

    kubectl port-forward pods/<application-8664866df5-x4zns> 6000:8000 -n myNameSpace

  • 在CLI中您将看到

    /li>

Forwarding from 127.0.0.1:6000 -> 8000
Forwarding from [::1]:6000 -> 8000

我为什么使用6000端口可能会感到困惑,因为我的8000端口已经在使用中了。

连接到eclipse的时间: 项目Right-click>debugdebug configuration>搜索Remote Java Application

将调试器的名称设置为类似于我的名称调试群集 Host:127.0.0.1 Port:6000

现在应用并按下调试按钮,稍后您将看到调试器已连接到在Azure群集中运行的实例。

这篇关于如何远程调试托管在Azure K8s集群中的应用程序的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆