通过kubectl连接集群

容器引擎 CCE

  • 功能发布记录
  • 产品描述
    • 介绍
    • 优势
    • 使用限制
    • 应用场景
    • 核心概念
    • 特性
  • 开发指南
    • EFK日志采集系统部署指南
    • 创建LoadBalancer类型的Service
    • Prometheus监控系统部署指南
    • kubectl管理配置
    • 在CCE集群中使用-Network-Policy
  • 常用工具
    • 视图命令行场景示例
  • 产品公告
    • CCE 新版集群管理发布公告
    • CCE 控制台升级公告
    • Kubernetes 版本发布说明
      • CCE发布Kubernetes 1.18版本说明
      • CCE发布Kubernetes 1.30版本说明
      • CCE Kubernetes 版本更新说明
      • CCE发布Kubernetes 1.22版本说明
      • CCE发布Kubernetes 1.20版本说明
      • CCE发布Kubernetes 1.28版本说明
      • CCE发布Kubernetes 1.24版本说明
      • CCE发布Kubernetes 1.26版本说明
    • 安全漏洞修复公告
      • 漏洞CVE-2020-14386修复公告
      • 修复漏洞CVE-2021-30465公告
      • 漏洞CVE-2019-5736修复公告
      • 漏洞CVE-2025-1097、CVE-2025-1098等修复公告
      • 关于 runc 的安全问题(CVE-2024-21626)影响声明
  • 快速入门
    • 快速部署nginx应用
    • 使用CCE容器引擎流程概述
  • 典型实践
    • CCE集群网络说明及规划
    • CCE典型实践之容器网络模式选择
    • Pod异常问题排查
    • 通过 CCE Ingress 实现虚机和容器服务的统一接入
    • CCE集群使用Jenkins持续发布
    • CCE-访问公网实践
    • Linux系统配置常用参数说明
    • 用户使用自定义 CNI 插件方法
    • CCE典型实践之Guestbook搭建
    • 使用KMS对etcd数据加密
    • 添加CGroup V2节点
    • CCE容器运行时选择
    • CCE使用检查清单
    • VPC-ENI模式集群访问公网实践
    • 利用 Velero 实现将应用跨云迁移到 百度CCE
    • 使用 CNI 配置容器内网络参数
    • CCE Resource Recommender 用户文档
    • CCE集群中使用私有镜像实践
    • 云原生AI
      • 使用 CCE AITraining Operator 实现弹性容错训练
      • 部署 TensorFlow Serving 推理服务
      • GPU虚拟化之隔离性最优型的最佳实践
  • 操作指南
    • 多用户访问控制
    • 使用须知
    • 命名空间管理
      • 设置资源配额
      • 设置资源限制
      • 命名空间基本操作
    • 弹性伸缩
      • 使用 cce-autoscaling-placeholder 实现秒级弹性伸缩
      • CCE 集群节点自动伸缩
      • 容器定时水平伸缩(CronHPA)
      • 容器水平伸缩(HPA)
    • 存储管理
      • 使用云盘CDS
      • 使用并行文件存储PFS
      • 使用对象存储BOS
      • 使用并行文件存储PFS L2
      • 使用本地存储
      • 使用数据湖存储加速工具RapidFS
      • 使用文件存储CFS
      • 概述
    • 节点管理
      • 移出节点
      • kubelet容器监控只读端口风险提示
      • 管理污点
      • 设置GPU显存共享
      • 添加节点
      • 自定义Kubelet参数
      • 设置节点封锁
      • 节点排水
      • 管理节点标签
    • 组件管理
      • CCE CSI BOS Plugin 说明
      • Kube Scheduler 说明文档
      • CCE CSI PFS L2 Plugin
      • CCE NodeLocal DNSCache 说明
      • CCE Ingress NGINX Controller 说明
      • CCE RDMA Device Plugin 说明
      • CCE Node Problem Detector 说明
      • CCE Credential Controller 说明
      • Kube Controller Manager 说明
      • CCE Ingress Controller 说明
      • CCE GPU Manager 说明
      • CCE Backup Controller 说明
      • CCE QoS Agent 说明
      • CCE Descheduler 说明
      • 组件概述
      • CCE Image Accelerate 说明
      • CCE Network Plugin说明
      • Kube ApiServer 说明
      • CCE Log Operator 说明
      • CoreDNS 说明
      • CCE NPU Manager 说明
      • CCE AI Job Scheduler 说明
      • CCE LB Controller 说明
      • CCE P2P Accelerator 说明
      • CCE_Hybrid_Manager说明
      • CCE CSI PFS Plugin 说明
      • CCE Deep Learning Frameworks Operator 说明
      • CCE Node Remedier 说明
      • CCE CSI CDS Plugin 说明
      • CCE Ascend Mindx DL说明
      • CCE Calico Felix 说明
      • CCE Virtual Kubelet组件
      • CCE Fluid说明
      • CCE Onepilot 说明
      • CCE CronHPA Controller 说明
      • CCE 动态调度插件说明
    • 云原生AI
      • 云原生AI概述
      • GPU虚拟化
        • MPS 最佳实践&注意事项
        • GPU独占和共享说明
        • GPU在离线混部使用说明
        • GPU虚拟化适配表
        • 单GPU容器共享多卡使用说明
        • 共享GPU场景下的镜像构建注意事项
        • 关闭节点显存共享功能注意事项
      • 队列管理
        • 逻辑队列和物理队列使用说明
        • 修改队列
        • 删除队列
        • 新建队列
      • 任务管理
        • 基于 NCCL的RDMA分布式训练示例
        • 新建AITraining任务
        • 新建PaddlePaddle任务
        • 删除任务
        • 查看任务信息
        • 新建Mxnet任务
        • 新建TensorFlow任务
        • 新建Pytorch任务
      • 数据集管理
        • 删除数据集
        • 操作数据集
        • 查看数据集
        • 新建数据集
      • AI监控大盘
        • 接入监控实例并开启采集任务
        • NVIDIA芯片资源观测
          • AI Job Scheduler组件
          • GPUManager组件
          • GPU资源池总览
          • GPU节点资源
          • GPU工作负载资源
        • 昇腾芯片资源观测
          • 昇腾节点资源
          • 昇腾资源池总览
          • 昇腾工作负载资源
      • AI 加速套件
        • 使用AIAK-Inference 加速推理业务
        • 使用AIAK-Training Pytorch版
        • AIAK 简介
        • 使用 AIAK-Training 部署分布式训练任务
    • Helm管理
      • Helm模板
      • Helm实例
    • 应用管理
      • 部署
      • 保密字典
      • 服务
      • 配置字典
      • 容器组
      • 概述
    • 镜像仓库
      • 使用容器镜像构建服务
      • 镜像仓库基本操作
    • Serverless集群
      • 在Serverless集群中使用Service
      • 产品概述
      • 创建Serverless集群
    • 工作负载
      • 设置工作负载自动水平伸缩
      • Statefulset管理
      • 使用私有镜像创建工作负载
      • Job管理
      • 查看容器组
      • CronJob管理
      • Daemonset管理
      • 免密拉取容器镜像
      • Deployment管理
    • 节点组管理
      • 节点组管理
      • 节点组介绍
      • 升级节点组
      • 添加外部已有节点
      • 自定义节点组 Kubelet 配置
      • 添加备选机型
      • 节点组节点故障检测自愈
      • 配置扩缩容策略
    • 监控日志
      • 使用Prometheus监控集群
      • CCE 事件中心
      • 集群审计仪表盘
      • CCE 集群异常事件报警
      • Java应用监控
      • 集群服务画像
      • 日志管理
      • 集群审计
      • 日志中心
        • 在容器引擎控制台配置采集规则
        • 查看集群控制面日志
        • 日志概述
        • 查看业务日志
        • 使用CRD配置采集规则
    • 网络管理
      • CCE 集群内容器访问集群外服务
      • 容器网段空间耗尽如何继续扩容(VPC-ENI模式)
      • 容器网段空间耗尽如何继续扩容(VPC网络模式)
      • CCE IP Masquerade Agent 用户指南
      • 创建VPC-ENI模式集群
      • 对等连接场景下容器流量转发配置
      • 使用Network Policy网络策略
      • CCE 支持 IPv4 和 IPv6 双栈网络
      • 在CCE集群中使用NetworkPolicy
      • 网络编排
        • 集群 Pod 子网拓扑分布(容器网络 v2)
        • 容器网络 QoS 管理
        • VPC-ENI指定子网分配IP(容器网络 v2)
      • 网络连通性
        • 容器网络通过 NAT 网关访问公网
      • 网络维护
        • CCE容器网络常见错误码对应表
      • DNS
        • DNS 原理概述
        • DNS 问题排查指南
        • CoreDNS 组件手动升级指南
    • 虚拟节点
      • 管理虚拟节点
      • 配置BCIPod
      • 配置bci-profile
    • 备份中心
      • 备份概述
      • 恢复管理
      • 备份仓库
      • 备份管理
    • 巡检与诊断
      • GPU运行环境检查
      • 集群巡检
      • 故障诊断
    • 流量接入
      • NGINX Ingress 使用配置参考
      • CCE基于nginx-ingress实现灰度发布
      • BLB Ingress Annotation说明
      • 通过CCE使用K8S_Ingress
      • 通过YAML创建LoadBalancer_Service
      • 通过CCE使用K8S_Service
      • LoadBalancer Service Annotation说明
      • 使用直连 Pod 模式 LoadBalancer Service
      • Service复用已有负载均衡BLB
      • 通过YAML创建CCE_Ingress
      • 使用 NGINX Ingress
    • 权限管理
      • 配置集群OIDC认证
      • 配置IAM标签权限策略
      • 配置IAM自定义权限策略
      • 配置IAM预置权限策略
      • 权限概述
      • 配置预置RBAC权限策略
    • 配置管理
      • Secret管理
      • Configmap管理
    • 集群管理
      • 集群快照
      • CCE 安全组
      • 查看集群
      • 创建集群
      • 操作集群
      • 升级集群Kubernetes版本
      • 通过kubectl连接集群
      • 托管集群使用说明
      • CCE 支持 GPUSharing 集群
      • CCE节点资源预留说明
      • CCE 节点 CDS 扩容
  • 服务等级协议SLA
    • CCE服务等级协议SLA(V1.0)
  • Solution-Fabric
    • Fabric解决方案
  • API参考
    • 通用说明
    • 公共头和错误返回
    • 概述
  • 常见问题
    • windows下使用kubectl
    • 自动扩缩容常见问题
    • 通过kubectl创建简单的服务
    • 业务应用如何使用负载均衡?
    • 常见问题总览
    • 集群管理常见问题
  • API_V2参考
    • 通用说明
    • Instance相关接口
    • 附录
    • Autoscaler相关接口
    • 组件管理相关接口
    • 套餐适配相关接口
    • Task相关接口
    • 公共头和错误返回
    • Network相关接口
    • 服务域名
    • Cluster相关接口
    • Kubeconfig相关接口
    • InstanceGroup相关接口
    • RBAC相关接口
    • 概述
  • 产品定价
    • 产品定价
  • Solution-Xchain
    • 超级链解决方案
  • SDK
    • Go-SDK
      • 节点组管理
      • 节点管理
      • 集群管理
      • 初始化
      • 安装SDK工具包
      • 概述
