部署和访问 Kubernetes Dashboard

部署 Web UI(Kubernetes Dashboard)并访问它。

Kubernetes Dashboard 已弃用且不再维护。

Kubernetes Dashboard 项目已被归档,不再积极维护。对于新的安装,请考虑使用 Headlamp

Dashboard 是一个基于 Web 的 Kubernetes 用户界面。您可以使用 Dashboard 将容器化应用程序部署到 Kubernetes 集群,排查容器化应用程序的问题,以及管理集群资源。您可以使用 Dashboard 获得集群上运行的应用程序的概览,以及创建或修改单个 Kubernetes 资源(例如 Deployments、Jobs、DaemonSets 等)。例如,您可以扩展 Deployment,启动滚动更新,重新启动 Pod 或使用部署向导部署新应用程序。

Dashboard 还提供有关集群中 Kubernetes 资源状态以及可能发生的任何错误的信息。

Kubernetes Dashboard UI

部署 Dashboard UI

Dashboard UI 默认情况下未部署。要部署它,请运行以下命令

# Add kubernetes-dashboard repository
helm repo add kubernetes-dashboard https://kubernetes.github.io/dashboard/
# Deploy a Helm Release named "kubernetes-dashboard" using the kubernetes-dashboard chart
helm upgrade --install kubernetes-dashboard kubernetes-dashboard/kubernetes-dashboard --create-namespace --namespace kubernetes-dashboard

访问 Dashboard UI

为了保护您的集群数据,Dashboard 默认情况下会以最小的 RBAC 配置进行部署。目前,Dashboard 仅支持使用 Bearer Token 登录。要为此演示创建 Token,您可以按照我们的指南 创建示例用户

命令行代理

您可以使用 kubectl 命令行工具启用对 Dashboard 的访问,方法是运行以下命令

kubectl -n kubernetes-dashboard port-forward svc/kubernetes-dashboard-kong-proxy 8443:443

Kubectl 将在 https://:8443 上提供 Dashboard。

UI 只能从执行该命令的机器访问。有关更多选项,请参阅 kubectl port-forward --help

欢迎视图

当您访问 Dashboard 上的空集群时,您将看到欢迎页面。此页面包含指向本文档的链接以及部署您的第一个应用程序的按钮。此外,您可以查看默认在集群的 kube-system 命名空间 中运行的系统应用程序。

Kubernetes Dashboard welcome page

部署容器化应用程序

Dashboard 允许您使用简单的向导将容器化应用程序创建和部署为 Deployment 和可选 Service。您可以手动指定应用程序详细信息,也可以上传包含应用程序配置的 YAML 或 JSON manifest 文件。

单击任何页面的右上角的 CREATE 按钮开始。

指定应用程序详细信息

部署向导要求您提供以下信息

  • 应用程序名称(必填):您的应用程序的名称。将添加一个带有该名称的 标签 到将要部署的 Deployment 和 Service(如果有)。

    应用程序名称必须在所选 Kubernetes 命名空间 中是唯一的。它必须以小写字符开头,并以小写字符或数字结尾,并且仅包含小写字母、数字和破折号 (-)。限制为 24 个字符。前导和尾随空格将被忽略。

  • 容器镜像(必填):公共 Docker 容器镜像 在任何注册表上的 URL,或私有镜像(通常托管在 Google Container Registry 或 Docker Hub 上)。容器镜像规范必须以冒号结尾。

  • Pod 数量(必填):您希望应用程序部署的 Pod 的目标数量。该值必须是正整数。

    将创建一个 Deployment 以在您的集群中维护所需的 Pod 数量。

  • Service(可选):对于应用程序的某些部分(例如前端),您可能希望将 Service 暴露到集群外部的外部公共 IP 地址(外部 Service)。

    仅在集群内部可见的其他 Service 称为内部 Service。

    无论 Service 类型如何,如果您选择创建 Service 并且您的容器侦听一个端口(传入),您需要指定两个端口。Service 将创建映射传入端口到容器看到的的目标端口。此 Service 将路由到您部署的 Pod。支持的协议是 TCP 和 UDP。此 Service 的内部 DNS 名称是您指定为应用程序名称的值。

