Ingress controller for Managed Service for Kubernetes
Application Load Balancer provides the Application Load Balancer Ingress controller as a tool to create and manage load balancers in Managed Service for Kubernetes clusters.
After installing the controller, you will be able to use it to create an Ingress resource to handle incoming traffic. Based on the
Ingress configuration, an L7 load balancer will be deployed automatically with all the requisite Application Load Balancer resources.
Below is an abbreviated sample configuration for an
Ingress resource. It will be used to create a load balancer to receive HTTPS traffic and to distribute it to two services based on the URI request path.
apiVersion: networking.k8s.io/v1 kind: Ingress metadata: name: alb-demo-tls spec: tls: - hosts: - <domain name> secretName: yc-certmgr-cert-id-<certificate ID from Certificate Manager> rules: - host: <domain name> http: paths: - path: /app1 pathType: Prefix backend: service: name: alb-demo-1 port: number: 80 - path: /app2 pathType: Prefix backend: service: name: alb-demo-2 port: number: 80 - pathType: Prefix path: "/" backend: service: name: alb-demo-2 port: name: http
To set up logging for an L7 load balancer created using an Application Load Balancer Ingress controller in your Managed Service for Kubernetes cluster, add the
ingress.alb.yc.io/group-settings-name annotation with a name for the Ingress group settings and specify the settings in the additional
IngressGroupSettings resource. For more information, see Ingress resource annotations.
Installation and requirements
To install the Application Load Balancer Ingress controller, you need:
- Managed Service for Kubernetes cluster.
- Cluster node group.
- Cluster namespace to store the service account key.
To learn how to install the Ingress controller, see this guide.