所有文档
menu
没有找到结果,请重新输入

容器引擎 CCE

  • 功能发布记录
  • 产品描述
    • 介绍
    • 优势
    • 使用限制
    • 应用场景
    • 核心概念
    • 特性
  • 开发指南
    • EFK日志采集系统部署指南
    • 创建LoadBalancer类型的Service
    • Prometheus监控系统部署指南
    • kubectl管理配置
    • 在CCE集群中使用-Network-Policy
  • 常用工具
    • 视图命令行场景示例
  • 产品公告
    • CCE 新版集群管理发布公告
    • CCE 控制台升级公告
    • Kubernetes 版本发布说明
      • CCE发布Kubernetes 1.18版本说明
      • CCE发布Kubernetes 1.30版本说明
      • CCE Kubernetes 版本更新说明
      • CCE发布Kubernetes 1.22版本说明
      • CCE发布Kubernetes 1.20版本说明
      • CCE发布Kubernetes 1.28版本说明
      • CCE发布Kubernetes 1.24版本说明
      • CCE发布Kubernetes 1.26版本说明
    • 安全漏洞修复公告
      • 漏洞CVE-2020-14386修复公告
      • 修复漏洞CVE-2021-30465公告
      • 漏洞CVE-2019-5736修复公告
      • 漏洞CVE-2025-1097、CVE-2025-1098等修复公告
      • 关于 runc 的安全问题(CVE-2024-21626)影响声明
  • 快速入门
    • 快速部署nginx应用
    • 使用CCE容器引擎流程概述
  • 典型实践
    • CCE集群网络说明及规划
    • CCE典型实践之容器网络模式选择
    • Pod异常问题排查
    • 通过 CCE Ingress 实现虚机和容器服务的统一接入
    • CCE集群使用Jenkins持续发布
    • CCE-访问公网实践
    • Linux系统配置常用参数说明
    • 用户使用自定义 CNI 插件方法
    • CCE典型实践之Guestbook搭建
    • 使用KMS对etcd数据加密
    • 添加CGroup V2节点
    • CCE容器运行时选择
    • CCE使用检查清单
    • VPC-ENI模式集群访问公网实践
    • 利用 Velero 实现将应用跨云迁移到 百度CCE
    • 使用 CNI 配置容器内网络参数
    • CCE Resource Recommender 用户文档
    • CCE集群中使用私有镜像实践
    • 云原生AI
      • 使用 CCE AITraining Operator 实现弹性容错训练
      • 部署 TensorFlow Serving 推理服务
      • GPU虚拟化之隔离性最优型的最佳实践
  • 操作指南
    • 多用户访问控制
    • 使用须知
    • 命名空间管理
      • 设置资源配额
      • 设置资源限制
      • 命名空间基本操作
    • 弹性伸缩
      • 使用 cce-autoscaling-placeholder 实现秒级弹性伸缩
      • CCE 集群节点自动伸缩
      • 容器定时水平伸缩(CronHPA)
      • 容器水平伸缩(HPA)
    • 存储管理
      • 使用云盘CDS
      • 使用并行文件存储PFS
      • 使用对象存储BOS
      • 使用并行文件存储PFS L2
      • 使用本地存储
      • 使用数据湖存储加速工具RapidFS
      • 使用文件存储CFS
      • 概述
    • 节点管理
      • 移出节点
      • kubelet容器监控只读端口风险提示
      • 管理污点
      • 设置GPU显存共享
      • 添加节点
      • 自定义Kubelet参数
      • 设置节点封锁
      • 节点排水
      • 管理节点标签
    • 组件管理
      • CCE CSI BOS Plugin 说明
      • Kube Scheduler 说明文档
      • CCE CSI PFS L2 Plugin
      • CCE NodeLocal DNSCache 说明
      • CCE Ingress NGINX Controller 说明
      • CCE RDMA Device Plugin 说明
      • CCE Node Problem Detector 说明
      • CCE Credential Controller 说明
      • Kube Controller Manager 说明
      • CCE Ingress Controller 说明
      • CCE GPU Manager 说明
      • CCE Backup Controller 说明
      • CCE QoS Agent 说明
      • CCE Descheduler 说明
      • 组件概述
      • CCE Image Accelerate 说明
      • CCE Network Plugin说明
      • Kube ApiServer 说明
      • CCE Log Operator 说明
      • CoreDNS 说明
      • CCE NPU Manager 说明
      • CCE AI Job Scheduler 说明
      • CCE LB Controller 说明
      • CCE P2P Accelerator 说明
      • CCE_Hybrid_Manager说明
      • CCE CSI PFS Plugin 说明
      • CCE Deep Learning Frameworks Operator 说明
      • CCE Node Remedier 说明
      • CCE CSI CDS Plugin 说明
      • CCE Ascend Mindx DL说明
      • CCE Calico Felix 说明
      • CCE Virtual Kubelet组件
      • CCE Fluid说明
      • CCE Onepilot 说明
      • CCE CronHPA Controller 说明
      • CCE 动态调度插件说明
    • 云原生AI
      • 云原生AI概述
      • GPU虚拟化
        • MPS 最佳实践&注意事项
        • GPU独占和共享说明
        • GPU在离线混部使用说明
        • GPU虚拟化适配表
        • 单GPU容器共享多卡使用说明
        • 共享GPU场景下的镜像构建注意事项
        • 关闭节点显存共享功能注意事项
      • 队列管理
        • 逻辑队列和物理队列使用说明
        • 修改队列
        • 删除队列
        • 新建队列
      • 任务管理
        • 基于 NCCL的RDMA分布式训练示例
        • 新建AITraining任务
        • 新建PaddlePaddle任务
        • 删除任务
        • 查看任务信息
        • 新建Mxnet任务
        • 新建TensorFlow任务
        • 新建Pytorch任务
      • 数据集管理
        • 删除数据集
        • 操作数据集
        • 查看数据集
        • 新建数据集
      • AI监控大盘
        • 接入监控实例并开启采集任务
        • NVIDIA芯片资源观测
          • AI Job Scheduler组件
          • GPUManager组件
          • GPU资源池总览
          • GPU节点资源
          • GPU工作负载资源
        • 昇腾芯片资源观测
          • 昇腾节点资源
          • 昇腾资源池总览
          • 昇腾工作负载资源
      • AI 加速套件
        • 使用AIAK-Inference 加速推理业务
        • 使用AIAK-Training Pytorch版
        • AIAK 简介
        • 使用 AIAK-Training 部署分布式训练任务
    • Helm管理
      • Helm模板
      • Helm实例
    • 应用管理
      • 部署
      • 保密字典
      • 服务
      • 配置字典
      • 容器组
      • 概述
    • 镜像仓库
      • 使用容器镜像构建服务
      • 镜像仓库基本操作
    • Serverless集群
      • 在Serverless集群中使用Service
      • 产品概述
      • 创建Serverless集群
    • 工作负载
      • 设置工作负载自动水平伸缩
      • Statefulset管理
      • 使用私有镜像创建工作负载
      • Job管理
      • 查看容器组
      • CronJob管理
      • Daemonset管理
      • 免密拉取容器镜像
      • Deployment管理
    • 节点组管理
      • 节点组管理
      • 节点组介绍
      • 升级节点组
      • 添加外部已有节点
      • 自定义节点组 Kubelet 配置
      • 添加备选机型
      • 节点组节点故障检测自愈
      • 配置扩缩容策略
    • 监控日志
      • 使用Prometheus监控集群
      • CCE 事件中心
      • 集群审计仪表盘
      • CCE 集群异常事件报警
      • Java应用监控
      • 集群服务画像
      • 日志管理
      • 集群审计
      • 日志中心
        • 在容器引擎控制台配置采集规则
        • 查看集群控制面日志
        • 日志概述
        • 查看业务日志
        • 使用CRD配置采集规则
    • 网络管理
      • CCE 集群内容器访问集群外服务
      • 容器网段空间耗尽如何继续扩容(VPC-ENI模式)
      • 容器网段空间耗尽如何继续扩容(VPC网络模式)
      • CCE IP Masquerade Agent 用户指南
      • 创建VPC-ENI模式集群
      • 对等连接场景下容器流量转发配置
      • 使用Network Policy网络策略
      • CCE 支持 IPv4 和 IPv6 双栈网络
      • 在CCE集群中使用NetworkPolicy
      • 网络编排
        • 集群 Pod 子网拓扑分布(容器网络 v2)
        • 容器网络 QoS 管理
        • VPC-ENI指定子网分配IP(容器网络 v2)
      • 网络连通性
        • 容器网络通过 NAT 网关访问公网
      • 网络维护
        • CCE容器网络常见错误码对应表
      • DNS
        • DNS 原理概述
        • DNS 问题排查指南
        • CoreDNS 组件手动升级指南
    • 虚拟节点
      • 管理虚拟节点
      • 配置BCIPod
      • 配置bci-profile
    • 备份中心
      • 备份概述
      • 恢复管理
      • 备份仓库
      • 备份管理
    • 巡检与诊断
      • GPU运行环境检查
      • 集群巡检
      • 故障诊断
    • 流量接入
      • NGINX Ingress 使用配置参考
      • CCE基于nginx-ingress实现灰度发布
      • BLB Ingress Annotation说明
      • 通过CCE使用K8S_Ingress
      • 通过YAML创建LoadBalancer_Service
      • 通过CCE使用K8S_Service
      • LoadBalancer Service Annotation说明
      • 使用直连 Pod 模式 LoadBalancer Service
      • Service复用已有负载均衡BLB
      • 通过YAML创建CCE_Ingress
      • 使用 NGINX Ingress
    • 权限管理
      • 配置集群OIDC认证
      • 配置IAM标签权限策略
      • 配置IAM自定义权限策略
      • 配置IAM预置权限策略
      • 权限概述
      • 配置预置RBAC权限策略
    • 配置管理
      • Secret管理
      • Configmap管理
    • 集群管理
      • 集群快照
      • CCE 安全组
      • 查看集群
      • 创建集群
      • 操作集群
      • 升级集群Kubernetes版本
      • 通过kubectl连接集群
      • 托管集群使用说明
      • CCE 支持 GPUSharing 集群
      • CCE节点资源预留说明
      • CCE 节点 CDS 扩容
  • 服务等级协议SLA
    • CCE服务等级协议SLA(V1.0)
  • Solution-Fabric
    • Fabric解决方案
  • API参考
    • 通用说明
    • 公共头和错误返回
    • 概述
  • 常见问题
    • windows下使用kubectl
    • 自动扩缩容常见问题
    • 通过kubectl创建简单的服务
    • 业务应用如何使用负载均衡?
    • 常见问题总览
    • 集群管理常见问题
  • API_V2参考
    • 通用说明
    • Instance相关接口
    • 附录
    • Autoscaler相关接口
    • 组件管理相关接口
    • 套餐适配相关接口
    • Task相关接口
    • 公共头和错误返回
    • Network相关接口
    • 服务域名
    • Cluster相关接口
    • Kubeconfig相关接口
    • InstanceGroup相关接口
    • RBAC相关接口
    • 概述
  • 产品定价
    • 产品定价
  • Solution-Xchain
    • 超级链解决方案
  • SDK
    • Go-SDK
      • 节点组管理
      • 节点管理
      • 集群管理
      • 初始化
      • 安装SDK工具包
      • 概述
  • 文档中心
  • arrow
  • 容器引擎CCE
  • arrow
  • 操作指南
  • arrow
  • 集群管理
  • arrow
  • 通过kubectl连接集群
