OpenLens 完全使用指南

OpenLens 是一个开源的 Kubernetes IDE(集成开发环境),它让你无需记忆复杂的 kubectl 命令,就能通过图形化界面轻松管理本地或远程的 Kubernetes 集群。


📥 第一部分:安装与准备

1. 前置条件

  • 操作系统:Windows, macOS, 或 Linux。
  • 依赖工具
    • kubectl:必须安装并配置好环境变量(OpenLens 内部会调用它)。
    • Kubeconfig :确保你本地 ~/.kube/config 文件中至少有一个可用的集群配置。
    • Docker Desktop / Minikube / Kind(可选):如果你想在本地练习,需要先安装其中一个来运行集群。

2. 下载安装

  • 官方地址 :访问 OpenLens GitHub Releases 下载对应系统的安装包。
  • 安装步骤
    • Windows/macOS :下载 .exe.dmg 文件,双击运行并按提示安装。
    • Linux :下载 .AppImage.deb/.rpm 包进行安装。
  • 首次启动 :打开应用,它会自动扫描 ~/.kube/config 并加载所有可用集群。

🖥️ 第二部分:核心界面导览

启动后,你首先看到的是 Cluster Catalog (集群目录) 页。

1. 集群目录页 (Catalog)

这是你的"总控台",列出所有已识别的集群。

  • 列表信息
    • Name :集群名称(如 docker-desktop, my-aliyun-cluster)。
    • Status :连接状态(绿色 Connected 表示正常,红色表示失败)。
    • Version:K8s 版本。
    • Distro :发行版(如 docker-desktop, eks, kubeadm)。
  • 操作
    • 双击 任意集群行 → 进入该集群的管理仪表盘。
    • 右键/三点菜单 → 可移除集群、编辑配置或查看 YAML。
    • + 按钮 → 手动添加新的 Kubeconfig 文件或粘贴配置内容。

2. 集群管理页 (Dashboard)

双击进入后,左侧会出现完整的功能导航栏,这是你日常工作的核心区域。

模块 功能说明 常用场景
Overview 集群概览 查看节点状态、资源使用趋势(需 Prometheus)、最近事件。
Workloads 工作负载 最常用! 管理 Pods, Deployments, StatefulSets, Jobs, CronJobs。
Network 网络 管理 Services (服务暴露), Ingress (路由规则), Network Policies。
Config 配置 管理 ConfigMaps (配置文件), Secrets (敏感密钥)。
Storage 存储 管理 PersistentVolumeClaims (PVC), StorageClasses。
Namespaces 命名空间 切换不同的逻辑隔离环境(如 default, kube-system, prod)。
Events 事件流 排错第一站! 查看集群内发生的所有警告和错误事件。
Helm 包管理 安装/升级/卸载 Helm Charts(类似应用商店)。
Terminal 终端 内置已配置好 kubectl 的命令行终端,无需切换窗口。

🌐 第三部分:连接远程集群

OpenLens 本身不直接"连接"服务器,而是读取本地的 kubeconfig 文件。只要 kubectl 能连上,OpenLens 就能连上。

方法 A:合并 Kubeconfig (推荐)

适用于长期管理多个集群。

  1. 获取配置 :从云厂商控制台(阿里云/腾讯云/AWS等)或远程服务器 (/etc/kubernetes/admin.conf) 下载 kubeconfig 文件。
  2. 合并文件
bash 复制代码
# Mac/Linux
export KUBECONFIG=~/.kube/config:~/downloaded-config.yaml
kubectl config view --flatten > ~/.kube/config.new
mv ~/.kube/config.new ~/.kube/config

# Windows (PowerShell)
$env:KUBECONFIG="$env:USERPROFILE\.kube\config;$env:USERPROFILE\downloaded-config.yaml"
kubectl config view --flatten | Out-File -FilePath "$env:USERPROFILE\.kube\config.new"
Move-Item "$env:USERPROFILE\.kube\config.new" "$env:USERPROFILE\.kube\config" -Force
  1. 重启 OpenLens:新集群会自动出现在 Catalog 列表中。

方法 B:界面手动添加

适用于临时测试。

  1. 点击 OpenLens 左下角 Settings (⚙️) -> Clusters
  2. 点击 + Add Cluster
  3. 选择 Paste Kubeconfig 粘贴内容,或 Choose File 上传文件。
  4. 添加成功后,回到 Catalog 即可看到。

🔍 常见连接问题排查

  • Connection Timeout:检查防火墙/安全组,确保你的本地 IP 被允许访问集群 API Server (默认端口 6443)。
  • Certificate Expired:证书过期,需重新下载最新的 kubeconfig 或在服务端更新证书。
  • Metrics 不可用:如果 CPU/内存图表为空,通常是因为集群未安装 Prometheus。这不影响管理功能,可忽略或自行安装监控组件。

