上云无忧 > 文档中心 > 腾讯云容器服务 TKE 标准集群(注册节点) - 流量接入
容器服务 TKE
腾讯云容器服务 TKE 标准集群(注册节点) - 流量接入

文档简介:
本文主要介绍如何使用腾讯负载均衡 CLB,实现注册节点的四层以及七层的流量接入。 使用前提: 集群已经 创建注册节点。 使用腾讯云 CLB 实现注册节点流量接入的能力,基于 CLB 混合云部署特性实现,请确保已经开通此特性。更多信息请参考 混合云部署。
*此产品及展示信息均由腾讯云官方提供。免费试用 咨询热线:400-826-7010,为您提供专业的售前咨询,让您快速了解云产品,助您轻松上云! 微信咨询
  免费试用、价格特惠
本文主要介绍如何使用腾讯负载均衡 CLB,实现注册节点的四层以及七层的流量接入。

使用前提

集群已经 创建注册节点
使用腾讯云 CLB 实现注册节点流量接入的能力,基于 CLB 混合云部署特性实现,请确保已经开通此特性。更多信息请参考 混合云部署

Service

Kubernetes Service 资源抽象了访问一组 Pod 的策略,屏蔽了后端实例的动态变化和对多实例的负载均衡,用于管理集群中基于四层网络的服务访问。 Kubernetes 的 ServiceTypes 允许指定 Service 类型,目前主要支持 ClusterIPNodePortLoadBalancer 三种类型。ClusterIP 和 NodePort 类型的 Service,在不同云服务商或是自建集群中的行为表现通常情况下相同。而 LoadBalancer 类型的 Service,由于使用了云服务商的负载均衡进行服务暴露,云服务商会围绕其负载均衡的能力提供不同的额外功能。
这里介绍如何基于腾讯云 CLB,使用 LoadBalancer 类型的 Service 实现注册节点的四层流量接入。

使用方式

创建 Loadbalancer Service 时,为 Service 添加相应的 Annotation :
		
apiVersion: v1
kind: Service
metadata:
annotations:
service.cloud.tencent.com/hybrid-type: CCN
service.cloud.tencent.com/snat-pro-info: '{"snatIps": [{"subnetId":"subnet-12345678","ip":"192.168.0.1"}]}'
name: test
........

Annotation 说明

此处仅介绍与注册节点流量接入相关的参数:
service.cloud.tencent.com/hybrid-type 通过该 Annotation 开启分布式云场景中注册节点流量接入的特性,需要指定流量转发的方式,当前仅支持云联网。参数有效值:CCN。
service.cloud.tencent.com/snat-pro-info 通过该 Annoation 为 CLB 配置 SnatIP,否则 CLB 后端无法绑定 IDC IP。需要指定 SnatIP 的所在子网以及 IP,其中 IP 非必填,如不填写则从指定的子网中默认分配。
说明
关于 SNAT IP 的说明如下:
SNAT IP 主要用于混合云部署中将请求转发至 IDC 内服务器的场景,使用负载均衡绑定云联网打通的 IDC 内 IP 时,必须分配 SNAT IP. SNAT IP 是您的 VPC 的内网 IP。
单个 CLB 实例最多支持配置 10 个 SNAT IP。
单个 CLB 实例的单个规则配置单个 SNAT IP,绑定单个后端服务后的连接数最大是 5.5 万个,若增加 SNAT IP 或增加后端服务时,连接数等比例增加。例如 1 个 CLB 实例配置了 2 个 SNAT IP,后端绑定了 10 个端口,此时该 CLB 实例总的连接数是:2 x 10 x 5.5万 = 110万个。您可以根据连接数来评估 SNAT IP 的分配个数。
删除 SNAT IP 时,该 SNAT IP 上的连接会全部断开,请谨慎操作

使用示例

		
apiVersion: v1
kind: Service
metadata:
annotations:
service.cloud.tencent.com/hybrid-type: CCN
service.cloud.tencent.com/snat-pro-info: '{"snatIps": [{"subnetId":"xxxxxxxx"}]}'
name: nginx-svc
spec:
ports:
- port: 80
targetPort: 80
selector:
k8s-app: nginx
sessionAffinity: None
externalTrafficPolicy: Local
type: LoadBalancer
说明:
这里如不指定 service.cloud.tencent.com/hybrid-typeservice.cloud.tencent.com/snat-pro-info,则 CLB 仅会挂载云上节点。
建议使用 Service Local 模式,将 ExternalTrafficPolicy 设置为 Local ,避免流量通过 NAT 在节点间的转发设置,最大程度减少流量跨专线穿行。关于 Service Local 模式,请参考 Service Local 模式