本页目录
  • 通过kubectl连接Kubernetes集群
  • 前提条件
  • 操作步骤
  • 通过kubectl创建简单的服务
  • 创建一个nginx应用
  • 暴露服务到internet
  • 本地访问 Kubernetes Dashboard (Web UI)
  • 通过Kubernetes-Dashboard创建服务
  • 使用私有镜像创建服务
  • windows 下使用kubectl

通过kubectl连接集群

更新时间:2025-08-21

通过kubectl连接Kubernetes集群

如果用户需要从本地个人计算机连接到百度智能云的 Kubernetes 集群,需要使用 Kubernetes 命令行客户端 kubectl。kubectl 是 Kubernetes 提供的一种命令行工具,它用于与 Kubernetes 集群进行交互,帮助用户管理集群中的资源、查看集群状态、部署应用程序、进行调试等操作。通过 kubectl,您可以方便地在命令行界面上执行集群管理任务。可以选择两种访问方式:

  • 内网访问:客户端通过内网IP地址与集群的API Server进行通信,数据流量不会经过互联网,安全性更强。
  • 公网访问:集群的API Server会暴露一个公共接口,客户端可以通过互联网访问Kubernetes集群。注意:公网访问需要集群开启 API Server 公网访问。

前提条件

  • 已创建集群。详细操作,请参见 创建集群。

