I have a digital ocean kubernetes and an ingress controller routing traffic. but one of the pods needs to accept TCP traffic; so i would like to make the ingress to accept the TCP traffic and route to the pod. i followed this
https://minikube.sigs.k8s.io/docs/tutorials/nginx_tcp_udp_ingress/
and
https://kubernetes.github.io/ingress-nginx/user-guide/exposing-tcp-udp-services/
after following, i still cannot connect to the port.
Below is what i have:
Load. balancer:
kind: Service
apiVersion: v1
metadata:
name: ingress-nginx
namespace: ingress-nginx
labels:
app.kubernetes.io/name: ingress-nginx
app.kubernetes.io/part-of: ingress-nginx
spec:
selector:
# app: speed-transmission-app
app.kubernetes.io/name: ingress-nginx
app.kubernetes.io/part-of: ingress-nginx
type: LoadBalancer
ports:
- name: http
port: 80
targetPort: 80
protocol: TCP
- name: https
port: 443
targetPort: 443
protocol: TCP
- name: transmission-port
port: 9000
targetPort: 8998
protocol: TCP
config map
apiVersion: v1
kind: ConfigMap
metadata:
name: tcp-services
namespace: ingress-nginx
data:
9000: "staging/speed-transmission-service:9000"
Now when i try to connect to the load balancer external IP at port 9000, i get connection lost.
I will really appreciate help on how to configure this. thanks.
This textbox defaults to using Markdown to format your answer.
You can type !ref in this text area to quickly search our full set of tutorials, documentation & marketplace offerings and insert the link!
Hi @olalekanadebari!
Can you further triage at what point the connection is failing? Do you know if it is failing to connect at the LB or the ingress-controller?
I think you may want to look into the service annotations for the loadbalancer service to set the appropriate protocols on the DO LB.
You can find the full list of valid annotations here: https://github.com/digitalocean/digitalocean-cloud-controller-manager/blob/master/docs/controllers/services/annotations.md#service-annotations
That should allow you to set protocols for the appropriate ports at the LB section.
Further reading that may be of assistance:
https://kubernetes.io/docs/concepts/services-networking/ingress/ https://docs.digitalocean.com/products/kubernetes/how-to/configure-load-balancers/
Narrowing down where the actual failure is happening will help you figure out which component is breaking the connection. I hope this helps!
Hope this helps!
John
Get paid to write technical tutorials and select a tech-focused charity to receive a matching donation.
Full documentation for every DigitalOcean product.
The Wave has everything you need to know about building a business, from raising funding to marketing your product.
Stay up to date by signing up for DigitalOcean’s Infrastructure as a Newsletter.
New accounts only. By submitting your email you agree to our Privacy Policy
Scale up as you grow — whether you're running one virtual machine or ten thousand.
Sign up and get $200 in credit for your first 60 days with DigitalOcean.*
*This promotional offer applies to new accounts only.