friendly ping... On Wed, May 15, 2019 at 10:57 AM Yaodong Yang <yangyaodon...@gmail.com> wrote:
> Hello Colin, Rajini and Jun, > > I have updated the KIP 422, please take another look! > > https://cwiki.apache.org/confluence/pages/viewpage.action?pageId=97555704 > > Thanks! > Yaodong > > On Tue, May 7, 2019 at 11:54 AM Yaodong Yang <yangyaodon...@gmail.com> > wrote: > >> Hello Colin, Rajini and Jun, >> >> I think it makes sense to have new APIs defined in the AdminClient for >> quota management only, as Colin described above. For the request and >> response protocol, It seems like we can leverage the existing requests: >> *IncrementalAlterConfigsRequest* and *DescribeConfigsRequest*. In this >> way, we convert the quota management requests (set quota, describe quota >> and delete quotas) to configuration changes for User resource and Client >> resource (e.g. update a configuration to user 1 ). And then we send the >> configuration change request to the broker side. Therefore, we will not >> have any protocol changes for this KIP. >> >> Please let me know what you think. >> >> Thanks! >> Yaodong >> >> >> On Mon, Apr 15, 2019 at 12:16 PM Colin McCabe <cmcc...@apache.org> wrote: >> >>> Hi all, >>> >>> In KIP-133: Describe and Alter Configs Admin APIs, there is "future >>> work" section that explains: >>> >>> > Future Work >>> > ... >>> > >>> > 2. Support for reading and updating client, user and replication >>> quotas. We >>> > initially included that in the KIP, but it subsequently became >>> apparent >>> > that a separate protocol and AdminClient API would be more >>> appropriate. >>> > The reason is that client/user quotas can be applied on a client id, >>> user >>> > or (client id, user) tuple. In the future, the hierarchy may get even >>> more >>> > complicated. So, it makes sense to keeping the API simple for the >>> simple >>> > cases while introducing a more sophisticated API for the more complex >>> case. >>> >>> In other words, we deliberately didn't implement quotas through >>> AlterConfigs because we felt like it the AlterConfigs API wasn't really >>> complex enough to handle quotas well. >>> >>> I think that the original discussion was correct here -- we should have >>> a special API for quotas, rather than trying to shoehorn them into the >>> AlterConfigs API. >>> >>> For example, we could have an API like this: >>> >>> > >>> > SetQuotasResults setQuotas(Map<QuotaTarget, QuotaLimit> quotas, >>> SetQuotasOptions options) >>> > >>> > interface QuotaTarget { >>> > } >>> > >>> > class ClientQuotaTarget implements QuotaTarget { >>> > String clientId; >>> > } >>> > >>> > class PrincipalQuotaTarget implements QuotaTarget { >>> > String principal; >>> > } >>> > >>> > class ClientAndPrincipalQuotaTarget implements QuotaTarget { >>> > String clientId; >>> > String principal; >>> > } >>> > >>> > class QuotaLimit { >>> > long bytesWrittenPerSec; >>> > long bytesReadPerSec; >>> > } >>> > >>> > DescribeQuotasResults describeQuotas(QuotaTarget target, >>> DescribeQuotasOptions options); >>> > >>> > ListQuotasResults listQuotas(ListQuotasOptions options); >>> > >>> >>> This would avoid the need to parse text strings. It would also make it >>> really clear how to use and extend the API. >>> >>> best, >>> Colin >>> >>> On Mon, Apr 8, 2019, at 05:29, Rajini Sivaram wrote: >>> > Hi Jun, Yaodong, >>> > >>> > 21. The proposed approach sounds very hacky. User principals can >>> contain >>> > arbitrary characters. So we can't simply split `user1/clients/clientA` >>> into >>> > tokens using '/' as delimiter. Internally, we sanitize names before >>> > storing in ZK, but the names provided by the user are actual >>> principals and >>> > client-ids. I think we want to have entity names that explicitly >>> specify >>> > (type, name) as in the CLI kafka-configs.sh and allow multiple >>> entities to >>> > be specified together for (user, client-id). That will also enable us >>> to >>> > configure defaults in a consistent way. >>> > >>> > 22. Yes, that sounds reasonable. >>> > >>> > On Fri, Apr 5, 2019 at 11:13 PM Jun Rao <j...@confluent.io> wrote: >>> > >>> > > Hi, Yaodong, >>> > > >>> > > Yes, what you proposed makes sense. A couple of more comments. >>> > > >>> > > 21. Could you add those examples to the KIP wiki? It would also be >>> useful >>> > > to know how to set the ConfigEntry value for quotas at >>> > > DefaultClientInUser, DefaultClientDefaultUser and DefaultUser level. >>> > > >>> > > 22. To support KIP-257, I guess we can just pass in some special >>> string >>> > > value in ConfigEntry value through alterConfig and let the customized >>> > > implementation of ClientQuotaCallback parse it. It would be useful to >>> > > document this. Does that sound reasonable, Rajini? >>> > > >>> > > Thanks, >>> > > >>> > > Jun >>> > > >>> > > On Fri, Apr 5, 2019 at 2:03 PM Yaodong Yang <yangyaodon...@gmail.com >>> > >>> > > wrote: >>> > > >>> > >> Hi Jun, >>> > >> >>> > >> The proposal we have right now is to directly set the quota through >>> > >> existing admin client APIs. See following examples: >>> > >> >>> > >> Example 1: set a user quota >>> > >> >>> > >> AdminClient adminClient = mock(AdminClient.class); >>> > >> Map<ConfigResource, Config> configs = new HashMap(); >>> > >> Config config = new Config(Arrays.asList(new ConfigEntry("user1", >>> > >> "producer_byte_rate=1024"))); >>> > >> configs.put(singletonMap(ConfigResource.USER, config)); >>> > >> adminClient.alterConfigs(configs); >>> > >> >>> > >> >>> > >> Example 2: set a client id quota >>> > >> >>> > >> AdminClient adminClient = mock(AdminClient.class); >>> > >> Map<ConfigResource, Config> configs = new HashMap(); >>> > >> Config config = new Config(Arrays.asList(new ConfigEntry("client1", >>> > >> "producer_byte_rate=1024"))); >>> > >> configs.put(singletonMap(ConfigResource.CLIENT, config)); >>> > >> adminClient.alterConfigs(configs); >>> > >> >>> > >> >>> > >> Example 3: set a <user, client-id> quota >>> > >> >>> > >> AdminClient adminClient = mock(AdminClient.class); >>> > >> Map<ConfigResource, Config> configs = new HashMap(); >>> > >> Config config = new Config(Arrays.asList(new >>> > >> ConfigEntry("user1/clients/client2", "producer_byte_rate=1024"))); >>> > >> configs.put(singletonMap(ConfigResource.USER, config)); >>> > >> adminClient.alterConfigs(configs); >>> > >> >>> > >> >>> > >> The current KIP is orthogonal to KIP 257. It only adds a new way to >>> store >>> > >> the quotas in ZK through AdminClient. For customizable quotas, they >>> will >>> > >> also be a property in User resources or Client resources. >>> > >> >>> > >> Quote from >>> *CustomQuotaCallbackTest.scala::GroupedUserQuotaCallback* in >>> > >> the >>> > >> codebase, “Group quotas are configured in ZooKeeper as user quotas >>> with >>> > >> the >>> > >> entity name "${group}_". Default group quotas are configured in >>> ZooKeeper >>> > >> as user quotas with the entity name "_".” >>> > >> In this example, they are always stored as properties in the User >>> > >> resource, >>> > >> the property name is “$(group)_” and “_”. The client application >>> needs to >>> > >> encode them correctly before store them in ZK through AdminClient, >>> while >>> > >> the customizedCallback needs to decode them and apply during the >>> process >>> > >> of >>> > >> each request. >>> > >> >>> > >> The advantage of the current KIP is simple and extensible for the >>> future >>> > >> release. The alternative is to introduce a new set of quota related >>> APIs >>> > >> in >>> > >> the AdminClient, similar to the ACL related. I'm not sure which one >>> people >>> > >> prefer. >>> > >> >>> > >> Thanks! >>> > >> Yaodong >>> > >> >>> > >> On Wed, Mar 13, 2019 at 6:29 PM Jun Rao <j...@confluent.io> wrote: >>> > >> >>> > >> > Hi, Yaodong, >>> > >> > >>> > >> > Thanks for the updated KIP. A few more comments below. >>> > >> > >>> > >> > 11. For quotas, in addition to user and client, we need to be >>> able to >>> > >> set a >>> > >> > quota for <client, user> combination. Would that be a new >>> resource type? >>> > >> > How would the name look like for this resource? >>> > >> > >>> > >> git chec >>> > >> >>> > >> > >>> > >> > 12. Similarly, to support customizable quota ( >>> > >> > >>> > >> > >>> > >> >>> https://cwiki.apache.org/confluence/display/KAFKA/KIP-257+-+Configurable+Quota+Management >>> > >> > ), >>> > >> > do we need a new resource type? What would the name of the >>> resource >>> > >> looks >>> > >> > like? >>> > >> > >>> > >> > 13. You only listed 2 new ConfigSource. Could you list all the >>> new ones? >>> > >> > For example, >>> > >> > >>> > >> > >>> > >> >>> https://cwiki.apache.org/confluence/display/KAFKA/KIP-248+-+Create+New+ConfigCommand+That+Uses+The+New+AdminClient >>> > >> > listed a few others such as ClientInUser, DefaultClientInUser. >>> > >> > >>> > >> > 14. Could you list any new ACL that might be required? For >>> example, what >>> > >> > types of operations are allowed for the new Resource (User, >>> Client, >>> > >> etc)? >>> > >> > What are the permissions needed for the new operations? >>> > >> > >>> > >> > 15. Could you give a few examples on how to use the new API? >>> > >> > >>> > >> > Thanks, >>> > >> > >>> > >> > Jun >>> > >> > >>> > >> > On Tue, Mar 12, 2019 at 9:56 AM Yaodong Yang < >>> yangyaodon...@gmail.com> >>> > >> > wrote: >>> > >> > >>> > >> > > ping... >>> > >> > > >>> > >> > > On Thu, Feb 28, 2019 at 10:23 AM Yaodong Yang < >>> > >> yangyaodon...@gmail.com> >>> > >> > > wrote: >>> > >> > > >>> > >> > >> Hello folks, >>> > >> > >> >>> > >> > >> Please share your comments for this KIP 😄 >>> > >> > >> >>> > >> > >> Thanks! >>> > >> > >> Yaodong >>> > >> > >> >>> > >> > >> On Tue, Feb 26, 2019 at 6:53 PM Yaodong Yang < >>> > >> yangyaodon...@gmail.com> >>> > >> > >> wrote: >>> > >> > >> >>> > >> > >>> Hello Colin, >>> > >> > >>> >>> > >> > >>> There is a POC PR for this KIP, and it contains most changes >>> we are >>> > >> > >>> proposing now. >>> > >> > >>> >>> > >> > >>> Best, >>> > >> > >>> Yaodong >>> > >> > >>> >>> > >> > >>> On Tue, Feb 26, 2019 at 6:51 PM Yaodong Yang < >>> > >> yangyaodon...@gmail.com> >>> > >> > >>> wrote: >>> > >> > >>> >>> > >> > >>>> Hello Colin, >>> > >> > >>>> >>> > >> > >>>> CIL, >>> > >> > >>>> >>> > >> > >>>> Thanks! >>> > >> > >>>> Yaodong >>> > >> > >>>> >>> > >> > >>>> >>> > >> > >>>> On Tue, Feb 26, 2019 at 9:59 AM Colin McCabe < >>> cmcc...@apache.org> >>> > >> > >>>> wrote: >>> > >> > >>>> >>> > >> > >>>>> Hi Yaodong, >>> > >> > >>>>> >>> > >> > >>>>> I don't understand how the proposed API would be used. It >>> talks >>> > >> > about >>> > >> > >>>>> adding a ConfigResource type for clients and users, but >>> doesn't >>> > >> > explain >>> > >> > >>>>> what can be done with these. >>> > >> > >>>>> >>> > >> > >>>> >>> > >> > >>>> Sorry for the confusion. I just updated the KIP, and >>> hopefully it >>> > >> will >>> > >> > >>>> make it easier for you and other people. Looking forward to >>> your >>> > >> > feedback! >>> > >> > >>>> >>> > >> > >>>> >>> > >> > >>>>> In the compatibility section (?) it says "We only add a new >>> way to >>> > >> > >>>>> configure the quotas" which suggests that quotas are >>> involved >>> > >> > somehow What >>> > >> > >>>>> relationship does this have with KIP-257? >>> > >> > >>>>> >>> > >> > >>>> >>> > >> > >>>> Let me give you more context, feel free to correct me if I'm >>> wrong >>> > >> 😁 >>> > >> > >>>> >>> > >> > >>>> 1. Originally we hit an issue that we can not config client >>> quota >>> > >> > >>>> through AdminClient. The only way available for us is >>> directly talk >>> > >> > to ZK >>> > >> > >>>> and manage quota directly. >>> > >> > >>>> >>> > >> > >>>> 2. As our client service may not in the same DC as >>> ZooKeeper, there >>> > >> > >>>> could be some cross DC communication which is less desirable. >>> > >> > >>>> >>> > >> > >>>> 3. We deicide to add the quota configuration feature in the >>> > >> > >>>> AdminClient, which will perfectly solve this issue for us. >>> > >> > >>>> >>> > >> > >>>> 4. In addition, we realized that this change can also serve >>> as a >>> > >> way >>> > >> > to >>> > >> > >>>> config other users or clients configuration in Zookeeper. For >>> > >> > instance, if >>> > >> > >>>> we have a new client configuration introduced in the future >>> and >>> > >> they >>> > >> > need >>> > >> > >>>> to be in the Zookeeper as well, we can mange it through the >>> same >>> > >> API. >>> > >> > >>>> Therefore, this KIP is renamed to manage users/clients >>> > >> configurations. >>> > >> > >>>> Quota management is one use case for this configuration >>> management. >>> > >> > >>>> >>> > >> > >>>> 5. KIP-257 is also compatible with the current KIP. For >>> instance, >>> > >> if >>> > >> > >>>> user want to update a quota for a metric, the client side >>> need to >>> > >> > parse it, >>> > >> > >>>> and eventually pass in a user or client config to >>> AdminClient. >>> > >> > AdminClient >>> > >> > >>>> will make sure such configuration changes are applied in the >>> > >> > Zookeeper. >>> > >> > >>>> >>> > >> > >>>> >>> > >> > >>>>> best, >>> > >> > >>>>> Colin >>> > >> > >>>>> >>> > >> > >>>>> >>> > >> > >>>>> On Fri, Feb 22, 2019, at 15:11, Yaodong Yang wrote: >>> > >> > >>>>> > Hi Colin, >>> > >> > >>>>> > >>> > >> > >>>>> > CIL, >>> > >> > >>>>> > >>> > >> > >>>>> > Thanks! >>> > >> > >>>>> > Yaodong >>> > >> > >>>>> > >>> > >> > >>>>> > >>> > >> > >>>>> > On Fri, Feb 22, 2019 at 10:56 AM Colin McCabe < >>> > >> cmcc...@apache.org> >>> > >> > >>>>> wrote: >>> > >> > >>>>> > >>> > >> > >>>>> > > Hi Yaodong, >>> > >> > >>>>> > > >>> > >> > >>>>> > > KIP-422 says that it would be good if "applications >>> [could] >>> > >> > >>>>> leverage the >>> > >> > >>>>> > > unified KafkaAdminClient to manage their user/client >>> > >> > >>>>> configurations, >>> > >> > >>>>> > > instead of the direct dependency on Zookeeper." But >>> the KIP >>> > >> > >>>>> doesn't talk >>> > >> > >>>>> > > about any changes to KafkaAdminClient. Instead, the >>> only >>> > >> changes >>> > >> > >>>>> proposed >>> > >> > >>>>> > > are to AdminZKClient. But that is an internal class-- >>> we >>> > >> don't >>> > >> > >>>>> need a KIP >>> > >> > >>>>> > > to change it, and it's not a public API that users can >>> use. >>> > >> > >>>>> > > >>> > >> > >>>>> > >>> > >> > >>>>> > Sorry for the confusion in the KIP. Actually there is no >>> change >>> > >> to >>> > >> > >>>>> > AdminZKClient needed for this KIP, we just leverage them >>> to >>> > >> > >>>>> configure the >>> > >> > >>>>> > properties in the ZK. You can find the details from this >>> PR >>> > >> > >>>>> > https://github.com/apache/kafka/pull/6189 >>> > >> > >>>>> > >>> > >> > >>>>> > As you can see from the PR, we need the client side and >>> server >>> > >> > >>>>> process >>> > >> > >>>>> > changes, so I feel like we still need the KIP for this >>> change. >>> > >> > >>>>> > >>> > >> > >>>>> > >>> > >> > >>>>> > > I realize that the naming might be a bit confusing, but >>> > >> > >>>>> > > kafka.zk.AdminZKClient and kafka.admin.AdminClient are >>> > >> internal >>> > >> > >>>>> classes. >>> > >> > >>>>> > > As the JavaDoc says, kafka.admin.AdminClient is >>> deprecated as >>> > >> > >>>>> well. The >>> > >> > >>>>> > > public class that we would be adding new methods to is >>> > >> > >>>>> > > org.apache.kafka.clients.admin.AdminClient. >>> > >> > >>>>> > > >>> > >> > >>>>> > >>> > >> > >>>>> > I agree. Thanks for pointing this out! >>> > >> > >>>>> > >>> > >> > >>>>> > >>> > >> > >>>>> > > best, >>> > >> > >>>>> > > Colin >>> > >> > >>>>> > > >>> > >> > >>>>> > > On Tue, Feb 19, 2019, at 15:21, Yaodong Yang wrote: >>> > >> > >>>>> > > > Hello Jun, Viktor, Snoke and Stan, >>> > >> > >>>>> > > > >>> > >> > >>>>> > > > Thanks for taking time to look at this KIP-422! For >>> some >>> > >> > reason, >>> > >> > >>>>> this >>> > >> > >>>>> > > email >>> > >> > >>>>> > > > was put in my spam folder. Sorry about that. >>> > >> > >>>>> > > > >>> > >> > >>>>> > > > Jun is right, the main motivation for this KIP-422 is >>> to >>> > >> allow >>> > >> > >>>>> users to >>> > >> > >>>>> > > > config user/clientId quota through AdminClient. In >>> addition, >>> > >> > >>>>> this KIP-422 >>> > >> > >>>>> > > > also allows users to set or update any config related >>> to a >>> > >> user >>> > >> > >>>>> or >>> > >> > >>>>> > > clientId >>> > >> > >>>>> > > > entity if needed in the future. >>> > >> > >>>>> > > > >>> > >> > >>>>> > > > For the KIP-257, I agree with Jun that we should add >>> support >>> > >> > for >>> > >> > >>>>> it. I >>> > >> > >>>>> > > will >>> > >> > >>>>> > > > look at the current implementation and update the >>> KIP-422 >>> > >> with >>> > >> > >>>>> new >>> > >> > >>>>> > > change. >>> > >> > >>>>> > > > >>> > >> > >>>>> > > > I will ping this thread once I updated the KIP. >>> > >> > >>>>> > > > >>> > >> > >>>>> > > > Thanks again! >>> > >> > >>>>> > > > Yaodong >>> > >> > >>>>> > > > >>> > >> > >>>>> > > > On Fri, Feb 15, 2019 at 1:28 AM Viktor Somogyi-Vass < >>> > >> > >>>>> > > viktorsomo...@gmail.com> >>> > >> > >>>>> > > > wrote: >>> > >> > >>>>> > > > >>> > >> > >>>>> > > > > Hi Guys, >>> > >> > >>>>> > > > > >>> > >> > >>>>> > > > > I wanted to reject that KIP, split it up and revamp >>> it as >>> > >> in >>> > >> > >>>>> the >>> > >> > >>>>> > > meantime >>> > >> > >>>>> > > > > there were some overlapping works I just didn't get >>> to it >>> > >> due >>> > >> > >>>>> to other >>> > >> > >>>>> > > > > higher priority work. >>> > >> > >>>>> > > > > One of the splitted KIPs would have been the quota >>> part of >>> > >> > >>>>> that and >>> > >> > >>>>> > > I'd be >>> > >> > >>>>> > > > > happy if that lived in this KIP if Yaodong thinks >>> it's >>> > >> worth >>> > >> > to >>> > >> > >>>>> > > > > incorporate. I'd be also happy to rebase that wire >>> > >> protocol >>> > >> > and >>> > >> > >>>>> > > contribute >>> > >> > >>>>> > > > > it to this KIP. >>> > >> > >>>>> > > > > >>> > >> > >>>>> > > > > Viktor >>> > >> > >>>>> > > > > >>> > >> > >>>>> > > > > On Wed, Feb 13, 2019 at 7:14 PM Jun Rao < >>> j...@confluent.io >>> > >> > >>> > >> > >>>>> wrote: >>> > >> > >>>>> > > > > >>> > >> > >>>>> > > > > > Hi, Yaodong, >>> > >> > >>>>> > > > > > >>> > >> > >>>>> > > > > > Thanks for the KIP. As Stan mentioned earlier, it >>> seems >>> > >> > that >>> > >> > >>>>> this is >>> > >> > >>>>> > > > > > mostly covered by KIP-248, which was originally >>> > >> proposed by >>> > >> > >>>>> Victor. >>> > >> > >>>>> > > > > > >>> > >> > >>>>> > > > > > Hi, Victor, >>> > >> > >>>>> > > > > > >>> > >> > >>>>> > > > > > Do you still plan to work on KIP-248? It seems >>> that you >>> > >> > >>>>> already got >>> > >> > >>>>> > > > > pretty >>> > >> > >>>>> > > > > > far on that. If not, would you mind letting >>> Yaodong take >>> > >> > >>>>> over this? >>> > >> > >>>>> > > > > > >>> > >> > >>>>> > > > > > For both KIP-248 and KIP-422, one thing that I >>> found >>> > >> > missing >>> > >> > >>>>> is the >>> > >> > >>>>> > > > > > support for customized quota ( >>> > >> > >>>>> > > > > > >>> > >> > >>>>> > > > > >>> > >> > >>>>> > > >>> > >> > >>>>> >>> > >> > >>> > >> >>> https://cwiki.apache.org/confluence/display/KAFKA/KIP-257+-+Configurable+Quota+Management >>> > >> > >>>>> > > > > ). >>> > >> > >>>>> > > > > > With KIP-257, it's possible for one to construct a >>> > >> > >>>>> customized quota >>> > >> > >>>>> > > > > defined >>> > >> > >>>>> > > > > > through a map of metric tags. It would be useful >>> to >>> > >> support >>> > >> > >>>>> that in >>> > >> > >>>>> > > the >>> > >> > >>>>> > > > > > AdminClient API and the wire protocol. >>> > >> > >>>>> > > > > > >>> > >> > >>>>> > > > > > Hi, Sonke, >>> > >> > >>>>> > > > > > >>> > >> > >>>>> > > > > > I think the proposal is to support the >>> user/clientId >>> > >> level >>> > >> > >>>>> quota >>> > >> > >>>>> > > through >>> > >> > >>>>> > > > > > an AdminClient api. The user can be obtained from >>> any >>> > >> > >>>>> existing >>> > >> > >>>>> > > > > > authentication mechanisms. >>> > >> > >>>>> > > > > > >>> > >> > >>>>> > > > > > Thanks, >>> > >> > >>>>> > > > > > >>> > >> > >>>>> > > > > > Jun >>> > >> > >>>>> > > > > > >>> > >> > >>>>> > > > > > On Thu, Feb 7, 2019 at 5:59 AM Sönke Liebau >>> > >> > >>>>> > > > > > <soenke.lie...@opencore.com.invalid> wrote: >>> > >> > >>>>> > > > > > >>> > >> > >>>>> > > > > >> Hi Yaodong, >>> > >> > >>>>> > > > > >> >>> > >> > >>>>> > > > > >> thanks for the KIP! >>> > >> > >>>>> > > > > >> >>> > >> > >>>>> > > > > >> If I understand your intentions correctly then >>> this KIP >>> > >> > >>>>> would only >>> > >> > >>>>> > > > > >> address a fairly specific use case, namely >>> SASL-PLAIN >>> > >> with >>> > >> > >>>>> users >>> > >> > >>>>> > > > > >> defined in Zookeeper. For all other >>> authentication >>> > >> > >>>>> mechanisms like >>> > >> > >>>>> > > > > >> SSL, SASL-GSSAPI or SASL-PLAIN with users >>> defined in >>> > >> jaas >>> > >> > >>>>> files I >>> > >> > >>>>> > > > > >> don't see how the AdminClient could directly >>> create new >>> > >> > >>>>> users. >>> > >> > >>>>> > > > > >> Is this correct, or am I missing something? >>> > >> > >>>>> > > > > >> >>> > >> > >>>>> > > > > >> Best regards, >>> > >> > >>>>> > > > > >> Sönke >>> > >> > >>>>> > > > > >> >>> > >> > >>>>> > > > > >> On Thu, Feb 7, 2019 at 2:47 PM Stanislav >>> Kozlovski >>> > >> > >>>>> > > > > >> <stanis...@confluent.io> wrote: >>> > >> > >>>>> > > > > >> > >>> > >> > >>>>> > > > > >> > This KIP seems to duplicate some of the >>> functionality >>> > >> > >>>>> proposed in >>> > >> > >>>>> > > > > >> KIP-248 >>> > >> > >>>>> > > > > >> > < >>> > >> > >>>>> > > > > >> >>> > >> > >>>>> > > > > >>> > >> > >>>>> > > >>> > >> > >>>>> >>> > >> > >>> > >> >>> https://cwiki.apache.org/confluence/display/KAFKA/KIP-248+-+Create+New+ConfigCommand+That+Uses+The+New+AdminClient >>> > >> > >>>>> > > > > >> >. >>> > >> > >>>>> > > > > >> > KIP-248 has been stuck in a vote thread since >>> July >>> > >> 2018. >>> > >> > >>>>> > > > > >> > >>> > >> > >>>>> > > > > >> > Viktor, do you plan on working on the KIP? >>> > >> > >>>>> > > > > >> > >>> > >> > >>>>> > > > > >> > On Thu, Feb 7, 2019 at 1:27 PM Stanislav >>> Kozlovski < >>> > >> > >>>>> > > > > >> stanis...@confluent.io> >>> > >> > >>>>> > > > > >> > wrote: >>> > >> > >>>>> > > > > >> > >>> > >> > >>>>> > > > > >> > > Hey there Yaodong, thanks for the KIP! >>> > >> > >>>>> > > > > >> > > >>> > >> > >>>>> > > > > >> > > I'm not too familiar with the user/client >>> > >> > >>>>> configurations we >>> > >> > >>>>> > > > > currently >>> > >> > >>>>> > > > > >> > > allow, is there a KIP describing the initial >>> > >> feature? >>> > >> > >>>>> If there >>> > >> > >>>>> > > is, >>> > >> > >>>>> > > > > it >>> > >> > >>>>> > > > > >> would >>> > >> > >>>>> > > > > >> > > be useful to include in KIP-422. >>> > >> > >>>>> > > > > >> > > >>> > >> > >>>>> > > > > >> > > I also didn't see any authorization in the >>> PR, >>> > >> have we >>> > >> > >>>>> thought >>> > >> > >>>>> > > about >>> > >> > >>>>> > > > > >> > > needing to authorize the alter/describe >>> requests >>> > >> per >>> > >> > the >>> > >> > >>>>> > > > > user/client? >>> > >> > >>>>> > > > > >> > > >>> > >> > >>>>> > > > > >> > > Thanks, >>> > >> > >>>>> > > > > >> > > Stanislav >>> > >> > >>>>> > > > > >> > > >>> > >> > >>>>> > > > > >> > > On Fri, Jan 25, 2019 at 5:47 PM Yaodong Yang >>> < >>> > >> > >>>>> > > > > yangyaodon...@gmail.com >>> > >> > >>>>> > > > > >> > >>> > >> > >>>>> > > > > >> > > wrote: >>> > >> > >>>>> > > > > >> > > >>> > >> > >>>>> > > > > >> > >> Hi folks, >>> > >> > >>>>> > > > > >> > >> >>> > >> > >>>>> > > > > >> > >> I've published KIP-422 which is about adding >>> > >> support >>> > >> > >>>>> for >>> > >> > >>>>> > > > > user/client >>> > >> > >>>>> > > > > >> > >> configurations in the Kafka Admin Client. >>> > >> > >>>>> > > > > >> > >> >>> > >> > >>>>> > > > > >> > >> Basically the story here is to allow >>> > >> KafkaAdminClient >>> > >> > >>>>> to >>> > >> > >>>>> > > configure >>> > >> > >>>>> > > > > >> the >>> > >> > >>>>> > > > > >> > >> user >>> > >> > >>>>> > > > > >> > >> or client configurations for users, instead >>> of >>> > >> > >>>>> requiring users >>> > >> > >>>>> > > to >>> > >> > >>>>> > > > > >> directly >>> > >> > >>>>> > > > > >> > >> talk to ZK. >>> > >> > >>>>> > > > > >> > >> >>> > >> > >>>>> > > > > >> > >> The link for this KIP is >>> > >> > >>>>> > > > > >> > >> following: >>> > >> > >>>>> > > > > >> > >> >>> > >> > >>>>> > > > > >> >>> > >> > >>>>> > > > > >>> > >> > >>>>> > > >>> > >> > >>>>> >>> > >> > >>> > >> >>> https://cwiki.apache.org/confluence/pages/viewpage.action?pageId=97555704 >>> > >> > >>>>> > > > > >> > >> >>> > >> > >>>>> > > > > >> > >> I'd be happy to receive some feedback about >>> the >>> > >> KIP I >>> > >> > >>>>> > > published. >>> > >> > >>>>> > > > > >> > >> >>> > >> > >>>>> > > > > >> > >> -- >>> > >> > >>>>> > > > > >> > >> Best, >>> > >> > >>>>> > > > > >> > >> Yaodong Yang >>> > >> > >>>>> > > > > >> > >> >>> > >> > >>>>> > > > > >> > > >>> > >> > >>>>> > > > > >> > > >>> > >> > >>>>> > > > > >> > > -- >>> > >> > >>>>> > > > > >> > > Best, >>> > >> > >>>>> > > > > >> > > Stanislav >>> > >> > >>>>> > > > > >> > > >>> > >> > >>>>> > > > > >> > >>> > >> > >>>>> > > > > >> > >>> > >> > >>>>> > > > > >> > -- >>> > >> > >>>>> > > > > >> > Best, >>> > >> > >>>>> > > > > >> > Stanislav >>> > >> > >>>>> > > > > >> >>> > >> > >>>>> > > > > >> >>> > >> > >>>>> > > > > >> >>> > >> > >>>>> > > > > >> -- >>> > >> > >>>>> > > > > >> Sönke Liebau >>> > >> > >>>>> > > > > >> Partner >>> > >> > >>>>> > > > > >> Tel. +49 179 7940878 >>> > >> > >>>>> > > > > >> OpenCore GmbH & Co. KG - Thomas-Mann-Straße 8 - >>> 22880 >>> > >> > Wedel >>> > >> > >>>>> - >>> > >> > >>>>> > > Germany >>> > >> > >>>>> > > > > >> >>> > >> > >>>>> > > > > > >>> > >> > >>>>> > > > > >>> > >> > >>>>> > > > >>> > >> > >>>>> > > >>> > >> > >>>>> > >>> > >> > >>>>> >>> > >> > >>>> >>> > >> > >>> > >> >>> > > >>> > >>> >>