Example Setup of External CM Service (LoadBalancer)

To setup the OneDB External CM service you would typically set the original onedbcm service so that it can only be accessed from within the cluster. This is done by setting the serviceType to ClusterIP.

Then configure the External CM serivce accordingly. The configuration below exposes only the SSL ports for the traditional SQLI protocol.

onedb-sql:
    onedbcm:
        serviceType: ClusterIP

    onedbcm_ext:
        enabled: true
        serviceType: LoadBalancer
        ports:
            oltpsslp:            20020
            reportsslp:          20021
            oltpanysslp:         20022
            reportrsssslp:       20023

Below is a list of services showing the onedbcm-cm-service defined as ClusterIP and the onedbcm-ext-service defined as LoadBalancer. You can then access the external IP address from outside the cluster for the configured ports.

kubectl get services 

NAME                          TYPE                 CLUSTER-IP       EXTERNAL-IP            PORT(S)                   AGE
helm-1-odbp-explore         ClusterIP             10.96.220.30      <none>                 8080/TCP                  20m
helm-1-odbp-mongo           ClusterIP             10.96.44.208      <none>                 27017/TCP                 20m
helm-1-odbp-rest            ClusterIP             10.96.90.21       <none>                 8080/TCP                  20m
onedbcm-cm-service          ClusterIP             10.96.159.103     <none>                10000/TCP,20000/TCP        19m
onedbcm-ext-service         LoadBalancer          10.96.159.103     172.19.255.203        20020/TCP,20021/TCP        19m