活动

天翼云最新优惠活动,涵盖免费试用,产品折扣等,助您降本增效!
热门活动
  • 618智算钜惠季 爆款云主机2核4G限时秒杀,88元/年起!
  • 免费体验DeepSeek,上天翼云息壤 NEW 新老用户均可免费体验2500万Tokens,限时两周
  • 云上钜惠 HOT 爆款云主机全场特惠,更有万元锦鲤券等你来领!
  • 算力套餐 HOT 让算力触手可及
  • 天翼云脑AOne NEW 连接、保护、办公,All-in-One!
  • 中小企业应用上云专场 产品组合下单即享折上9折起,助力企业快速上云
  • 息壤高校钜惠活动 NEW 天翼云息壤杯高校AI大赛,数款产品享受线上订购超值特惠
  • 天翼云电脑专场 HOT 移动办公新选择,爆款4核8G畅享1年3.5折起,快来抢购!
  • 天翼云奖励推广计划 加入成为云推官,推荐新用户注册下单得现金奖励
免费活动
  • 免费试用中心 HOT 多款云产品免费试用,快来开启云上之旅
  • 天翼云用户体验官 NEW 您的洞察,重塑科技边界

智算服务

打造统一的产品能力,实现算网调度、训练推理、技术架构、资源管理一体化智算服务
智算云(DeepSeek专区)
科研助手
  • 算力商城
  • 应用商城
  • 开发机
  • 并行计算
算力互联调度平台
  • 应用市场
  • 算力市场
  • 算力调度推荐
一站式智算服务平台
  • 模型广场
  • 体验中心
  • 服务接入
智算一体机
  • 智算一体机
大模型
  • DeepSeek-R1-昇腾版(671B)
  • DeepSeek-R1-英伟达版(671B)
  • DeepSeek-V3-昇腾版(671B)
  • DeepSeek-R1-Distill-Llama-70B
  • DeepSeek-R1-Distill-Qwen-32B
  • Qwen2-72B-Instruct
  • StableDiffusion-V2.1
  • TeleChat-12B

应用商城

天翼云精选行业优秀合作伙伴及千余款商品,提供一站式云上应用服务
进入甄选商城进入云市场创新解决方案
办公协同
  • WPS云文档
  • 安全邮箱
  • EMM手机管家
  • 智能商业平台
财务管理
  • 工资条
  • 税务风控云
企业应用
  • 翼信息化运维服务
  • 翼视频云归档解决方案
工业能源
  • 智慧工厂_生产流程管理解决方案
  • 智慧工地
建站工具
  • SSL证书
  • 新域名服务
网络工具
  • 翼云加速
灾备迁移
  • 云管家2.0
  • 翼备份
资源管理
  • 全栈混合云敏捷版(软件)
  • 全栈混合云敏捷版(一体机)
行业应用
  • 翼电子教室
  • 翼智慧显示一体化解决方案

合作伙伴

天翼云携手合作伙伴,共创云上生态,合作共赢
天翼云生态合作中心
  • 天翼云生态合作中心
天翼云渠道合作伙伴
  • 天翼云代理渠道合作伙伴
天翼云服务合作伙伴
  • 天翼云集成商交付能力认证
天翼云应用合作伙伴
  • 天翼云云市场合作伙伴
  • 天翼云甄选商城合作伙伴
天翼云技术合作伙伴
  • 天翼云OpenAPI中心
  • 天翼云EasyCoding平台
天翼云培训认证
  • 天翼云学堂
  • 天翼云市场商学院
天翼云合作计划
  • 云汇计划
天翼云东升计划
  • 适配中心
  • 东升计划
  • 适配互认证

开发者

开发者相关功能入口汇聚
技术社区
  • 专栏文章
  • 互动问答
  • 技术视频
资源与工具
  • OpenAPI中心
开放能力
  • EasyCoding敏捷开发平台
培训与认证
  • 天翼云学堂
  • 天翼云认证
魔乐社区
  • 魔乐社区

支持与服务

为您提供全方位支持与服务,全流程技术保障,助您轻松上云,安全无忧
文档与工具
  • 文档中心
  • 新手上云
  • 自助服务
  • OpenAPI中心
定价
  • 价格计算器
  • 定价策略
基础服务
  • 售前咨询
  • 在线支持
  • 在线支持
  • 工单服务
  • 建议与反馈
  • 用户体验官
  • 服务保障
  • 客户公告
  • 会员中心
增值服务
  • 红心服务
  • 首保服务
  • 客户支持计划
  • 专家技术服务
  • 备案管家

了解天翼云

天翼云秉承央企使命,致力于成为数字经济主力军,投身科技强国伟大事业,为用户提供安全、普惠云服务
品牌介绍
  • 关于天翼云
  • 智算云
  • 天翼云4.0
  • 新闻资讯
  • 天翼云APP
基础设施
  • 全球基础设施
  • 信任中心
最佳实践
  • 精选案例
  • 超级探访
  • 云杂志
  • 分析师和白皮书
  • 天翼云·创新直播间
市场活动
  • 2025智能云生态大会
  • 2024智算云生态大会
  • 2023云生态大会
  • 2022云生态大会
  • 天翼云中国行
