Ingress loadbalancing TCP port

I would like to loadbalance OpenLDAP 389 ports. By default when using Ingress controller in Kubernetes it uses HTTP port.

How can I loadbalance TCP ports?

I have tried the following Ingress yaml file but didn’t work.

apiVersion: extensions/v1beta1
kind: Ingress
metadata:
  name: openldap-ingress
  namespace: services
  labels:
    app: openldap
    role: database
  annotations:
    http.port: "389"
spec:
  backend:
    serviceName: openldap
    servicePort: 389

For the record, I have Rancher version 1.6.12 running.