Note: This bug is displayed in read-only format because the product is no longer active in Red Hat Bugzilla.

Bug 1584021

Summary: LoadBalancer Type service failed to create in OpenShift on Azure if there is an existing ALB for the availability set
Product: OpenShift Container Platform Reporter: Takayoshi Tanaka <tatanaka>
Component: NetworkingAssignee: Dan Mace <dmace>
Networking sub component: router QA Contact: Hongan Li <hongli>
Status: CLOSED CURRENTRELEASE Docs Contact:
Severity: unspecified    
Priority: unspecified CC: aos-bugs, bbennett, bleanhar, cdc, clasohm, jokerman, mmccomas, vwalek, wmeng
Version: 3.9.0Keywords: NeedsTestCase
Target Milestone: ---   
Target Release: 3.11.z   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2019-10-11 00:05:09 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Attachments:
Description Flags
issue description with figures none

Description Takayoshi Tanaka 2018-05-30 07:45:08 UTC
Created attachment 1445706 [details]
issue description with figures

Description of problem:
If OpenShift cluster has an Azure Load Balancer (ALB) as a router load balancer, OpenShift can’t provision LoadBalancer Type service whose backend pod is running on infra nodes.

Version-Release number of selected component (if applicable):
3.9

How reproducible:
Always

Steps to Reproduce:
1. Provision OpenShift on Azure
2. OpenShift routers are running on infra nodes and infra nodes belong to one Azure Availability Set. I call this Availability Set as "infranode-set".
3. To load balancer OpenShift routers, Azure Load Balancer (ALB) is provisioned. The backend pool of ALB is "infranode-set".
4. Create a LoadBalancer type service whose backend pod is running on one of infra nodes.

~~~
apiVersion: v1
kind: Service
spec:
  ports:
  - name: db
    port: 3306
    protocol: TCP
    targetPort: 3306
  selector:
    name: app-on-infranode
  sessionAffinity: None
  type: LoadBalancer
~~~

Actual results:
Failed to create ALB because one Availability Set can belong to at most one ALB.

Expected results:
Successfully provision LoadBalancer Type Service.

Additional info:
Since it's difficult for me to explain the detail in the simple text, I'm attaching the PDF with figures.
I think we have some workarounds but the manual steps are required for workarounds. The customer would like to reduce manual steps and hope OpenShift manages everything.

Comment 2 Takayoshi Tanaka 2018-05-30 07:52:23 UTC
I wonder possible solutions are:
- LoadBalancer Type service on Azure supports ALB Standard SKU.
- LoadBalancer Type service on Azure supports to use the existing Load Balancer. It means ALB in the infra nodes can work both for OpenShift router load balancer and LoadBalancer Type service.

Comment 7 Dan Mace 2019-10-11 00:05:09 UTC
Closing due to age and case status. Let me know if I've made a mistake. Azure is supported in v4.

Comment 8 Red Hat Bugzilla 2023-09-15 01:27:18 UTC
The needinfo request[s] on this closed bug have been removed as they have been unresolved for 365 days