如果需要,您可以展开 高级选项 部分,您可以在其中指定更多设置

  • 描述:您在此处输入的文本将作为 注释 添加到 Deployment 并显示在应用程序的详细信息中。

  • 标签:默认 标签 用于您的应用程序是应用程序名称和版本。您可以指定要应用于 Deployment、Service(如果有)和 Pod 的其他标签,例如 release、environment、tier、partition 和 release track。

    示例

    release=1.0
    tier=frontend
    environment=pod
    track=stable
    
  • 命名空间:Kubernetes 支持由相同的物理集群支持的多个虚拟集群。这些虚拟集群称为 命名空间。它们允许您将资源划分为逻辑命名组。

    Dashboard 在下拉列表中提供所有可用的命名空间,并允许您创建一个新的命名空间。命名空间名称最多可以包含 63 个字母数字字符和破折号 (-),但不能包含大写字母。命名空间名称不应仅由数字组成。如果名称设置为数字,例如 10,则 Pod 将被放置在默认命名空间中。

    如果命名空间的创建成功,则默认情况下会选择它。如果创建失败,则会选择第一个命名空间。

  • 镜像拉取密钥:如果指定的 Docker 容器镜像为私有镜像,则可能需要 pull secret 凭据。

    Dashboard 在下拉列表中提供所有可用的密钥,并允许您创建一个新的密钥。密钥名称必须遵循 DNS 域名语法,例如 new.image-pull.secret。密钥的内容必须是 base64 编码,并指定在 .dockercfg 文件中。密钥名称最多可以包含 253 个字符。

    如果镜像拉取密钥的创建成功,则默认情况下会选择它。如果创建失败,则不会应用任何密钥。

  • CPU 要求(核心数)内存要求(MiB):您可以指定容器的最小 资源限制。默认情况下,Pod 以无限制的 CPU 和内存限制运行。

  • 运行命令运行命令参数:默认情况下,您的容器运行指定的 Docker 镜像的默认 入口命令。您可以使用命令选项和参数来覆盖默认设置。

  • 以特权模式运行:此设置确定 特权容器 中的进程是否等同于在主机上以 root 用户身份运行的进程。特权容器可以利用诸如操作网络堆栈和访问设备等功能。

  • 环境变量:Kubernetes 通过 环境变量 暴露 Services。您可以组合环境变量或使用环境变量的值将参数传递给您的命令。它们可以用于应用程序以查找 Service。值可以使用 $(VAR_NAME) 语法引用其他变量。

上传 YAML 或 JSON 文件

Kubernetes 支持声明式配置。在这种风格中,所有配置都存储在清单(YAML 或 JSON 配置文件)中。清单使用 Kubernetes API 资源模式。

作为在部署向导中指定应用程序详细信息的替代方案,您可以将应用程序定义在一个或多个清单中,并使用 Dashboard 上传这些文件。

使用 Dashboard

以下部分描述了 Kubernetes Dashboard UI 的视图;它们提供的功能以及如何使用它们。

当集群中定义了 Kubernetes 对象时,Dashboard 会在初始视图中显示它们。默认情况下,仅显示 default 命名空间中的对象,可以使用导航菜单中位于的命名空间选择器进行更改。

Dashboard 显示大多数 Kubernetes 对象类型,并将它们分组到几个菜单类别中。

管理员概览

对于集群和命名空间管理员,Dashboard 会列出 Nodes、Namespaces 和 PersistentVolumes,并具有它们的详细视图。节点列表视图包含聚合到所有节点上的 CPU 和内存使用情况指标。详细视图显示节点的指标、规范、状态、已分配的资源、事件以及在节点上运行的 Pod。

工作负载

显示在所选命名空间中运行的所有应用程序。该视图按工作负载类型(例如:Deployments、ReplicaSets、StatefulSets)列出应用程序。可以单独查看每种工作负载类型。列表总结了有关工作负载的可操作信息,例如 ReplicaSet 的就绪 Pod 数量或 Pod 的当前内存使用量。

工作负载的详细视图显示状态和规范信息,并显示对象之间的关系。例如,ReplicaSet 正在控制的 Pod,或 Deployments 的新 ReplicaSet 和 HorizontalPodAutoscalers。

服务

显示允许将服务暴露到外部世界并在集群内发现服务的 Kubernetes 资源。因此,Service 和 Ingress 视图显示由它们定位的 Pod、集群内部连接的内部端点以及外部用户的外部端点。

存储

存储视图显示 PersistentVolumeClaim 资源,这些资源由应用程序用于存储数据。

ConfigMaps 和 Secrets

显示所有用于集群中运行的应用程序的实时配置的 Kubernetes 资源。该视图允许编辑和管理配置对象,并默认显示隐藏的密钥。

日志查看器

Pod 列表和详细页面链接到内置于 Dashboard 中的日志查看器。该查看器允许深入查看属于单个 Pod 的容器的日志。

Logs viewer

接下来

有关更多信息,请参阅 Kubernetes Dashboard 项目页面

最后修改时间为 2026 年 2 月 03 日下午 5:52 PST:使用页面信息而不是警告提示。(3e0aa51ca3)