Bug 1399795

Summary: [RFE] HPA waits on pods being marked as Ready
Product: OpenShift Container Platform Reporter: Eric Jones <erjones>
Component: NodeAssignee: Solly Ross <sross>
Status: CLOSED WONTFIX QA Contact: DeShuai Ma <dma>
Severity: medium Docs Contact:
Priority: medium    
Version: 3.3.1CC: aos-bugs, decarr, eparis, jokerman, mmccomas, sross, tdawson
Target Milestone: ---   
Target Release: ---   
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: 2017-02-03 20:17:57 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:

Description Eric Jones 2016-11-29 18:32:08 UTC
- What is the nature and description of the request? 
As an developer I require the ability to not have my application scale untilafter it is ready

- Why does the customer need this? (List the business requirements here) 
They need to be able to deploy all components of an application (imagestream, service, DC/RC, HPA, etc.) at once and not have the HPA try to scale everything upbefore the application is ready.

- How would the customer like to achieve this? (List the functional requirements here) 
Have the HPA catch on the Readiness Probe of the Pod

- For each functional requirement listed, specify how Red Hat and the customer can test to confirm the requirement is successfully implemented.
Deploy an app with a readiness probe and HPA and have it not scale till after the app is stable.

- Is there already an existing RFE upstream or in Red Hat Bugzilla?
Yes:
https://github.com/kubernetes/kubernetes/pull/33593

It is already supposed to be a thing in 3.4:
https://github.com/openshift/ose/blob/enterprise-3.4/vendor/k8s.io/kubernetes/pkg/controller/podautoscaler/metrics/metrics_client.go#L126

But is not in 3.3:
https://github.com/openshift/ose/blob/v3.3.1.4/vendor/k8s.io/kubernetes/pkg/controller/podautoscaler/metrics/metrics_client.go#L125

Comment 3 Solly Ross 2016-11-29 19:45:46 UTC
FYI: the linked line in 3.4 deals with pod phase (Pending / Running / etc), not pod condition (Ready / Unready).  The linked PR, which deals with Ready / Unready, is in Kubernetes 1.5, so I'll be a thing in 3.5

Comment 4 Troy Dawson 2017-01-27 17:44:56 UTC
Since this is a backport request for 3.3, and there is no pull request yet, I am putting this back to Assigned until the 3.3 backport pull request is created and added to this bug.