You are viewing an older version of this section. View current production version.
Advanced Service Configuration
The serviceSpec
section is an optional section that provides advanced configuration controls over the services that are allocated to handle DDL and DML queries.
In addition to objectMetaOverrides
, you can specify the following options in this section:
type
determines how the service is exposed. Valid options areClusterIP
,NodePort
, orLoadBalancer
. Default isLoadBalancer
.loadBalancerIP
is the IP address of the load balancer if you need to manage it.loadBalancerSourceRanges
specifies the list of CIDR blocks to add to the load balancer.externalTrafficPolicy
specifies if the service routes external network traffic to either node-local or cluster-wide endpoints. Valid options areLocal
orCluster
. Default isLocal
.headless
specifies whether the service is a headless service or not. A headless service keeps track of its selected pods, but otherwise does not enable any network functionality.
If you need to specify these values, add the following section to the memsql-cluster.yaml
file as shown below.
serviceSpec:
type: "LoadBalancer"
loadBalancerIP: "1.2.3.4"
loadBalancerSourceRanges: [ "0.0.0.0/0" ]
externalTrafficPolicy: "Local"
headless: false
objectMetaOverrides:
labels:
custom: label
annotations:
custom: annotations
Refer to the Kubernetes documentation for more information about these attributes.
As of Operator 1.2.4, service creation can be disabled by setting the disableDDLAndDMLService
field to true in serviceSpec
. This will ignore all other fields in serviceSpec
, will not create new services, and will delete those services that were already created.
serviceSpec:
disableDDLAndDMLService: true