Ingress

Ingress 是允许访问到集群内 Service 规则的集合,您可以通过配置转发规则,实现不同 URL 可以访问到集群内不同的 Service。为了使 Ingress 资源正常工作,集群需运行 Ingress Controller,容器服务在集群内默认启用了基于腾讯云负载均衡器 CLB 实现的 TKE Ingress Controller。
这里介绍如何基于腾讯云负载均衡 CLB,使用 CLB 类型的 Ingress 实现注册节点的七层流量接入。

使用方式

创建 CLB 类型的 Ingress 时,为 Ingress 添加相应的 Annotation :
		
apiVersion: networking.k8s.io/v1beta1
kind: Ingress
metadata:
annotations:
kubernetes.io/ingress.class: qcloud
ingress.cloud.tencent.com/hybrid-type: CCN
ingress.cloud.tencent.com/snat-pro-info: '{"snatIps": [{"subnetId":"subnet-12345678","ip":"192.168.0.1"}]}'
name: test-ingress
........

Annotation 说明

kubernetes.io/ingress.class 配置 Ingress 类型,这里我们使用 CLB 类型的 Ingress,有效值为 qcloud
ingress.cloud.tencent.com/hybrid-type 通过该 Annotation 开启分布式云场景中注册节点流量接入的特性,需要指定流量转发的方式,当前仅支持云联网。参数有效值:CCN
ingress.cloud.tencent.com/snat-pro-info 通过该 Annoation 为 CLB 配置 SnatIP,否则 CLB 后端无法绑定 IDC IP。需要指定 SnatIP 的所在子网以及 IP,其中 IP 非必填,如不填写则从指定的子网中默认分配。

使用示例

		
apiVersion: networking.k8s.io/v1beta1
kind: Ingress
metadata:
annotations:
kubernetes.io/ingress.class: qcloud
ingress.cloud.tencent.com/hybrid-type: CCN
ingress.cloud.tencent.com/snat-pro-info: '{"snatIps": [{"subnetId":"subnet-xxxxxx"}]}'
name: nginx-ingress
namespace: default
spec:
rules:
- host: foo.bar.com
http:
paths:
- backend:
serviceName: nginx-svc
servicePort: 80
path: /
pathType: ImplementationSpecific
相似文档
  • 集群类: 注册节点特性是否支持独立部署集群? 使用注册节点特性,为什么要求集群内必须要存在云上节点?
  • 本文为您介绍如何基于原生节点开启并启用内存压缩能力。 环境准备: 内存压缩功能要求原生节点镜像的内核更新至最新版本(5.4.241-19-0017),可通过以下方式实现:
  • 容器服务 GPU 虚拟化: 腾讯云 Tencent Kubernetes Engine qGPU 服务(以下简称 TKE qGPU)是腾讯云针对 原生节点 推出的 GPU 容器虚拟化产品,支持多个容器共享 GPU 卡并支持容器间算力和显存精细隔离,同时提供业界唯一的在离线混部能力,在精细切分 GPU 资源的基础上,在最大程度保证业务稳定的前提下,提高 GPU 使用率,帮助客户大幅度节约 GPU 资源成本。
  • 使用须知: 支持的 Kubernetes 版本: TKE 版本 ≥ v1.14.x。 支持的节点类型: 仅支持 原生节点,原生节点搭载 FinOps 理念,配合 qGPU 使用可全面提升 GPU/CPU 资源利用率。
  • 功能概述: 通常场景下,qGPU Pod 会公平地使用物理 GPU 资源,qGPU 内核驱动为各任务分配等价的 GPU 时间片。但不同 GPU 计算任务的运行特点和重要性会有很大差异,导致对 GPU 资源的使用和要求不同。
官方微信
联系客服
400-826-7010
7x24小时客服热线
分享
  • QQ好友
  • QQ空间
  • 微信
  • 微博
返回顶部