[jira] [Commented] (YARN-8161) ServiceState FLEX should be removed

2018-04-19 Thread Eric Yang (JIRA)

[ 
https://issues.apache.org/jira/browse/YARN-8161?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16444285#comment-16444285
 ] 

Eric Yang commented on YARN-8161:
-

[~gsaha] My concern is that /app/v1/services/[service]/components/[component] 
entry point is overloaded with multiple operations, such as start, stop, flex.  
Without explicitly call out the operation to perform, container number can be 
confusing to both end users and developers what operation would be performed by 
the given parameters when the service is in different states.  How about we 
rename "state":" to "operation"?  I don't think we can rely on this entry point 
being smart enough to decipher user intend since human can be quite unclear in 
self expression.

> ServiceState FLEX should be removed
> ---
>
> Key: YARN-8161
> URL: https://issues.apache.org/jira/browse/YARN-8161
> Project: Hadoop YARN
>  Issue Type: Sub-task
>  Components: yarn-native-services
>Affects Versions: 3.1.0
>Reporter: Gour Saha
>Priority: Major
>
> ServiceState FLEX is not required to trigger flex up/down of containers and 
> should be removed



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: yarn-issues-unsubscr...@hadoop.apache.org
For additional commands, e-mail: yarn-issues-h...@hadoop.apache.org



[jira] [Commented] (YARN-8161) ServiceState FLEX should be removed

2018-04-19 Thread Gour Saha (JIRA)

[ 
https://issues.apache.org/jira/browse/YARN-8161?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16443747#comment-16443747
 ] 

Gour Saha commented on YARN-8161:
-

I still don't understand why State is required for flex. A user wants to flex 
means she only cares about modifying the number of containers running. It does 
not matter what state the service is actually in. The service might be not 
running at all, in which case the REST API should respond appropriately. The 
service might be ACCEPTED state or UPGRADING state each of which should be 
handed accordingly if a flex request comes in. I also don't understand where 
you are getting the state STOP from.

Most importantly, I do not like end-user facing designs to be influenced by 
"how beneficial it is for developers to develop/maintain code". A product 
should be designed with end-user in mind.

> ServiceState FLEX should be removed
> ---
>
> Key: YARN-8161
> URL: https://issues.apache.org/jira/browse/YARN-8161
> Project: Hadoop YARN
>  Issue Type: Sub-task
>  Components: yarn-native-services
>Affects Versions: 3.1.0
>Reporter: Gour Saha
>Priority: Major
>
> ServiceState FLEX is not required to trigger flex up/down of containers and 
> should be removed



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: yarn-issues-unsubscr...@hadoop.apache.org
For additional commands, e-mail: yarn-issues-h...@hadoop.apache.org



[jira] [Commented] (YARN-8161) ServiceState FLEX should be removed

2018-04-17 Thread Eric Yang (JIRA)

[ 
https://issues.apache.org/jira/browse/YARN-8161?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16441821#comment-16441821
 ] 

Eric Yang commented on YARN-8161:
-

State is required, otherwise, it is hard to figure out what operation will be 
performed.  Users may submit json that look like this:

{code}
{
  "number_of_containers": 3
  "state" : "STOP"
}
{code}

This may become ambiguous and non-deterministic when code is modified by other 
developers that were not initially involved in this project.

> ServiceState FLEX should be removed
> ---
>
> Key: YARN-8161
> URL: https://issues.apache.org/jira/browse/YARN-8161
> Project: Hadoop YARN
>  Issue Type: Sub-task
>  Components: yarn-native-services
>Affects Versions: 3.1.0
>Reporter: Gour Saha
>Priority: Major
>
> ServiceState FLEX is not required to trigger flex up/down of containers and 
> should be removed



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: yarn-issues-unsubscr...@hadoop.apache.org
For additional commands, e-mail: yarn-issues-h...@hadoop.apache.org



[jira] [Commented] (YARN-8161) ServiceState FLEX should be removed