操作步骤

使用 kubectl 连接集群时,您需要先在客户端中安装 kubectl。随后在集群中下载 kubectl 配置文件,并复制至客户端,在客户端中完成相关配置后即可访问对应的 CCE 集群。使用kubectl连接集群的具体步骤如下:

注意:

本操作指南给出的操作步骤都是基于linux操作环境的。

  1. 下载kubectl
    您需要准备一台可访问公网的客户端计算机。参考 安装工具 根据机器操作系统找到下载kubectl的对应步骤。如果已经安装kubectl,则跳过此步骤,您可执行kubectl version命令判断是否已安装kubectl。
    注意: 根据集群版本下载同版本的kubectl, 集群版本查看方式参考下图。

    截屏2025-05-27 17.32.56.png

  2. 下载集群凭证:
    可在集群列表查看集群凭证,也可在集群详情页查看集群凭证

a. VPC访问凭证:在查看集群凭证弹窗,选择VPC访问凭证,单击下载长期访问凭证,或下载临时访问凭证,获取集群私网访问凭证。
image.png

b.公网访问凭证:在集群基本信息页签下的集群连接模块,查看 API Server 公网访问 是否已开启。 若未打开 API Server 公网访问,请选择开启。在查看集群凭证弹窗,选择公网访问凭证,单击下载长期访问凭证,或下载临时访问凭证下载集群公网访问凭证。
image.png

  1. 配置kubectl:将下载的集群凭证放在 kubectl 的默认配置路径。
    a.登录到您的客户端计算机,复制步骤3中下载的访问凭证文件(以kubeconfig.yaml为例)到您客户端机器的/home目录下。
    b.配置kubectl文件。

    Plain Text
    1cd $HOME
    2mkdir -p $HOME/.kube
    3mv -f kubeconfig.yaml $HOME/.kube/config

    c.根据使用场景,切换kubectl的访问模式。

    • VPC 内网接入访问请执行:
    Plain Text
    1kubectl config use-context internal
    • 互联网接入访问请执行(集群需绑定公网地址):
    Plain Text
    1kubectl config use-context external
  2. 配置完成后,在客户端中执行以下命令,检查客户端能否通过kubectl连接集群。

    Plain Text
    1kubectl cluster-info    # 查看集群信息

    若回显结果如下,则说明客户端能够通过kubectl连接集群。

    Plain Text
    1Kubernetes control plane is running at https://xx.xx.xx.xx:5443
    2CoreDNS is running at https://xx.xx.xx.xx:5443/api/v1/namespaces/kube-system/services/coredns:dns/proxy
    3To further debug and diagnose cluster problems, use 'kubectl cluster-info dump'.