天翼云
  • 活动
  • 智算服务
  • 产品
  • 解决方案
  • 应用商城
  • 合作伙伴
  • 开发者
  • 支持与服务
  • 了解天翼云
      • 文档
      • 控制中心
      • 备案
      • 管理中心
      文档中心

      云容器引擎

      云容器引擎

        • 产品动态
        • 产品简介
        • 产品定义
        • 产品优势
        • 产品特性
        • 应用场景
        • 使用限制
        • 相关术语解释
        • 与其它服务的关系
        • 快速入门
        • 入门指引
        • 准备工作
        • 快速创建Kubernetes集群
        • 镜像创建无状态工作负载(Nginx)
        • 计费说明
        • 计费模式
        • 计费项与产品价格
        • 包年/包月计费
        • 按需计费
        • 规格变更
        • 计费模式变更
        • 退订
        • 用户指南
        • 什么是云容器引擎
        • 高危操作及解决方案
        • 集群管理
        • 集群概述
        • 集群基本信息
        • 集群Kubernetes版本发布说明
        • CCE发布Kubernetes 1.29版本说明
        • CCE发布Kubernetes 1.28版本说明
        • CCE发布Kubernetes 1.27版本说明
        • CCE发布Kubernetes 1.25版本说明
        • CCE发布Kubernetes 1.23版本说明
        • (停止维护)CCE发布Kubernetes 1.21版本说明
        • (停止维护)CCE发布Kubernetes 1.19版本说明
        • (停止维护)CCE发布Kubernetes 1.17版本说明
        • (停止维护)CCE发布Kubernetes 1.15版本说明
        • (停止维护)CCE发布Kubernetes 1.13版本说明
        • (停止维护)CCE发布Kubernetes 1.11版本说明
        • (停止维护)CCE发布Kubernetes 1.9及之前版本说明
        • 购买集群
        • CCE Turbo集群与CCE集群的区别
        • iptables与IPVS如何选择
        • 购买集群
        • 访问集群
        • 通过X509证书连接集群
        • 通过kubectl连接集群
        • 通过自定义域名访问集群
        • 集群升级
        • 集群升级概述
        • 升级前须知
        • 升级前检查
        • 节点限制检查
        • 黑名单检查
        • 插件检查
        • Helm模板检查
        • Master节点SSH联通性检查
        • 节点池检查
        • 安全组检查
        • ARM节点限制检查
        • 残留待迁移节点检查
        • K8S废弃资源检查
        • 兼容性风险检查
        • 节点CCEAgent版本检查
        • 节点CPU使用率检查
        • CRD检查
        • 节点磁盘检查
        • 节点DNS检查
        • 节点关键目录文件权限检查
        • 节点Kubelet检查
        • 节点内存检查
        • 节点时钟同步服务器检查
        • 节点OS检查
        • 节点CPU数量检查
        • 节点Python命令检查
        • ASM网格版本检查
        • 节点Ready检查
        • 节点journald检查
        • 节点干扰ContainerdSock检查
        • 内部错误
        • 节点挂载点检查
        • K8S节点污点检查
        • everest插件版本限制检查
        • cce-hpa-controller插件限制检查
        • 动态绑核检查
        • 升级后验证
        • 业务验证
        • 存量Pod检查
        • 存量节点与容器网络检查
        • 存量节点标签与污点检查
        • 新建节点检查
        • 新建Pod检查
        • 重置跳过节点检查
        • 重置升级/滚动升级(1.13版本)
        • 原地升级
        • 集群跨版本业务迁移
        • 管理集群
        • 删除集群(按需计费)
        • 退订/释放集群(包年/包月)
        • 变更集群规格
        • 续费集群(包年/包月)
        • 休眠与唤醒集群(按需计费)
        • 更改集群节点的默认安全组
        • 配置管理
        • 获取集群证书
        • 节点管理
        • 节点概述
        • 节点须知
        • 容器引擎
        • 节点操作系统
        • 安全容器与普通容器
        • 节点最多可以创建多少个Pod
        • 节点预留资源计算公式
        • 数据盘空间分配说明
        • 创建节点
        • 纳管节点
        • 移除节点
        • 重置节点
        • 登录节点
        • 管理节点标签
        • 管理节点污点(taint)
        • 节点排水
        • 同步云服务器
        • 删除节点
        • 节点关机
        • 节点滚动升级
        • 将节点容器引擎从Docker迁移到Containerd
        • 节点池管理
        • 节点池概述
        • 创建节点池
        • 管理节点池
        • 调度管理
        • 调度概述
        • CPU调度
        • GPU调度
        • 工作负载
        • 工作负载概述
        • 创建无状态负载(Deployment)
        • 创建有状态负载(StatefulSet)
        • 创建守护进程集(DaemonSet)
        • 创建普通任务(Job)
        • 创建定时任务(CronJob)
        • 管理工作负载和任务
        • 容器设置
        • 容器基本信息
        • 如何使用第三方镜像
        • 设置容器规格
        • 设置容器生命周期
        • 设置容器健康检查
        • 设置环境变量
        • 健康检查UDP协议安全组规则说明
        • 配置镜像拉取策略
        • 时区同步
        • 工作负载升级配置
        • 调度策略(亲和与反亲和)
        • 实例缩容优先级说明
        • 登录容器
        • Pod标签与注解
        • 网络管理
        • 网络概述
        • 容器网络模型
        • 容器网络模型对比
        • 容器隧道网络
        • VPC网络
        • 云原生网络2.0
        • Service
        • Service概述
        • 集群内访问(ClusterIP)
        • 节点访问(NodePort)
        • 负载均衡(LoadBalancer)
        • Headless Service
        • Service Annotations说明
        • Ingress
        • Ingress概述
        • 通过控制台使用ELB Ingress
        • 通过控制台使用Nginx Ingress
        • DNS
        • DNS概述
        • 工作负载DNS配置说明
        • 使用CoreDNS实现自定义域名解析
        • 使用NodeLocal DNSCache提升DNS性能
        • 容器网络配置
        • 主机网络hostNetwork
        • Pod互访QoS限速
        • 容器隧道网络配置
        • 容器如何访问VPC内部网络
        • 从容器访问公网
        • 存储管理
        • 存储概述
        • 本地磁盘存储
        • 存储卷PV
        • 存储卷声明PVC
        • 存储类StorageClass
        • 快照与备份
        • 本地持久存储卷和临时存储卷
        • 对象存储卷挂载设置自定义访问密钥(AK/SK)
        • 设置挂载参数
        • 运维管理
        • 监控管理
        • 日志管理
        • 使用ICAgent采集容器日志
        • 命名空间
        • 创建命名空间
        • 管理命名空间
        • 设置命名空间级的网络策略
        • 设置资源配额及限制
        • 配置中心
        • 创建配置项
        • 使用配置项
        • 创建密钥
        • 使用密钥
        • 集群系统密钥说明
        • 弹性伸缩
        • 弹性伸缩概述
        • 工作负载弹性伸缩
        • 工作负载伸缩原理
        • 创建工作负载弹性伸缩(HPA)
        • 创建工作负载弹性伸缩(CustomedHPA)
        • CronHPA定时策略
        • 管理工作负载伸缩策略
        • 集群/节点弹性伸缩
        • 节点伸缩原理
        • 创建节点伸缩策略
        • 管理节点伸缩策略
        • 插件管理
        • 插件概述
        • CoreDNS域名解析
        • CCE容器存储(everest)
        • CCE节点故障检测
        • Kubernetes Dashboard
        • CCE集群弹性引擎
        • NGINX Ingress控制器
        • Kubernetes Metrics Server
        • CCE容器弹性引擎
        • prometheus(停止维护)
        • Kubernetes Web终端(停止维护)
        • CCE AI套件(NVIDIA GPU)
        • Volcano调度器
        • 节点本地域名解析加速
        • 云原生监控插件
        • 模板管理(helm)
        • 概述
        • 通过模板部署应用
        • Helm v2与Helm v3的差异及适配方案
        • 通过Helm v2客户端部署应用
        • 通过Helm v3客户端部署应用
        • Helm v2 Release转换成Helm v3 Release
        • 权限管理
        • CCE权限概述
        • 集群权限(IAM授权)
        • 命名空间权限(Kubernetes RBAC授权)
        • 示例:某部门权限设计及配置
        • CCE控制台的权限依赖
        • Pod安全配置
        • PodSecurityPolicy配置
        • Pod Security Admission配置
        • ServiceAccount Token安全性提升说明
        • 系统委托说明
        • 云审计
        • 云审计服务支持的CCE操作列表
        • 查看云审计日志
        • 旧版UI
        • 基本概念
        • 高危操作及解决方案
        • 集群管理
        • 集群概述
        • 集群生命周期
        • 购买混合集群
        • kubectl访问集群
        • Kubectl使用指南
        • 通过kubectl操作CCE集群
        • 通过kubectl配置kube-dns/CoreDNS高可用
        • Kubectl常用命令参考
        • 集群弹性扩容
        • 集群升级
        • 集群版本升级说明
        • 升级集群
        • 集群跨版本业务迁移
        • 管理集群
        • 删除集群
        • 集群休眠与唤醒
        • 配置管理
        • 获取集群证书
        • 集群监控
        • 集群管理权限控制
        • 节点管理
        • 节点概述
        • 购买节点
        • 纳管已有节点到集群
        • 登录节点
        • 节点监控
        • 管理节点标签
        • 同步节点信息
        • 重置节点
        • 删除节点
        • 节点关机
        • 节点滚动升级
        • 节点预留资源计算公式
        • 节点池管理
        • 节点池概述
        • 创建节点池
        • 管理节点池
        • 工作负载
        • 工作负载概述
        • 创建无状态负载(Deployment)
        • 创建有状态负载(StatefulSet)
        • 创建守护进程集(DaemonSet)
        • 创建普通任务(Job)
        • 创建定时任务(CronJob)
        • 管理容器组(Pod)
        • 管理工作负载和任务
        • 工作负载弹性伸缩
        • 容器设置
        • 如何使用第三方镜像
        • 设置容器规格
        • 设置容器生命周期
        • 设置容器启动命令
        • 设置容器健康检查
        • 设置环境变量
        • 采集容器标准输出日志
        • 采集容器内路径日志
        • 对接Prometheus实现自定义指标监控
        • 性能管理配置(性能瓶颈分析)
        • 健康检查UDP协议安全组规则说明
        • Kubernetes集群内置DNS配置说明
        • 亲和/反亲和性调度
        • 调度策略概述
        • 自定义调度策略
        • 节点亲和性
        • 工作负载亲和性
        • 工作负载反亲和性
        • 简易调度策略
        • 工作负载和可用区的亲和性
        • 工作负载和可用区的反亲和性
        • 工作负载和节点的亲和性
        • 工作负载和节点的反亲和性
        • 工作负载间的亲和性
        • 工作负载间的反亲和性
        • 网络管理
        • 网络概述
        • 网络模型
        • 网络模型概述
        • 容器隧道网络
        • VPC网络
        • Service
        • 集群内访问(ClusterIP)
        • 节点访问(NodePort)
        • 负载均衡(LoadBalancer)
        • 通过Kubectl命令行创建Ingress
        • Ingress
        • Ingress概述
        • 基本功能操作
        • NetworkPolicy
        • 存储管理
        • 存储概述
        • 本地磁盘存储
        • 云硬盘存储卷
        • 云硬盘存储卷使用说明
        • 使用云硬盘存储卷
        • 使用kubectl自动创建云硬盘
        • 使用kubectl对接已有云硬盘
        • 使用kubectl部署带云硬盘存储卷的工作负载
        • 文件存储卷
        • 文件存储卷使用说明
        • 使用文件存储卷
        • 极速文件存储卷
        • 极速文件存储卷使用说明
        • 使用极速文件存储卷
        • 快照与备份
        • 命名空间
        • 创建命名空间
        • 管理命名空间
        • 设置命名空间级的网络策略
        • 设置资源配额及限制
        • 配置中心
        • 创建配置项
        • 使用配置项
        • 创建密钥
        • 使用密钥
        • 模板市场
        • 模板概述
        • 准备模板包
        • 上传模板包
        • 通过模板创建工作负载
        • 使用弹性负载均衡
        • 插件管理
        • 插件概述
        • CoreDNS(系统资源插件,必装)
        • Everest(系统资源插件,必装)
        • storage-driver(系统资源插件,必装)
        • autoscaler
        • metrics-server
        • cce-hpa-controller
        • prometheus
        • gpu-beta
        • 弹性伸缩
        • 弹性伸缩概述
        • 工作负载弹性伸缩
        • 工作负载伸缩原理
        • 创建工作负载弹性伸缩(HPA)
        • 创建工作负载弹性伸缩(CustomedHPA)
        • 管理工作负载伸缩策略
        • 集群/节点弹性伸缩
        • 节点伸缩原理
        • 创建节点伸缩策略
        • 管理节点伸缩策略
        • 节点伸缩常见问题
        • 权限管理
        • CCE权限概述
        • 集群权限
        • 命名空间权限
        • 创建用户并授权使用CCE
        • 设置集群权限
        • 设置命名空间权限
        • CCE控制台的权限依赖
        • 云监控服务
        • 支持的监控指标
        • 设置告警规则
        • 查看监控指标
        • 云审计服务
        • 云审计服务支持的CCE操作列表
        • 查看云审计日志
        • 相关服务
        • 容器镜像服务
        • 应用运维管理
        • 最佳实践
        • 集群
        • 通过CCE搭建IPv4/IPv6双栈集群
        • 在CCE中实现高可用部署
        • 快速清理已删除节点上的CCE组件
        • 通过kubectl对接多个集群
        • 使用HPA+CA实现工作负载和节点联动弹性伸缩
        • 选择合适的节点数据盘大小
        • 网络
        • 在CCE的集群网络模型选择及区别
        • CCE集群的网络地址段规划实践
        • 迁移
        • 容器镜像迁移
        • 常见问题
        • 常见问题
        • 高频常见问题
        • 计费类
        • 集群类
        • 节点类
        • 节点池类
        • 工作负载类
        • 网络管理类
        • 存储管理类
        • 模板插件类
        • API&kubectl类
        • 域名DNS类
        • 权限类
        • 参考知识类
        • 文档下载
        • 相关协议
        • 云容器引擎产品服务协议
        • 云容器引擎产品服务等级协议
          无相关产品

          本页目录

          帮助中心云容器引擎用户指南 网络管理 Ingress通过控制台使用ELB Ingress
          通过控制台使用ELB Ingress
          更新时间 2024-01-05 16:04:22
          • 新浪微博
          • 微信
            扫码分享
          • 复制链接
          最近更新时间: 2024-01-05 16:04:22
          分享文章
          • 新浪微博
          • 微信
            扫码分享
          • 复制链接
          本文主要介绍通过控制台使用ELB Ingress。

          前提条件

          • Ingress为后端工作负载提供网络访问,因此集群中需提前部署可用的工作负载。若您无可用工作负载,可参考创建无状态负载(Deployment)、创建有状态负载(StatefulSet)或创建守护进程集(DaemonSet)部署工作负载。
          • 独享型ELB规格必须支持应用型(HTTP/HTTPS),且网络类型必须支持私网(有私有IP地址)。

          注意事项

          • 建议其他资源不要使用Ingress自动创建的ELB实例,否则在删除Ingress时,ELB实例会被占用,导致资源残留。
          • 添加Ingress后请在CCE页面对所选ELB实例进行配置升级和维护,不可在ELB页面对配置进行更改,否则可能导致Ingress服务异常。
          • Ingress转发策略中注册的URL需与后端应用暴露的URL一致,否则将返回404错误。
          • IPVS模式集群下,Ingress和Service使用相同ELB实例时,无法在集群内的节点和容器中访问Ingress,因为kube-proxy会在ipvs-0的网桥上挂载LB类型的Service地址,Ingress对接的ELB的流量会被ipvs-0网桥劫持。建议Ingress和Service使用不同ELB实例。
          • 请勿将Ingress与使用HTTP的Service对接同一个ELB下的同一个监听器,否则将产生端口冲突。

          添加ELB Ingress

          本节以nginx作为工作负载并添加ELB Ingress为例进行说明。

          步骤 1 登录CCE控制台,单击集群名称进入集群。

          步骤 2 选择左侧导航栏的“服务发现”,在右侧选择“路由”页签,单击右上角“创建路由”。

          步骤 3 设置Ingress参数。

          • 名称: 自定义Ingress名称,例如ingress-demo。
          • 对接Nginx: 此选项只有在安装了nginx-ingress插件后才会显示。如显示了“对接Nginx”,则说明您安装了nginx-ingress插件,创建ELB Ingress时不能打开该项开关,如果打开则是使用Nginx Ingress Controller。
          • 负载均衡器:

          选择对接的ELB实例,仅支持与集群在同一个VPC下的ELB实例。如果没有可选的ELB实例,请单击“创建负载均衡器”调整到ELB控制台创建。

          独享型ELB规格需要支持应用型(HTTP),且网络类型必须支持私网。

          • 监听器配置: Ingress为负载均衡器配置监听器,监听器对负载均衡器上的请求进行监听,并分发流量。配置完成后ELB实例侧将会创建对应的监听器,名称默认为k8s_<协议类型>_<端口号>,例如“k8s_HTTP_80”。

            • 对外协议:支持HTTP和HTTPS。
            • 对外端口:开放在负载均衡服务地址的端口,可任意指定。
            • 证书来源:支持IngressTLS密钥和ELB服务器证书。
            • 服务器证书:负载均衡器创建HTTPS协议监听时需要绑定证书,以支持HTTPS数据传输加密认证。
          • IngressTLS密钥:创建密钥证书的方法请参见创建密钥。

          • ELB服务器证书:使用在ELB服务中创建的证书。

                              
            说明
            同一个ELB实例的同一个端口配置HTTPS时,一个监听器只支持配置一个密钥证书。若使用两个不同的密钥证书将两个Ingress添加到同一个ELB下的同一个监听器,ELB侧实际只生效最先添加的证书。
          • SNI:单击图片5.png后开启SNI功能。SNI(Server Name Indication)是TLS的扩展协议,在该协议下允许同一个IP地址和端口号下对外提供多个基于TLS的访问域名,且不同的域名可以使用不同的安全证书。开启SNI后,允许客户端在发起TLS握手请求时就提交请求的域名信息。负载均衡收到TLS请求后,会根据请求的域名去查找证书:若找到域名对应的证书,则返回该证书认证鉴权;否则,返回缺省证书(服务器证书)认证鉴权。

                            
          说明
          •  当选择HTTPS协议时,才支持配置“SNI”选项。

          • 该功能仅支持1.15.11及以上版本的集群。

          • 用于SNI的证书需要指定域名,每个证书只能指定一个域名。支持泛域名证书。

          • 转发策略配置: 请求的访问地址与转发规则匹配时(转发规则由域名、URL组成,例如:10.117.117.117:80/helloworld),此请求将被转发到对应的目标Service处理。单击“添加转发策略”按钮可添加多条转发策略。

          • 域名:实际访问的域名地址。请确保所填写的域名已注册并备案,一旦配置了域名规则后,必须使用域名访问。
          • URL匹配规则:
            • 前缀匹配:例如映射URL为/healthz,只要符合此前缀的URL均可访问。例如/healthz/v1,/healthz/v2
            • 精确匹配:表示只有URL完全匹配时,访问才能生效。例如映射URL为/healthz,则必须为此URL才能访问
            • 正则匹配:按正则表达式方式匹配URL。例如正则表达式为 /[A-Za-z0-9_.-]+/test 。只要符合此规则的URL均可访问,例如/abcA9/test,/v1-Ab/test。正则匹配规则支持POSIX与Perl两种标准。
          • URL:需要注册的访问路径,例如:/healthz。
                            
          说明
          此处添加的URL路径要求后端应用内存在相同的路径,否则转发无法生效。

          例如,Nginx应用默认的Web访问路径为“/usr/share/nginx/html”,在为Ingress转发策略添加“/test”路径时,需要应用的Web访问路径下也包含相同路径,即“/usr/share/nginx/html/test”,否则将返回404。

          • 目标服务名称:请选择已有Service或新建Service。页面列表中的查询结果已自动过滤不符合要求的Service。

          • 目标服务访问端口:可选择目标Service的访问端口。

          • 操作:可单击“删除”按钮删除该配置。

          步骤 4 配置完成后,单击“确定”。创建完成后,在Ingress列表可查看到已添加的Ingress。

          在ELB控制台可查看通过CCE自动创建的ELB,名称默认为“cce-lb-ingress.UID”。单击ELB名称进入详情页,在“监听器”页签下即可查看Ingress对应的路由设置,包括URL、监听器端口以及对应的后端服务器组端口。

                            
          注意
          Ingress创建后请在CCE页面对所选ELB实例进行配置升级和维护,不要在ELB控制台对ELB实例进行维护,否则可能导致Ingress服务异常。

          图 ELB路由设置

          图片1.png

          步骤 5 访问工作负载(例如名称为defaultbackend)的“/healthz”接口。

          1. 获取工作负载“/healthz”接口的访问地址。访问地址由负载均衡实例IP、对外端口、映射URL组成,例如:10. . .**:80/healthz。
          2. 在浏览器中输入“/healthz”接口的访问地址,如:http://10. . .**:80/healthz,即可成功访问工作负载。

          图 访问defaultbackend“/healthz”接口

          图片2.png

          配置HTTPS证书

          Ingress支持配置TLS证书,以HTTPS协议的方式对外提供安全服务。

          当前支持使用配置在集群中的IngressTLS密钥证书,以及ELB服务中的证书。

                            
          说明
          同一个ELB实例的同一个端口配置HTTPS时,需要选择一样的证书。

          使用IngressTLS密钥证书

          步骤 1 请参见通过kubectl连接集群,使用kubectl连接集群。

          步骤 2 执行如下命令,创建名为“ ingress-test-secret.yaml ”的YAML文件,此处文件名可自定义。

          vi ingress-test-secret.yaml

          YAML文件配置如下:

          apiVersion: v1 
          data: 
            tls.crt: LS0******tLS0tCg== 
            tls.key: LS0tL******0tLS0K 
          kind: Secret 
          metadata: 
            annotations: 
              description: test for ingressTLS secrets 
            name: ingress-test-secret 
            namespace: default 
          type: IngressTLS
          

          此处tls.crt和tls.key为示例,请获取真实密钥进行替换。tls.crt和tls.key的值为Base64编码后的内容。

          步骤 3 创建密钥。

          kubectl create -f ingress-test-secret.yaml

          回显如下,表明密钥已创建。

          secret/ingress-test-secret created

          查看已创建的密钥。

          kubectl get secrets

          回显如下,表明密钥创建成功。

          NAME                         TYPE                                  DATA      AGE 
          ingress-test-secret          IngressTLS                            2         13s
          

          步骤 4 创建名为“ ingress-test.yaml ”的YAML文件,此处文件名可自定义。

          vi ingress-test.yaml

                            
          说明
          默认安全策略选择(kubernetes.io/elb.tls-ciphers-policy)仅在1.17.17及以上版本的集群中支持。

          自定义安全策略选择(kubernetes.io/elb.security_policy_id)仅在1.17.17及以上版本的集群中支持。

          以自动创建关联ELB为例,YAML文件配置如下:

          apiVersion: networking.k8s.io/v1beta1 
          kind: Ingress  
          metadata:  
            name: ingress-test 
            annotations:  
              kubernetes.io/elb.class: union 
              kubernetes.io/ingress.class: cce 
              kubernetes.io/elb.port: '443' 
              kubernetes.io/elb.autocreate:  
                '{ 
                    "type":"public", 
                    "bandwidth_name":"cce-bandwidth-15511633796**", 
                    "bandwidth_chargemode":"bandwidth", 
                    "bandwidth_size":5, 
                    "bandwidth_sharetype":"PER", 
                    "eip_type":"5_bgp" 
                  }' 
              kubernetes.io/elb.security_policy_id: 99bec42b-0dd4-4583-98e9-b05ce628d157  #自定义安全策略优先级高于系统默认安全策略 
              kubernetes.io/elb.tls-ciphers-policy: tls-1-2 
          spec: 
            tls:  
            - secretName: ingress-test-secret 
            rules:  
            - host: '' 
              http:  
                paths:  
                - path: '/' 
                  backend:  
                    serviceName: <your_service_name>  #替换为您的目标服务名称 
                    servicePort: 80 
                  property: 
                    ingress.beta.kubernetes.io/url-match-mode: STARTS_WITH
          

          表 关键参数说明

          参数 是否必填 参数类型 描述
          kubernetes.io/elb.security_policy_id 否 String ELB中自定义安全组策略ID,请前往ELB控制台获取。该字段仅在HTTPS协议下生效,且优先级高于默认安全策略。
          kubernetes.io/elb.tls-ciphers-policy 否 String 默认值为“tls-1-2”,为监听器使用的默认安全策略,仅在HTTPS协议下生效。取值范围:l tls-1-0l tls-1-1l tls-1-2l tls-1-2-strict
          tls 否 Array of strings HTTPS协议时,需添加此字段。该字段可添加多项独立的域名和证书,详见配置服务器名称指示(SNI)。
          secretName 否 String HTTPS协议时添加,配置为创建的密钥证书名称。

          表 tls_ciphers_policy取值说明

          安全策略支持的TLS版本类型使用的加密套件列表
          tls-1-0TLS 1.2
          TLS 1.1
          TLS 1.0
          ECDHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES128-GCM-SHA256:AES128-GCM-SHA256:AES256-GCM-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:AES128-SHA256:AES256-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES128-SHA:ECDHE-RSA-AES256-SHA:ECDHE-ECDSA-AES256-SHA:AES128-SHA:AES256-SHA
          tls-1-1TLS 1.2
          TLS 1.1
          tls-1-2TLS 1.2
          tls-1-2-strictTLS 1.2ECDHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES128-GCM-SHA256:AES128-GCM-SHA256:AES256-GCM-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:AES128-SHA256:AES256-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384

           

          步骤 5 创建Ingress。

          kubectl create -f ingress-test.yaml

          回显如下,表示Ingress服务已创建。

          ingress/ingress-test created

          查看已创建的Ingress。

          kubectl get ingress

          回显如下,表示Ingress服务创建成功,工作负载可访问。

          NAME             HOSTS     ADDRESS          PORTS   AGE 
          ingress-test     *         121.**.**.**     80      10s
          

          步骤 6 访问工作负载(例如Nginx工作负载),在浏览器中输入安全访问地址https://121. . .**:443进行验证。

          其中,121. . .**为统一负载均衡实例的IP地址。

          使用ELB服务中的证书

          使用ELB服务中的证书,可以通过指定kubernetes.io/elb.tls-certificate-ids这个annotations实现。

                            
          说明
          • 当同时指定annotation中已有证书和IngressTLS时,使用ELB服务中的证书。

          • CCE不校验ELB服务中的证书是否有效,只校验证书是否存在。

          apiVersion: networking.k8s.io/v1beta1 
          kind: Ingress  
          metadata:  
            name: ingress-test 
            annotations:  
              kubernetes.io/ingress.class: cce 
              kubernetes.io/elb.port: '443' 
              kubernetes.io/elb.id: 0b9a6c4d-bd8b-45cc-bfc8-ff0f9da54e95 
              kubernetes.io/elb.class: union 
              kubernetes.io/elb.tls-certificate-ids: 058cc023690d48a3867ad69dbe9cd6e5,b98382b1f01c473286653afd1ed9ab63 
          spec: 
            rules:  
            - host: '' 
              http:  
                paths:  
                - path: '/' 
                  backend:  
                    serviceName: <your_service_name>  #替换为您的目标服务名称 
                    servicePort: 80 
                  property: 
                    ingress.beta.kubernetes.io/url-match-mode: STARTS_WITH
          

          使用HTTP/2

          Ingress支持HTTP/2的方式暴露服务,在默认情况下,客户端与LB之间采用HTTP1.X协议,若需开启HTTP/2功能,可在annotation字段中加入如下配置:

          kubernetes.io/elb.http2-enable: 'true'

          以关联已有ELB为例,yaml配置文件如下。

          1.21及以下版本集群:

          apiVersion: networking.k8s.io/v1beta1 
          kind: Ingress  
          metadata:  
            name: ingress-test 
            annotations:  
              kubernetes.io/elb.id: <your_elb_id>  #替换为您已有的ELB ID 
              kubernetes.io/elb.ip: <your_elb_ip>  #替换为您已有的ELB IP 
              kubernetes.io/elb.port: '443' 
              kubernetes.io/ingress.class: cce 
              kubernetes.io/elb.http2-enable: 'true' # 开启HTTP/2功能 
          spec: 
            tls: 
            - secretName: ingress-test-secret 
            rules:  
            - host: '' 
              http:  
                paths:  
                - path: '/' 
                  backend:  
                    serviceName: <your_service_name>  #替换为您的目标服务名称 
                    servicePort: 80                   #替换为您的目标服务端口 
                  property: 
                    ingress.beta.kubernetes.io/url-match-mode: STARTS_WITH
          

          1.23及以上版本集群:

          apiVersion: networking.k8s.io/v1 
          kind: Ingress  
          metadata:  
            name: ingress-test 
            annotations:  
              kubernetes.io/elb.id: <your_elb_id>  #替换为您已有的ELB ID 
              kubernetes.io/elb.ip: <your_elb_ip>  #替换为您已有的ELB IP 
              kubernetes.io/elb.port: '443' 
              kubernetes.io/elb.http2-enable: 'true' # 开启HTTP/2功能 
          spec: 
            tls:  
            - secretName: ingress-test-secret 
            rules:  
            - host: '' 
              http:  
                paths:  
                - path: '/' 
                  backend:  
                    service: 
                      name: <your_service_name>  #替换为您的目标服务名称 
                      port:  
                        number: 8080             #替换为您的目标服务端口 
                  property: 
                    ingress.beta.kubernetes.io/url-match-mode: STARTS_WITH 
                  pathType: ImplementationSpecific 
            ingressClassName: cce 
          

          表 HTTP/2参数说明

          参数是否必填参数类型描述
          kubernetes.io/elb.http2-enable否Bool表示HTTP/2功能的开启状态。开启后,可提升客户端与LB间的访问性能,但LB与后端服务器间仍采用HTTP1.X协议。v1.19.16-r0**、v1.21.3-r0及以上版本的集群支持此字段**。

          取值范围:

          • true:开启HTTP/2功能;

          • false:关闭HTTP/2功能(默认为关闭状态)。
            注意:只有当监听器的协议为HTTPS时,才支持开启或关闭HTTP/2功能。当监听器的协议为HTTP时,该字段无效,默认将其设置为false。

          配置服务器名称指示(SNI)

          SNI允许同一个IP地址和端口号下对外提供多个基于TLS的访问域名,且不同的域名可以使用不同的安全证书。

                            
          说明
          • 用于SNI的证书需要指定域名,每个证书只能指定一个域名。支持泛域名证书。

          • 安全策略选择(kubernetes.io/elb.tls-ciphers-policy)仅在1.17.11及以上版本的集群中支持。

          满足以上条件时可进行SNI配置,以自动创建关联ELB为例,yaml文件配置如下,本例中 sni-test-secret-1 、sni-test-secret-2为SNI证书,该证书指定的域名必须与证书中的域名一致。

          apiVersion: networking.k8s.io/v1beta1 
          kind: Ingress  
          metadata:  
            name: ingress-test 
            annotations:  
              kubernetes.io/elb.class: union 
              kubernetes.io/ingress.class: cce 
              kubernetes.io/elb.port: '443' 
              kubernetes.io/elb.autocreate:  
                '{ 
                    "type":"public", 
                    "bandwidth_name":"cce-bandwidth-******", 
                    "bandwidth_chargemode":"bandwidth", 
                    "bandwidth_size":5, 
                    "bandwidth_sharetype":"PER", 
                    "eip_type":"5_bgp" 
                  }' 
              kubernetes.io/elb.tls-ciphers-policy: tls-1-2 
          spec: 
            tls:  
            - secretName: ingress-test-secret 
            - hosts: 
                - example.top  #签发证书时指定域名为example.top 
              secretName: sni-test-secret-1   
            - hosts: 
                - example.com  #签发证书时指定域名为example.com 
              secretName: sni-test-secret-2 
            rules:  
            - host: '' 
              http:  
                paths:  
                - path: '/' 
                  backend:  
                    serviceName: <your_service_name>  #替换为您的目标服务名称 
                    servicePort: 80 
                  property: 
                    ingress.beta.kubernetes.io/url-match-mode: STARTS_WITH
          

          路由到多个服务

          Ingress可通过不同的匹配策略同时路由到多个后端服务,YAML文件中的spec字段设置如下。通过访问“www.example.com/foo”、“www.example.com/bar”、“foo.example.com/”即可分别路由到三个不同的后端Service。

                            
          说明
          Ingress转发策略中注册的URL需与后端应用暴露的URL一致,否则将返回404错误。
          spec: 
            rules:  
            - host: 'www.example.com' 
              http:  
                paths:  
                - path: '/foo' 
                  backend:  
                    serviceName: <your_service_name>  #替换为您的目标服务名称 
                    servicePort: 80 
                  property: 
                    ingress.beta.kubernetes.io/url-match-mode: STARTS_WITH 
                - path: '/bar' 
                  backend: 
                    serviceName: <your_service_name>  #替换为您的目标服务名称 
                    servicePort: 80 
                  property: 
                    ingress.beta.kubernetes.io/url-match-mode: STARTS_WITH 
            - host: 'foo.example.com' 
              http: 
                paths: 
                - path: '/' 
                  backend: 
                    serviceName: <your_service_name>  #替换为您的目标服务名称 
                    servicePort: 80 
                  property: 
                    ingress.beta.kubernetes.io/url-match-mode: STARTS_WITH
          
          文档反馈

          建议您登录后反馈,可在建议与反馈里查看问题处理进度

          鼠标选中文档,精准反馈问题

          选中存在疑惑的内容,即可快速反馈问题,我们会跟进处理

          知道了

          上一篇 :  Ingress概述
          下一篇 :  通过控制台使用Nginx Ingress
          搜索 关闭
          ©2025 天翼云科技有限公司版权所有 增值电信业务经营许可证A2.B1.B2-20090001
          公司地址:北京市东城区青龙胡同甲1号、3号2幢2层205-32室
          备案 京公网安备11010802043424号 京ICP备 2021034386号
          ©2025天翼云科技有限公司版权所有
          京ICP备 2021034386号
          备案 京公网安备11010802043424号
          增值电信业务经营许可证A2.B1.B2-20090001
          用户协议 隐私政策 法律声明