云容器引擎 CCE_AUTOPILOT集群-创建负载均衡类型的服务:创建LoadBalancer类型Service
创建LoadBalancer类型Service
- 登录CCE控制台,单击集群名称进入集群。
- 在左侧导航栏中选择“服务”,在右上角单击“创建服务”。
- 设置参数。
- Service名称:自定义服务名称,可与工作负载名称保持一致。
- 访问类型:选择“负载均衡 LoadBalancer”。
- 命名空间:工作负载所在命名空间。
- 服务亲和:
集群级别:集群下所有节点的IP+访问端口均可以访问到此服务关联的负载,服务访问会因路由跳转导致一定性能损失,且无法获取到客户端源IP。
- 选择器:添加标签,Service根据标签选择Pod,填写后单击“确认添加”。也可以引用已有工作负载的标签,单击“引用负载标签”,在弹出的窗口中选择负载,然后单击“确定”。
- 负载均衡器:选择弹性负载均衡的类型、创建方式。
ELB类型可选择“独享型”,独享型ELB可以根据支持的协议类型选择“网络型(TCP/UDP)”、“应用型(HTTP/HTTPS)”或“网络型(TCP/UDP)&应用型(HTTP/HTTPS)”。
创建方式可选择“选择已有”或“自动创建”。不同创建方式的配置详情请参见表1。表1 ELB配置 创建方式
配置
选择已有
仅支持选择与集群在同一个VPC下的ELB实例。如果没有可选的ELB实例,请单击“创建负载均衡器”跳转到ELB控制台创建。
自动创建
- 实例名称:请填写ELB名称。
- 企业项目:该参数仅对开通企业项目的企业客户账号显示。企业项目是一种云资源管理方式,企业项目管理服务提供统一的云资源按项目管理,以及项目内的资源管理、成员管理。
- 可用区:可以选择在多个可用区创建负载均衡实例,提高服务的可用性。如果业务需要考虑容灾能力,建议选择多个可用区。
- 前端子网:用于分配ELB实例对外服务的IP地址。
- 后端子网:用于与后端服务建立连接的IP地址。
- 网络型规格/应用型规格/规格:
- 弹性规格:适用于业务用量波动较大的场景,按实际使用量收取每小时使用的容量费用。
- 固定规格:适用于业务用量较为稳定的场景,按固定规格折算收取每小时使用的容量费用。
- 弹性公网IP:选择“自动创建”时,可配置公网带宽的计费方式及带宽大小。
- 资源标签:通过为资源添加标签,可以对资源进行自定义标记,实现资源的分类。您可以在TMS中创建“预定义标签”,预定义标签对所有支持标签功能的服务资源可见,通过使用预定义标签可以提升标签创建和迁移效率。v1.27.5-r0、v1.28.3-r0及以上版本集群支持。
负载均衡配置:您可以单击负载均衡配置的“编辑”图标配置ELB实例的参数,在弹出窗口中配置ELB实例的参数。
- 分配策略:可选择加权轮询算法、加权最少连接或源IP算法。
- 加权轮询算法:根据后端服务器的权重,按顺序依次将请求分发给不同的服务器。它用相应的权重表示服务器的处理性能,按照权重的高低以及轮询方式将请求分配给各服务器,相同权重的服务器处理相同数目的连接数。常用于短连接服务,例如HTTP等服务。
- 加权最少连接:最少连接是通过当前活跃的连接数来估计服务器负载情况的一种动态调度算法。加权最少连接就是在最少连接数的基础上,根据服务器的不同处理能力,给每个服务器分配不同的权重,使其能够接受相应权值数的服务请求。常用于长连接服务,例如数据库连接等服务。
- 源IP算法:将请求的源IP地址进行Hash运算,得到一个具体的数值,同时对后端服务器进行编号,按照运算结果将请求分发到对应编号的服务器上。这可以使得对不同源IP的访问进行负载分发,同时使得同一个客户端IP的请求始终被派发至某特定的服务器。该方式适合负载均衡无cookie功能的TCP协议。
- 会话保持类型:默认不启用,可选择“源IP地址”。基于源IP地址的简单会话保持,即来自同一IP地址的访问请求转发到同一台后端服务器上。
当分配策略使用源IP算法时,不支持设置会话保持。
- 健康检查:设置负载均衡的健康检查配置。
- 全局检查:全局检查仅支持使用相同协议的端口,无法对多个使用不同协议的端口生效,建议使用“自定义检查”。
- 自定义检查:在端口配置中对多种不同协议的端口设置健康检查。
表2 健康检查参数 参数
说明
协议
当端口配置协议为TCP时,支持TCP和HTTP协议;当端口配置协议为UDP时,支持UDP协议。
检查路径(仅HTTP健康检查协议支持):指定健康检查的URL地址。检查路径只能以/开头,长度范围为1-80。
端口
健康检查默认使用业务端口作为健康检查的端口;您也可以重新指定端口用于健康检查,重新指定端口会为服务增加一个名为cce-healthz的服务端口配置。
容器端口:使用独享型负载均衡关联ENI实例时,容器端口作为健康检查的检查端口。取值范围为1-65535。
检查周期(秒)
每次健康检查响应的最大间隔时间,取值范围为1-50。
超时时间(秒)
每次健康检查响应的最大超时时间,取值范围为1-50。
最大重试次数
健康检查最大的重试次数,取值范围为1-10。
- 端口配置:
- 协议:请根据业务的协议类型选择。
- 服务端口:Service使用的端口,端口范围为1-65535。
- 容器端口:工作负载程序实际监听的端口,需用户确定。例如nginx默认使用80端口。
- 监听器前端协议:ELB监听器的前端协议,是客户端与负载均衡监听器建立流量分发连接所使用的协议。当选择独享型负载均衡器类型时,包含“应用型(HTTP/HTTPS)”方可支持配置HTTP/HTTPS。
- 健康检查:健康检查选项设置为“自定义检查”时,可以为不同协议的端口配置健康检查,参数说明请参见表2。
在创建LoadBalancer类型Service时,会自动生成一个随机节点端口号(NodePort)。
- 注解:LoadBalancer类型Service有一些CCE定制的高级功能,通过注解annotations实现,具体注解的内容请参见使用Annotation配置负载均衡。
- 单击“确定”,创建Service。