🚀 第四部分:新手实战流程

1. 查看系统组件

  • 进入 Workloads → Pods
  • 切换 Namespace 为 kube-system
  • 观察 coredns, etcd, kube-proxy 等核心组件的运行状态。

2. 部署第一个应用 (Nginx)

  • 方式一 (UI 操作)
    1. 进入 Workloads → Deployments
    2. 点击右上角 + 号。
    3. 填写 Name: my-nginx, Image: nginx:latest, Replicas: 1
    4. 点击 Create。
  • 方式二 (Terminal)
    1. 点击底部 Terminal 标签。
    2. 输入:kubectl create deployment my-nginx --image=nginx

3. 暴露服务并访问

  • 进入 Network → Services
  • 找到刚才部署的应用(如果没有 Service,需创建一个:kubectl expose deployment my-nginx --port=80 --type=NodePort)。
  • 点击 Service 右侧的 菜单 → 选择 Port Forward
  • 设置本地端口(如 8080),点击启动。
  • 浏览器访问 http://localhost:8080 即可看到 Nginx 欢迎页。

4. 调试与日志

  • Pods 列表点击某个 Pod 名称。
  • Logs 标签:实时查看容器输出日志。
  • Shell 标签:直接进入容器内部执行命令(如 ls, top)。
  • Events 标签:查看该 Pod 相关的调度、启动事件(排错关键)。

💡 第五部分:高效技巧与最佳实践

  1. 利用搜索框
    在任意列表页(如 Pods),顶部都有搜索框。支持按名称、标签、状态快速过滤。
  2. 多集群管理
    • 给不同环境的集群打标签(右键集群 → Edit Labels),如 env=prod, env=dev
    • 在 Catalog 页搜索 env=prod 快速定位生产集群。
  3. YAML 编辑
    • 在任何资源详情页,点击 YAML 标签可直接查看和编辑原始配置。
    • 修改后点击 Save 立即生效(支持热更新)。
  4. 内置终端
    • 不要切出软件去开命令行,直接使用底部的 Terminal 标签,它已经自动配置好了当前集群的 context。
  5. 插件扩展 (Extensions)
    • 点击左侧 Extensions 图标,可以安装社区插件(如 Grafana 集成、额外的图表类型等),增强功能。

❓ 常见问题 (FAQ)

Q: 为什么 CPU/内存图表是空的?

A: OpenLens 依赖 Prometheus 获取监控数据。本地 Docker Desktop 或某些精简集群默认未安装。这不影响部署和管理,如需监控可自行部署 Prometheus Operator。

Q: 可以在 OpenLens 里删除集群吗?

A: 在 Catalog 页点击 "Remove" 只是从列表中移除显示,不会 删除实际的 Kubernetes 集群。删除实际集群需要在服务器端操作。

Q: 权限不足怎么办?

A: 确保你的 kubeconfig 中的用户拥有足够的 RBAC 权限。如果是云集群,可能需要联系管理员授权。


🎉 总结:OpenLens 将复杂的 Kubernetes 命令行操作可视化,极大地降低了学习和运维门槛。从查看日志到部署应用,再到管理多集群,它都是你得力的助手。现在,开始你的 K8s 探索之旅吧!

相关推荐
菜萝卜子2 小时前
【k8s】K8s网络打通:CalicoBGP模式对接OpenWrt/FRR实战
网络·容器·kubernetes
lpfasd1232 小时前
Kubernetes (K8s) 入门指南:从容器混乱到云原生秩序
云原生·容器·kubernetes
D愿你归来仍是少年16 小时前
Kubernetes(K8s)系统学习指南
容器·kubernetes
岁岁种桃花儿17 小时前
kubenetes从入门到上天系列第十九篇:Kubernetes安装Nginx ingress controller
java·nginx·kubernetes
馨谙19 小时前
Kubernetes 核心技术之 Namespace:资源隔离与环境管理全解析
容器·kubernetes
道清茗19 小时前
【Kubernetes知识点问答题】Pod
云原生·容器·kubernetes
ai产品老杨20 小时前
终结协议孤岛:基于GB28181/RTSP融合网关的多品牌设备统一接入与边缘推流方案
人工智能·docker·架构·kubernetes·音视频
江畔何人初1 天前
HPA是如何在k8s集群实现自动扩缩容机制的
linux·运维·服务器·云原生·kubernetes
道清茗1 天前
【Kubernetes知识点问答题】Namespace(命名空间)
云原生·kubernetes·namespace