Cloud Code for IntelliJ Kubernetes 概览

本页面简要介绍了使用 Cloud Code 进行 Kubernetes 开发。

在 Cloud Code 中使用 Kubernetes Explorer

借助 Kubernetes Explorer,您可以直接从 IDE 访问有关集群、节点、工作负载等的信息。您还可以设置当前上下文流式传输和查看日志打开交互式终端,以及使用 Kubernetes Explorer 查找资源说明

Cloud Code Kubernetes Explorer

Cloud Code 使用默认的 kubeconfig 文件来检索 Kubernetes 资源,该文件位于 MacOS/Linux 上的 $HOME/.kube 目录下或 Windows 上的 %USERPROFILE%\.kube 下。您可以从 Kubernetes Explorer 中切换或添加新的 Kubeconfig 文件。Kubeconfig 文件是包含 Kubernetes 集群详细信息、证书和用于向集群进行身份验证的密钥令牌的 YAML 文件。

如需使用默认 kubeconfig 以外的 kubeconfig 文件,请参阅使用 kubeconfig 文件指南。

访问 Kubernetes Explorer

如需查看和管理您的 Kubernetes 资源,请使用 Kubernetes Explorer(可从右侧的侧边栏访问)。或者,您也可以使用工具 > Cloud Code > Kubernetes > 查看集群浏览器来访问集群。

当您启动开发或调试会话时,开发会话部分会显示结构化日志记录视图。

“开发会话”窗格

基本操作

Kubernetes Explorer 由 kubectl 提供支持。只要您已将 kubectl 配置文件配置为访问集群,就可以使用 Kubernetes Explorer 添加集群,浏览集群的所有可用命名空间、资源和节点,无论它们处于活跃还是非活跃上下文中。

可用的常规 Kubernetes 操作(可通过 Kubernetes Explorer 中的图标访问)包括:

  • 通过示例图标新建 Kubernetes 应用 基于示例创建新的 Kubernetes 应用
  • 刷新 Explorer 图标 刷新探索器
  • 打开文档图标 在网络浏览器中打开 Cloud Code Kubernetes 文档

其他常见的 Kubernetes 调试操作(可通过 Kubernetes Explorer 中的相应图标访问)包括:

  • Run 图标 运行当前的运行/调试配置。
  • “调试”图标 在调试模式下启动运行配置。
  • 调试停止图标 停止正在运行的调试会话。

复制资源名称

您可以将任何 Kubernetes 资源名称(包括容器和集群名称)复制到剪贴板。如需复制资源名称,请右键点击该资源,然后选择 Copy resource name

使用右键菜单复制资源名称

刷新资源

Kubernetes Explorer 会监控更改并自动刷新以反映更新。如需强制刷新任何 Kubernetes 资源以获取其最新信息,请右键点击该资源,然后选择刷新

使用右键菜单刷新 Pod

您还可以使用 Kubernetes Explorer 的刷新按钮强制刷新整个 Kubernetes Explorer。Kubernetes Explorer 刷新按钮

描述资源

如需显示任何非集群资源的详细信息,请右键点击该资源,然后选择描述。资源信息显示在 Kubernetes Explorer 控制台面板中。

右键点击 Kubernetes Explorer 中的相应资源并选择“描述”时可用的描述选项

如需查看资源详细信息,您还可以点击任何资源。如果元数据已附加,则可以在 Kubernetes Explorer 的“资源详细信息”面板中找到元数据。

在 Kubernetes Explorer 后半部分的“资源详细信息”(Resource Details) 面板中查看资源元数据

Skaffold 选项

  • Skaffold configuration - 选择 skaffold.yaml 配置文件。如果您的项目中有 skaffold.yaml,系统将自动检测到这种情况。
  • Deployment profile - 从 skaffold.yaml 文件中配置的可用选项中选择配置文件
  • Environment variables - 用于配置要传递给 Skaffold 部署进程的其他环境变量。您还可以将 Skaffold 标志配置为要在此字段中使用的环境变量。如需查看可用 Skaffold 环境变量的完整列表,请参阅 Skaffold CLI 参考文档
  • Verbosity - 用于设置输出的详尽程度,可选的值为:tracedebuginfowarnerrorfatal。默认的详尽程度为 warn

Kubernetes 选项

  • 部署上下文 - 表示在其中部署应用的 Kubernetes 上下文。如果未指定部署上下文,则默认行为是部署到当前系统上下文(如果存在)。

    如果您不想部署到当前上下文,请在“运行/调试”设置的“部署”部分下选择:

    • 在本地部署到 minikube 集群 - 启动由 Cloud Code 管理的 minikube 集群以运行您的应用,并在部署停止后停止集群。如果 minikube 集群已在运行,则 Cloud Code 会使用现有的 minikube 集群进行部署。
    • 切换上下文并部署到 - 在部署时,将系统上的当前上下文更改为指定上下文。

      在 Cloud Code Kubernetes 配置中选择 Kubernetes 部署环境

  • Delete deployments when finished - 在进程终止时删除 Kubernetes 部署。这是默认行为。或者,您也可以切换此设置以防止部署被删除

自定义启动配置

如需配置应用的运行方式,您可以自定义 skaffold.yaml 文件。

您还可以在 Run/Debug configurations 中配置您的启动。如需修改配置,请依次点击 Run > Edit configurations

查看远程 YAML

直接从 Kubernetes Explorer 查看集群中资源的 YAML。导航到 Kubernetes Explorer 中的资源(例如 Pod),右键点击资源名称,然后选择查看远程 YAML

与指定资源对应的 YAML 文件会在新的编辑器标签页中打开。