通过kubectl创建简单的服务

创建一个nginx应用

这个命令假设kubectl命令行工具已经在PATH中,且有权限操作kubernetes集群(即已完成通过kubectl连接Kubernetes集群的操作)输入以下指令:

Plain Text
1kubectl create deployment  my-nginx --image=registry.baidubce.com/cce/nginx-alpine-go:latest --replicas=3 --port=80

上述命令会创建3个nginx容器,每个容器都会暴露它的80端口。

查看创建nginx容器状态的指令如下:

Plain Text
1$ kubectl get pods
2NAME                       READY     STATUS    RESTARTS   AGE
3my-nginx-858393261-pfjdn   1/1       Running   0          14s
4my-nginx-858393261-sn7g5   1/1       Running   0          14s
5my-nginx-858393261-spv8w   1/1       Running   0          14s

注意: 符号"$"代表输入的指令,其他行代表输入指令后显示的容器的信息。

暴露服务到internet

创建服务

在公有云环境下,可以通过输入命令,创建出一个类型为LoadBalancer的service,同时,还会联动公有云,创建一个负载均衡和一个公网IP,具体操作指令如下:

Plain Text
1kubectl expose deployment my-nginx --port=80 --type=LoadBalancer

注意:

负载均衡:通过将同一区域的多台百度智能云服务器虚拟成一个组,设置一个内网或外网的服务地址,将前端并发访问转发给后台多台云服务器,实现应用程序的流量均衡。您可以通过查询服务获取的公网IP,在百度智能云控制台中的负载均衡BLB页面找到您创建的BLB实例,其收费标准请参考负载均衡BLB定价。 公网IP:作为一个独立的商品为用户提供公网带宽服务。您可以通过查看服务来查询您创建的公网IP地址,其收费标准请参考弹性公网IP EIP的定价,且自动默认计费标准为后付费。

