文档首页 > > API参考> 附录> 集群中使用ELB的操作方法

集群中使用ELB的操作方法

分享
更新时间:2020/07/14 GMT+08:00

本章节介绍在CCE创建的集群中使用ELB时的操作方法。

操作方法

创建对应的service。开源接口的使用方法请参见创建Service

若需要开启会话保持,需要满足如下条件:

  • 工作负载协议为TCP。
  • 工作负载的各实例已设置反亲和部署,即所有的实例都部署在不同节点上。详细请参见工作负载和节点的反亲和性
自动创建ELB:
apiVersion: v1 
kind: Service 
metadata: 
  annotations:   
    kubernetes.io/elb.class: union
    kubernetes.io/session-affinity-mode: SOURCE_IP
    kubernetes.io/elb.subnet-id: 5083f225-9bf8-48fa-9c8b-67bd9693c4c0
    kubernetes.io/elb.autocreate: "{\"type\":\"public\",\"bandwidth_name\":\"cce-bandwidth-1551163379627\",\"bandwidth_chargemode\":\"bandwidth\",\"bandwidth_size\":5,\"bandwidth_sharetype\":\"PER\",\"eip_type\":\"5_bgp\",\"name\":\"james\"}"
  labels: 
    app: nginx 
  name: nginx 
spec: 
  externalTrafficPolicy: Local
  ports: 
  - name: service0 
    port: 80
    protocol: TCP 
    targetPort: 80
  selector: 
    app: nginx 
  type: LoadBalancer
使用已有ELB:
apiVersion: v1 
kind: Service 
metadata: 
  annotations:   
    kubernetes.io/elb.class: union
    kubernetes.io/session-affinity-mode: SOURCE_IP
    kubernetes.io/elb.id: 3c7caa5a-a641-4bff-801a-feace27424b6
    kubernetes.io/elb.subnet-id: 5083f225-9bf8-48fa-9c8b-67bd9693c4c0
  labels: 
    app: nginx 
  name: nginx 
spec: 
  loadBalancerIP: 10.78.42.242
  externalTrafficPolicy: Local
  ports: 
  - name: service0 
    port: 80
    protocol: TCP 
    targetPort: 80
  selector: 
    app: nginx 
  type: LoadBalancer
表1 关键参数说明

参数

参数类型

描述

kubernetes.io/elb.class

String

对接共享型负载均衡时需要增加此参数,值为“union”

kubernetes.io/session-affinity-mode

String

可选,若需要开启会话保持,需增加该参数。

取值“SOURCE_IP”表示基于源IP。

kubernetes.io/elb.id

String

可选,但使用已有ELB时必填。

为共享型负载均衡实例的ID。

kubernetes.io/elb.subnet-id

String

可选,但自动创建时必填,Kubernetes v1.11.7-r0以上版本的集群可不填。

kubernetes.io/elb.autocreate

elb.autocreate object

可选,但公网自动创建时必填,将自动创建ELB所绑定的EIP。私网自动创建时必填,将自动创建ELB。

示例:

  • 公网自动创建:值为 "{\"type\":\"public\",\"bandwidth_name\":\"cce-bandwidth-1551163379627\",\"bandwidth_chargemode\":\"bandwidth\",\"bandwidth_size\":5,\"bandwidth_sharetype\":\"PER\",\"eip_type\":\"5_bgp\",\"name\":\"james\"}"
  • 私网自动创建:值为 "{\"type\":\"inner\"}"

loadBalancerIP

String

配置为ELB的IP地址,私网ELB配置私有IP,公网ELB配置为公网IP。

externalTrafficPolicy

String

可选,若需要开启会话保持,需增加该参数,表示请求转到固定节点;若某个服务发布成ELB服务且为Local模式,客户端如果在集群内,那么必须与服务端在同一个节点上才能正常访问。

port

Integer

集群虚拟IP的访问端口,也是注册到负载均衡上的端口。

targetPort

String

对应界面上的容器端口

表2 elb.autocreate字段数据结构说明

参数

参数类型

描述

name

String

自动创建的负载均衡的名称。

取值范围:1-64个字符,中英文,数字,下划线,中划线。

type

String

负载均衡实例网络类型,公网或者私网。

  • public:公网型负载均衡
  • inner:私网型负载均衡

bandwidth_name

String

带宽的名称,默认值为:cce-bandwidth-******。

1-64 字符,中文、英文字符、数字、下划线、中划线或点组成。

bandwidth_chargemode

String

带宽付费模式。

  • bandwidth:按带宽计费
  • traffic:按流量计费

bandwidth_size

Integer

带宽大小,请根据具体region带宽支持范围设置,详情请参考申请弹性公网IP表4 bandwidth字段说明中size字段

bandwidth_sharetype

String

功能说明:带宽类型,标识是否是共享带宽。

取值范围:

  • WHOLE:共享带宽
  • PER:独享带宽

eip_type

String

弹性公网IP类型,请参考ELB支持的弹性公网IP类型,详情请参考申请弹性公网IP表3 publicip字段说明type字段

分享:

    相关文档

    相关产品

文档是否有解决您的问题?

提交成功!非常感谢您的反馈,我们会继续努力做到更好!
反馈提交失败,请稍后再试!

*必选

请至少选择或填写一项反馈信息

字符长度不能超过200

提交反馈 取消

如您有其它疑问,您也可以通过华为云社区问答频道来与我们联系探讨

智能客服提问云社区提问