服务基础配置
服务名称
服务名称
参数名 |
取值范围 |
默认值 |
是否允许修改 |
作用范围 |
---|---|---|---|---|
name |
0-253字符 |
无 |
创建时可修改 |
CCE Standard/CCE Turbo |
命令空间
服务所在的命名空间
参数名 |
取值范围 |
默认值 |
是否允许修改 |
作用范围 |
---|---|---|---|---|
namespace |
0-63字符 |
default |
创建时可修改 |
CCE Standard/CCE Turbo |
服务访问类型
服务允许指定业务需要的类型
参数名 |
取值范围 |
默认值 |
是否允许修改 |
作用范围 |
---|---|---|---|---|
type |
ClusterIP/Nodeport/Loadbalancer/ExternalName |
ClusterIP |
允许 |
CCE Standard/CCE Turbo |
ClusterIP:通过集群的内部 IP 暴露服务,选择该值时服务只能够在集群内部访问。 这也是你没有为服务显式指定 type 时使用的默认值。 你可以使用 Ingress 或者 Gateway API 向公众暴露服务。
NodePort:通过每个节点上的 IP 和静态端口(NodePort)暴露服务。 为了让节点端口可用,Kubernetes 设置了集群 IP 地址,这等同于您请求 type: ClusterIP 的服务。
LoadBalancer:使用云提供商的负载均衡器向外部暴露服务。华为云的Loadbalancer类型服务对接的ELB负载均衡服务。
ExternalName:将服务映射到 externalName 字段的内容(例如,映射到主机名api.foo.bar.example)。 该映射将集群的 DNS 服务器配置为返回具有该外部主机名值的 CNAME 记录。 无需创建任何类型代理。
配置建议:
根据业务诉求配置类型
服务标签
服务的标签是service上标记的键值对,旨在用于指定对用户有意义且相关的对象的标识属性
参数名 |
取值范围 |
默认值 |
是否允许修改 |
作用范围 |
---|---|---|---|---|
labels |
键名至多能使用63个字符,支持字母、数字、连接号(-)、下划线(_)、点号(.) 等字符,且只能以字母或数字开头 |
无 |
允许 |
CCE Standard/CCE Turbo |
用户可以使用Labels对service资源对象进行标识、组织和选择。标签对于系统运行,没有直接意义,也不用于存储结构化或复杂数据。因为,标签将建立索引和反索引,用于查询和监控。
配置建议:
用户可以使用Labels对service资源对象进行标识、组织和选择。标签对于系统运行,没有直接意义,也不用于存储结构化或复杂数据。因为,标签将建立索引和反索引,用于查询和监控。
标签选择器
标签选择器支持通过标签过滤出工作负载并且与之关联
参数名 |
取值范围 |
默认值 |
是否允许修改 |
作用范围 |
---|---|---|---|---|
selector |
1.等值关系:操作符有 "=、==、!=" 三种,都表示”等值“关系,最后一个表示”不等“关系
KEY not in (VALUE1,VALUE2,...) KEY: 所有存在此键名标签的资源; !KEY: 所有不存在此键名标签的资源。 |
无 |
允许 |
CCE Standard/CCE Turbo |
标签选择器用于表达标签的查询条件或选择标准,选中具体的工作负载
配置建议:
根据业务设置标签选择器并匹配对应的后端工作负载
服务亲和
集群级别:流量可以转发到集群下全部的节点,均衡性强、因存在多跳场景有一定性能损失,会隐藏客户端源 IP
节点级别:流量仅转发到服务关联 Pod 所在的节点、均衡性差,无性能损失,可保留客户端源 IP
参数名 |
取值范围 |
默认值 |
是否允许修改 |
作用范围 |
---|---|---|---|---|
externalTrafficPolicy |
Cluster/Local |
Cluster |
允许 |
CCE Standard/CCE Turbo |
此参数表示Service是否希望将外部流量路由到节点本地后端或集群范围的后端。 有两个可用选项:Cluster(默认)和 Local。 Cluster 隐藏了客户端源 IP,可能导致第二跳到另一个节点,但具有良好的整体负载分布。 Local 保留客户端源 IP 并避免 LoadBalancer 和 NodePort 类型服务的第二跳, 但存在潜在的不均衡流量传播风险。
配置建议:
默认情况下,目标容器中看到的源 IP 将不是客户端的原始源IP,要启用保留客户端IP,建议配置externalTrafficPolicy值为local。负载均衡类型的service如要选择保留客户端IP,建议选择独享型负载均衡实例。
共享型ELB实例不支持保留客户端源IP地址