查看服务

  1. 通过查看服务的命令,可以看到这个服务的情况和创建出的公网IP。

    Plain Text
    1$ kubectl get services
    2NAME         CLUSTER-IP    EXTERNAL-IP      PORT(S)        AGE
    3kubernetes   172.17.0.1    <none>           443/TCP        1h
    4my-nginx     172.17.44.5   180.76.139.247   80:30356/TCP   47s
  2. 通过访问180.76.139.247这个链接可以看到创建的服务如图所示:

注意: 符号"$"代表输入的指令,其他行代表输入指令后显示的服务信息,其中180.76.139.247 为发布到外网的服务网址。 服务使用负载均衡除了上述指令调用之外,还可以通过Dashboard调用具体操作参考 通过Kubernetes-Dashboard创建服务

删除服务

如果需要删除服务,不想将对公网暴露。可以直接删除服务

Plain Text
1kubectl delete svc my-nginx

注意:

kubernetes会将刚才创建出的公网IP和负载均衡删除,然后也会删除创建的这个服务。

本地访问 Kubernetes Dashboard (Web UI)

前提条件

在本地使用 Kubernetes Dashboard 前,用户需要先配置好kubectl,能通过kubectl连接百度智能云的 Kubernetes 集群。

操作步骤

  1. 创建Dashboard服务。在本地通过kubectl工具,可以在kubernetes集群里创建一个Dashboard应用。