2018-04-17 Thread Gour Saha (JIRA)

[ 
https://issues.apache.org/jira/browse/YARN-8161?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16441451#comment-16441451
 ] 

Gour Saha commented on YARN-8161:
-

A simple operation of flex up/down cannot be this complex. That's why I am 
simplifying it to an extent where the state is not even required.

A service-owner wants to change the number of containers running for one/more 
components of her service. The new number of containers is all that she needs 
to provide.

So for the API call of -
{code}
curl -i --negotiate -u : -X PUT -H "Content-Type: application/json" 
-d@/tmp/flex.json 
http://eyang-2.openstacklocal:8088/app/v1/services/q1/components/ping
{code}

the JSON payload required is as simple as -
{code}
{
"number_of_containers" : 3
}
{code}


> ServiceState FLEX should be removed
> ---
>
> Key: YARN-8161
> URL: https://issues.apache.org/jira/browse/YARN-8161
> Project: Hadoop YARN
>  Issue Type: Sub-task
>  Components: yarn-native-services
>Affects Versions: 3.1.0
>Reporter: Gour Saha
>Priority: Major
>
> ServiceState FLEX is not required to trigger flex up/down of containers and 
> should be removed



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: yarn-issues-unsubscr...@hadoop.apache.org
For additional commands, e-mail: yarn-issues-h...@hadoop.apache.org



[jira] [Commented] (YARN-8161) ServiceState FLEX should be removed

2018-04-16 Thread Eric Yang (JIRA)

[ 
https://issues.apache.org/jira/browse/YARN-8161?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16439811#comment-16439811
 ] 

Eric Yang commented on YARN-8161:
-

[~gsaha] Thank you for filing this issue.  The current REST API performs 
operations such as:

{quote}
curl -i --negotiate -u : -X PUT -H "Content-Type: application/json" 
-d@/tmp/flex.json 
http://eyang-2.openstacklocal:8088/app/v1/services/q1/components/ping
{quote}

The payload of JSON shows:
{quote}
{
"name" : "ping",
"number_of_containers" : 3,
"run_privileged_container" : false,
"state" : "FLEXING"
}
{quote}

The state is in progressive tense.  There is no clear indicator when querying 
GET status API, whether AM is actually performing the operation, or the state 
was set by user who issued the operation request.

It would be nice to enhance the API to be more responsive by separating user 
requested operation and state change. 
 For example, the pay load could be:
{quote}
{
"name" : "ping",
"number_of_containers" : 3,
"run_privileged_container" : false,
"state" : "FLEX"
}
{quote}

Application Master code will change to FLEXING when operation is being worked 
on.  GET status API is invoked.
{quote}
...
{
"name" : "ping",
"number_of_containers" : 3,
"run_privileged_container" : false,
"state" : "FLEXING"
}
...
{quote}

When operation is finished, it reaches STABLE state:
{quote}
...
{
"name" : "ping",
"number_of_containers" : 3,
"run_privileged_container" : false,
"state" : "STABLE"
}
...
{quote}

The state transition provides better user feedback between state being 
triggered, or server is currently working on the operation.  

The original code was written such that -flex operation is in cli code, which 
switch to FLEXING when it reaches REST API.  For third party developer that 
does not rely on cli code base, this can be confusing.  I think more feedback 
from the community, can help to decide to simply code base by removing present 
tense state transition, or adding present tense transition for better user 
feedback.

> ServiceState FLEX should be removed
> ---
>
> Key: YARN-8161
> URL: https://issues.apache.org/jira/browse/YARN-8161
> Project: Hadoop YARN
>  Issue Type: Sub-task
>  Components: yarn-native-services
>Affects Versions: 3.1.0
>Reporter: Gour Saha
>Priority: Major
>
> ServiceState FLEX is not required to trigger flex up/down of containers and 
> should be removed



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: yarn-issues-unsubscr...@hadoop.apache.org
For additional commands, e-mail: yarn-issues-h...@hadoop.apache.org