Yandex Cloud
Search
Contact UsGet started
  • Blog
  • Pricing
  • Documentation
  • All Services
  • System Status
    • Featured
    • Infrastructure & Network
    • Data Platform
    • Containers
    • Developer tools
    • Serverless
    • Security
    • Monitoring & Resources
    • ML & AI
    • Business tools
  • All Solutions
    • By industry
    • By use case
    • Economics and Pricing
    • Security
    • Technical Support
    • Customer Stories
    • Gateway to Russia
    • Cloud for Startups
    • Education and Science
  • Blog
  • Pricing
  • Documentation
Yandex project
© 2025 Yandex.Cloud LLC
Yandex Application Load Balancer
  • Getting started
    • Overview
      • Overview
      • How it works
      • Installing an Ingress controller
      • Updating an Ingress controller
    • Configuring security groups
    • Working with service accounts
    • Creating or updating resources based on a configuration
  • Access management
  • Pricing policy
  • Terraform reference
  • Monitoring metrics
  • Audit Trails events
  • L7 load balancer logs
  • Release notes
  1. Tools for Managed Service for Kubernetes
  2. Ingress controller
  3. Updating an Ingress controller

Upgrading an Application Load Balancer Ingress controller for Managed Service for Kubernetes

Written by
Yandex Cloud
Updated at April 22, 2025

ALB Ingress Controller versions 0.2.0 are incompatible with any 0.1.x releases. This incompatibility causes backend groups limitations.

One method for creating a backend group involves specifying rules directly in the Ingress resource. Pre-0.2.0 ALB Ingress Controller versions map each backend group to a distinct combination of host, http.paths.path, and http.paths.pathType values. ALB Ingress Controllers v0.2.0 and later map backend groups to the backend.service setting of the Ingress resource. This setting specifies a Kubernetes service. For more information about Ingress resource configuration and settings, see the relevant Kubernetes article.

When upgrading your ALB Ingress Controller from version 0.1.x to 0.2.0 or later, check whether any of the following scenarios apply to your Ingress resource groups, .i.e., Ingress resources with matching ingress.alb.yc.io/group-name values:

  • They are configured with the same host, http.paths.path, and http.paths.pathType combinations, but different backend.service.name, i.e., Kubernetes service, values. In this case, recreate your backend groups as HttpBackendGroup custom resources.

  • There is one Kubernetes service per multiple host, http.paths.path, and http.paths.pathType combinations. In this case, check whether their backend setitngs differ. For example, one Ingress resource group can route gRPC traffic, while another handles HTTP connections.

    If backend settings match, no configuration changes are needed. Otherwise, follow the steps below:

    1. Create an individual Service configuration file for each Ingress resource group and specify the following settings:

      • Service name: Use a different name for each service.
      • Deployment: This name must be the same for all services, as you previously used only one Kubernetes service.
      • Backend settings differing between Ingress resource groups.
      Sample configuration file
      apiVersion: v1
      kind: Service
      metadata:
        name: alb-demo-service-1 # Specify different names for each service.
      spec:
        selector:
          app: alb-demo-app # Specify the same Deployment for each service.
        type: NodePort
        ports:
          ... # Specify the settings differing for Ingress resource groups.
      
    2. Apply the configurations:

      kubectl apply -f <configuration_file_names>
      
    3. Change Kubernetes service names in the Ingress resources. In the backend.service.name setting, specify the service name associated with the Ingress resource’s group.

    4. Apply the updated Ingress resource configurations:

      kubectl apply -f <Ingress_resource_file_names>
      

Note

If you cannot change the Ingress resource configuration, do not upgrade the ALB Ingress Controller, or it will lead to collisions.

Was the article helpful?

Previous
Installing an Ingress controller
Next
Ingress
Yandex project
© 2025 Yandex.Cloud LLC