Plain Text
1$ kubectl create -f dashboard.yaml
2secret "kubernetes-dashboard-certs" created
3serviceaccount "kubernetes-dashboard" created
4clusterrolebinding "kubernetes-dashboard" created
5deployment "kubernetes-dashboard" created
6service "kubernetes-dashboard" created

对应的dashboard.yaml文件为:

Plain Text
1apiVersion: v1
2kind: Secret
3metadata:
4  labels:
5    k8s-app: kubernetes-dashboard
6  name: kubernetes-dashboard-certs
7  namespace: kube-system
8type: Opaque
9
10---
11
12apiVersion: v1
13kind: ServiceAccount
14metadata:
15  labels:
16    k8s-app: kubernetes-dashboard
17  name: kubernetes-dashboard
18  namespace: kube-system
19
20---
21
22apiVersion: v1
23kind: ClusterRoleBinding
24metadata:
25  name: kubernetes-dashboard
26  labels:
27    k8s-app: kubernetes-dashboard
28roleRef:
29  apiGroup: rbac.authorization.k8s.io
30  kind: ClusterRole
31  name: cluster-admin
32subjects:
33- kind: ServiceAccount
34  name: kubernetes-dashboard
35  namespace: kube-system
36
37---
38
39kind: Deployment
40apiVersion: apps/v1
41metadata:
42  labels:
43    k8s-app: kubernetes-dashboard
44  name: kubernetes-dashboard
45  namespace: kube-system
46spec:
47  replicas: 1
48  revisionHistoryLimit: 10
49  selector:
50    matchLabels:
51      k8s-app: kubernetes-dashboard
52  template:
53    metadata:
54      labels:
55        k8s-app: kubernetes-dashboard
56    spec:
57      containers:
58      - name: kubernetes-dashboard
59        image: registry.baidubce.com/public/dashboard:v1.8.3-caas
60        ports:
61        - containerPort: 8443
62          protocol: TCP
63        args:
64          - --auto-generate-certificates
65        volumeMounts:
66        - name: kubernetes-dashboard-certs
67          mountPath: /certs
68        - mountPath: /tmp
69          name: tmp-volume
70        livenessProbe:
71          httpGet:
72            scheme: HTTPS
73            path: /
74            port: 8443
75          initialDelaySeconds: 30
76          timeoutSeconds: 30
77      volumes:
78      - name: kubernetes-dashboard-certs
79        secret:
80          secretName: kubernetes-dashboard-certs
81      - name: tmp-volume
82        emptyDir: {}
83      serviceAccountName: kubernetes-dashboard
84      tolerations:
85      - key: node-role.kubernetes.io/master
86        effect: NoSchedule
87
88---
89kind: Service
90apiVersion: v1
91metadata:
92  labels:
93    k8s-app: kubernetes-dashboard
94  name: kubernetes-dashboard
95  namespace: kube-system
96spec:
97  ports:
98    - port: 443
99      targetPort: 8443
100  selector:
101    k8s-app: kubernetes-dashboard
  1. 在创建好dashboard之后,使用kubectl proxy命令开启一个代理,连接到Kubernetes API Server。
Plain Text
1kubectl proxy
  1. 成功开启代理后,可以在本地浏览器中访问http://127.0.0.1:8001/api/v1/namespaces/kube-system/services/https:kubernetes-dashboard:/proxy/#!/login,登录dashboard 可以选择令牌登录,创建令牌的方式如下,使用返回结果作为令牌登录。
Plain Text
1$ kubectl -n kube-system create token kubernetes-dashboard                                     
2eyJhbGciOiJSUzI1NiIsImtpZCI6ImREUzFpaHRJYnBLTV9jX1dmb05Bb2oxMXU0RE92QnhuejZ1WXJSYWo5MUEifQ.eyJhdWQiOlsia3ViZXJuZXRlcy5kZWZhdWx0LnN2YyJdLCJleHAiOjE3NDgzNDM0OTAsImlhdCI6MTc0ODMzOTg5MCwiaXNzIjoiaHR0cHM6Ly9rdWJlcm5ldGVzLmRlZmF1bHQuc3ZjLmNsdXN0ZXIubG9jYWwiLCJqdGkiOiJiM2Y1NGY0Yy0wNzExLTQzZmItYjdjNy1iOGQ2ZGIwNmU4ODYiLCJrdWJlcm5ldGVzLmlvIjp7Im5hbWVzcGFjZSI6Imt1YmUtc3lzdGVtIiwic2VydmljZWFjY291bnQiOnsibmFtZSI6ImNjZS12b2xjYW5vLWFkbWlzc2lvbiIsInVpZCI6IjJmOWVjYmMzLTAwMDItNDc3Zi05N2YzLThiMjkyODEwYWIwOSJ9fSwibmJmIjoxNzQ4MzM5ODkwLCJzdWIiOiJzeXN0ZW06c2VydmljZWFjY291bnQ6a3ViZS1zeXN0ZW06Y2NlLXZvbGNhbm8tYWRtaXNzaW9uIn0.bOw0vDkl2Q52H5Wa8X4N5QWlz3hOTGCK-ZkwSVT5A2gu0Qi2GjVKJPN00K4t19AXobzDmjIG-JEydVBN1n4SQ4GkW6_T_3lpwOV-P8JcAspTSi-0fHC5lR64TKVhS-HXNRECD2Z11K2eQuoZR0hP887sCGmuX1Xz6kb12YkBxuZgDaGEHS7fiVi67xTey2B2kYAzibn4KZfMBqLOBzmZ_aM2O_iWjUJ8isgwvwce5DAf8KT8YNsCW2pd6z7kaq-RWqmxUizXK3sFzvxoK4RLwGj1G1OSMpw6cFH0sLFuzR-gyIFLBOK9oyEsNnHhiqlpnBzVuamBpzwCLvvuwHVkKQ

