create an internal mixed protocol loadbalancer in Azure AKS

3/4/2020

I'm trying to create an internal mixed protocol loadbalancer in Azure AKS (tried 1.15.5, 1.15.7 and 1.16.4) using this yaml:

---
apiVersion: v1
kind: Service
metadata:
  annotations:
    service.beta.kubernetes.io/azure-load-balancer-mixed-protocols: "true"
    service.beta.kubernetes.io/azure-load-balancer-internal: "true"
  name: consullb
spec:
  ports:
        - port: 8500
          targetPort: 8500
          name: http
          protocol: TCP
        - port: 8400
          targetPort: 8400
          name: rpc
          protocol: TCP
        - port: 8301
          targetPort: 8301
          name: serflan-tcp
          protocol: TCP
        - port: 8302
          targetPort: 8302
          name: serfwan-tcp
          protocol: TCP
        - port: 8300
          targetPort: 8300
          name: server
          protocol: TCP
        - port: 8600
          targetPort: 8600
          name: consuldns-tcp
          protocol: TCP
        - port: 8301
          targetPort: 8301
          name: serflan-udp
          protocol: UDP
        - port: 8302
          targetPort: 8302
          name: serfwan-udp
          protocol: UDP
        - port: 8600
          targetPort: 8600
          name: consuldns-udp
          protocol: UDP
  selector:
    component: consul-1582621245-consul    
  type: LoadBalancer

I get the following error:

cannot create an external load balancer with mix protocols

I tested two different clusters one with the Standard SKU and one with the Basic SKU.

Anything I'm missing here? Or could someone point me other aspects to try/troubleshoot?

-- JMan
azure
azure-aks
azure-load-balancer
kubernetes

0 Answers