在 Kubernetes Explorer 中右键点击 Pod 的标签,然后选择“查看远程 YAML”,以查看 Pod 的 YAML

查看日志

您可以将 Kubernetes 资源中的日志流式传输到 Kubernetes Explorer 控制台并查看它们的进度,以监控其进度。

构建应用并以常规模式或开发模式运行后,您将能够在 IDE 中监控从应用流式传输的日志。

查看从 Hello World Java 应用流式传输的日志

您还可以导航到 Kubernetes Explorer 来查看来自特定服务的日志。

如需选择要查看其日志的资源,例如 Pod、Deployment 或 Service,请执行以下操作:

  1. 右键点击该资源,然后选择 Stream Logs。或者,您也可以流式传输在 Pod 中运行的各个容器的日志。

    这会将日志输出到 Kubernetes Explorer Console。

如需查看部署中资源的状态,请执行以下操作:

  • pod、Deployment 和节点的状态:这些 Kubernetes 资源的标签旁边将带有彩色状态标记;红色代表失败状态,黄色代表启动/终止/警告状态,绿色代表所需的正常状态。

    Pod 标签旁边的绿色对勾标记表示健康状况良好

  • 部署资源说明:您可以对已部署的资源运行 kubectl describe,通过右键点击并选择描述来显示其详细信息。

    右键点击 Kubernetes Explorer 面板中的相应资源并选择“描述”时可用的描述选项

启动终端

对于 Pod 和容器,您可以右键点击 Pod 或容器并选择获取终端,以打开交互式终端。

打开交互式终端

特定于资源的操作

Kubernetes Explorer 显示集群、命名空间、节点、工作负载(如 Deployment、副本集、Pod 和容器)、服务和入站流量、配置(如 Secret 和 ConfigMap)以及存储空间(如卷)。使用 Kubernetes Explorer,您可以对其中一些资源执行独特的操作。

您可以从侧边栏访问 Kubernetes Explorer,也可以转到 Tools > Cloud Code > Kubernetes > View Cluster Explorer

使用右侧任务栏上的标签页打开 Kubernetes Explorer 面板

如需显示已部署资源的详细信息,请右键点击 Kubernetes Explorer 中的资源标签,然后点击描述

在 Kubernetes Explorer 面板中右键点击相应资源并选择“描述”时显示的描述选项

集群

  • 添加 Google Kubernetes Engine 集群:添加现有的标准 GKE 集群或 Autopilot GKE 集群,或者点击 Kubernetes Explorer 中的 + 添加 GKE 集群来创建新集群。

系统会显示“Add Cluster”对话框,您可以选择要使用的项目和集群,也可以创建新集群。

完成后,点击确定,并通过 Kubernetes Explorer 访问所选集群及其底层资源。

使用 Kubernetes Explorer 对话框通过项目和集群名称字段添加 GKE 集群

  • 设置为活跃上下文:将指定集群设置为活跃状态,以使配置的 kubectl 上下文默认访问此集群。

    使用 Kubernetes Explorer 将集群设置为当前上下文

Kubernetes Explorer 会自动刷新,您会在相应集群旁边看到 Kubernetes 符号。

如果集群配置了多个上下文,您将能够选择其中一个可用上下文设置为当前上下文。

使用 Kubernetes Explorer 从多个上下文中选择和设置活跃集群

命名空间

  • 设置为当前上下文:将某一命名空间设置为活跃状态,以使配置的 kubectl 上下文默认访问此命名空间。

    使用右键菜单将命名空间设置为当前上下文

如果此操作成功,Kubernetes Explorer 会自动刷新,并且您将在该命名空间旁边看到一个星号,表示它是当前上下文的一部分。

请注意,Kubernetes 上下文是一种快捷方式,可让您快速访问集群中的命名空间。上下文通常会在您启动 minikube 或 GKE 集群时自动创建。如果您没有看到指定命名空间的设置为当前上下文选项,但想要为其创建上下文,请在终端中使用 kubectl config set-context 命令设置包含您的首选集群、用户和命名空间的上下文。

Pod

  • 查看日志:在 Kubernetes Explorer 控制台中查看来自 Pod 的日志
  • 获取终端:在 Kubernetes Explorer Console 中为 pod 获取终端

    此外,运行中 pod 的标签旁边会显示彩色状态标记:

    • 红色:表示 pod 处于失败状态
    • 黄色:表示 pod 正在启动或终止
    • 绿色:表示 pod 运行状况良好且正在运行
Pod 指示健康状态旁边的绿色对勾标记

容器

使用容器的右键菜单流式传输其日志,以将日志输出到 Kubernetes Explorer Console

部署

  • 查看日志:在 Kubernetes Explorer 控制台中查看来自部署的日志

    实时部署的标签和当前副本数/副本总数旁边带有彩色状态标记:

    • 黄色:表示 Deployment 无最低可用性或存在映像问题。
    • 绿色:表示 Deployment 运行状况良好且具有最低可用性。
表示运行状况的绿色部署图标

节点

集群节点的名称旁边会显示彩色状态标记:

  • 黄色:表示节点存在资源问题,例如内存或磁盘可用性。
  • 绿色:表示节点运行状况良好。

自定义资源定义 (CRD)

Kubernetes Explorer 列出了您的集群上安装和可用的所有自定义资源定义 (CRD):

Explorer 中的自定义资源定义列表

后续步骤

获取支持

如需在 IntelliJ IDE 中提交反馈或报告问题,请依次点击工具 > Cloud Code > 帮助 / 关于 > 提交反馈或报告问题,以在 GitHub 上报告问题,或在 Stack Overflow 上提问。