1、需要添加一條configmap,內容如下:
[root@k8s_client ingresss]# cat tcp-service.yaml
apiVersion: v1
kind: ConfigMap
metadata:
name: tcp-services
namespace: kube-system
data:
3306: "wehgc-xm/mariadb:3306"
2、需要修改deployment ingress-nginx的參數配置,添加--tcp-service-configmap,如下:
...
containers:
- args:
- /nginx-ingress-controller
- --default-backend-service=kube-system/nginx-ingress-default-backend
- --election-id=ingress-controller-leader
- --ingress-class=nginx
- --tcp-services-configmap=kube-system/tcp-services
- --configmap=kube-system/tcp-services
- --default-ssl-certificate=$(POD_NAMESPACE)/ssl-wehgc-com
...
3、需要修改svc ingress-nginx,添加需要轉發的端口,如下:
...
spec:
clusterIP: 10.247.84.140
externalTrafficPolicy: Cluster
loadBalancerIP: 124.71.97.128
ports:
- name: http
nodePort: 32708
port: 80
protocol: TCP
targetPort: http
- name: https
nodePort: 30831
port: 443
protocol: TCP
targetPort: https
- name: proxied-tcp-3306
nodePort: 32400
port: 3306
protocol: TCP
targetPort: 3306
- name: hgc-gateway-9100
nodePort: 32338
port: 9100
protocol: TCP
targetPort: 9100
...
4、使用navicat添加負載均衡的外網ip,使用3306進行連接,如下: