自定义Apache Ignite K8s Operator创建ClusterIP服务及配置亲和性与容忍度
GridGain Operator 配置优化指南
固定服务类型为ClusterIP
不要手动修改Kubernetes服务资源,因为GridGain Operator会根据Ignite自定义资源(CR)的配置自动 reconcile 服务,手动修改会被覆盖。正确的做法是直接在Ignite CR中指定服务类型:
在Ignite CR的spec.service字段下设置type: ClusterIP,示例配置如下:
apiVersion: ignite.apache.org/v1alpha1 kind: Ignite metadata: name: ignite-cluster spec: service: type: ClusterIP # 保留你原有集群的其他配置项
修改后应用这个CR,Operator会自动创建并维护ClusterIP类型的服务,不会再自动改回LoadBalancer。
配置Pod的容忍度与亲和性
GridGain Operator支持通过Ignite CR的podTemplate字段传递Pod调度规则,包括容忍度(tolerations)和亲和性(affinity)。只需在spec.podTemplate.spec下添加对应配置即可,示例:
apiVersion: ignite.apache.org/v1alpha1 kind: Ignite metadata: name: ignite-cluster spec: podTemplate: spec: tolerations: - key: "special-ignite-node" operator: "Equal" value: "enabled" effect: "NoSchedule" affinity: nodeAffinity: requiredDuringSchedulingIgnoredDuringExecution: nodeSelectorTerms: - matchExpressions: - key: "node-role" operator: "In" values: - "ignite-worker" # 原有Pod配置(如容器镜像、资源请求/限制等) # 保留集群其他配置
以上配置会让Operator生成的Ignite Pod自动调度到带有node-role=ignite-worker标签的节点,并且能容忍带有special-ignite-node=enabled污点的节点。
内容的提问来源于stack exchange,提问作者Sriyas
相关产品推荐
相关产品推荐