截屏2025-05-09 18.09.58.png

注意:

localhost 是指的用户使用的本地机器,而不是虚拟机,且对应的IP地址为:127.0.0.1

  1. 登录成功后Dashboard 页面如下。

通过Kubernetes-Dashboard创建服务

  1. 完成本地访问 Kubernetes Dashboard (Web UI)后,进入Dshboard页面,点击右上角创建,开始创建服务;

  2. 进入创建应用页面,输入要创建的应用名称,容器镜像,容器组(Pod)数量;

  3. 服务中选择外部, 后台会完成EIP和BLB的创建,端口配置分别填写80,80,协议选择TCP,然后点击部署按钮开始服务创建;

  4. 等待服务创建成功,且页面需要手动刷新;

  5. 在创建成功页面点击服务按钮,进入服务页面;

  6. 在此页面中会显示服务的外网地址;

  7. 在浏览器中输入外网地址,显示服务创建成功;

使用私有镜像创建服务

如果用户需要使用私有镜像,需要先配置ImagePullSecrets,同时在创建的资源中指明此ImagePullSecrets。下面简要介绍创建步骤,更加详细的关于ImagePullSecrets的信息,可以参考Kubernetes官方文档。

  1. 通过kubectl创建ImagePullSecrets

    首先,用户需要有私有仓库空间的用户名密码,通过以下命令,可以创建出名为myregistrykey的ImagePullSecret

    Plain Text
    1$ kubectl create secret docker-registry myregistrykey --docker-server=DOCKER_REGISTRY_SERVER --docker-username=DOCKER_USER --docker-password=DOCKER_PASSWORD --docker-email=DOCKER_EMAIL
    2
    3secret "myregistrykey" created.
  2. 在需要创建的资源中使用此ImagePullSecret

    例如,下面的pod yaml文件里指明此Pod使用私有镜像registry.baidubce.com/private-online/awesomeapp:v1,同时通过myregistrykey这个imagePullSecrets去镜像仓库拉取镜像。

    Plain Text
    1  apiVersion: v1
    2  kind: Pod
    3  metadata:
    4    name: foo
    5    namespace: awesomeapps
    6  spec:
    7    containers:
    8      - name: foo
    9        image: registry.baidubce.com/private-online/awesomeapp:v1
    10    imagePullSecrets:
    11      - name: myregistrykey
  3. 在dashboard中指定创建服务的ImagePullSecrets

    在通过kubectl创建成功ImagePullSecrets后,在dashboard中创建应用时,也能选择使用ImagePullSecret。 例如下图中:


我们为即将创建的应用选择了前文创建的`myregistrykey`,这样kubernetes就有权限区拉取私有仓库的镜像了。

windows 下使用kubectl

  1. 创建集群之后,下载windows版本的kubectl工具,例如64位的工具如下:

注意: 下载kubectl之前,用户需要先登录自己的服务器使用指令kubectl version查看自己创建的集群的版本号,然后选择对应的kubectl版本进行下载。例如:用户的集群版本号为1.8,则需要下载的kubectl为1.8版。下载链接为https://github.com/kubernetes/kubernetes/blob/master/CHANGELOG/README.md,用户根据自己集群版本号,下载相应版本的工具。

  1. 下载之后,将其解压到任意目录,例如放在D盘下
  2. 在 目录C:\users\下进入用户的文件夹,例如用户名为foo,则文件夹应该为C:\users\foo,同时进入此目录,创建文件夹.kube

  3. 在集群列表页面,下载集群配置文件,放在上一步创建的.kube文件夹中,并且重名名为config

  4. 打开windows命令行提示符

  5. 进入kubectl文件存放的目录,运行kubectl.exe get node可以查看集群的节点。

  6. 在同一个目录下,创建dashboard.yaml文件,其内容是前文中的dashboard.yaml,例如可以用记事本创建:

  7. 然后输入kubectl.exe create -f dashboard.yaml创建dashboard

  8. 通过kubectl.exe get pod --all-namespaces命令可以查看是否创建成功

  9. 输入kubectl.exe proxy可以打开proxy,然后在浏览器中访问127.0.0.1:8001/ui 即可以访问dashboard



上一篇
升级集群Kubernetes版本
下一篇
托管集群使用说明