I've deployed a mongodb replicatset of 2 nodes into my kubernetes, exposing them using two LoadBalancer
s in order to get access from outside kubernetes:
$ kubectl get service
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
mongodb-0-external LoadBalancer 10.43.112.251 172.19.0.2 27017:30839/TCP 3h41m
mongodb-1-external LoadBalancer 10.43.171.198 172.19.0.5 27017:31151/TCP 3h41m
Also, pods are ready:
NAME READY STATUS RESTARTS AGE
mongodb-0 1/1 Running 0 3h42m
mongodb-1 1/1 Running 0 3h42m
mongodb-arbiter-0 1/1 Running 30 3h42m
Everything seems working correctly, but I'm not quite reach replicatset from my host.
I've created an ingress for both LoadBalancer
s, using traefik IngressRouteTCP
:
apiVersion: traefik.containo.us/v1alpha1
kind: IngressRouteTCP
metadata:
name: mongodb-0
spec:
entryPoints:
- web
routes:
- match: HostSNI(`mongo0.localhost`)
services:
- name: mongodb-0-external
port: 27017
---
apiVersion: traefik.containo.us/v1alpha1
kind: IngressRouteTCP
metadata:
name: mongodb-1
spec:
entryPoints:
- web
routes:
- match: HostSNI(`mongo1.localhost`)
services:
- name: mongodb-1-external
port: 27017
Questions:
LoadBalancer
?