[ 
https://issues.apache.org/jira/browse/MESOS-5155?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15257139#comment-15257139
 ] 

Zhitao Li commented on MESOS-5155:
----------------------------------

[~alexr] [~adam-mesos] I noticed that previous handling of deprecation for 
shutdown_framework -> teardown_framework followed more with option 2 from 
Adam's list (warn instead of fail if value are specified in both fields, and 
ignore values from deprecated field).

The benefit of this option is a clear upgrade path for operator w/o losing ACL 
guard at any moment:

1. Rollout values for both old and new fields (I assume new field will be 
dropped in {{protobuf::parse<ACLs>}} because it's unknown value);
2. Rollout new binary version, new value will take effect instead of the old 
one;
3. Once stabilized, remove old value within deprecation cycle.

In option 1, I don't think there is a way to do this w/o either turning off ACL 
for quota in upgrade window, or forcing coordinated upgrade for both --acls 
flag and binary version (which is not easy if operator has multiple clusters).

What do you think?

> Consolidate authorization actions for quota.
> --------------------------------------------
>
>                 Key: MESOS-5155
>                 URL: https://issues.apache.org/jira/browse/MESOS-5155
>             Project: Mesos
>          Issue Type: Improvement
>            Reporter: Alexander Rukletsov
>            Assignee: Zhitao Li
>              Labels: mesosphere
>
> We should have just a single authz action: {{UPDATE_QUOTA_WITH_ROLE}}. It was 
> a mistake in retrospect to introduce multiple actions.
> Actions that are not symmetrical are register/teardown and dynamic 
> reservations. The way they are implemented in this way is because entities 
> that do one action differ from entities that do the other. For example, 
> register framework is issued by a framework, teardown by an operator. What is 
> a good way to identify a framework? A role it runs in, which may be different 
> each launch and makes no sense in multi-role frameworks setup or better a 
> sort of a group id, which is its principal. For dynamic reservations and 
> persistent volumes, they can be both issued by frameworks and operators, 
> hence similar reasoning applies. 
> Now, quota is associated with a role and set only by operators. Do we need to 
> care about principals that set it? Not that much. 



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to