Return-Path: X-Original-To: apmail-kafka-dev-archive@www.apache.org Delivered-To: apmail-kafka-dev-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 6F86310253 for ; Wed, 22 Jan 2014 22:36:43 +0000 (UTC) Received: (qmail 24478 invoked by uid 500); 22 Jan 2014 22:36:42 -0000 Delivered-To: apmail-kafka-dev-archive@kafka.apache.org Received: (qmail 24420 invoked by uid 500); 22 Jan 2014 22:36:42 -0000 Mailing-List: contact dev-help@kafka.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@kafka.apache.org Delivered-To: mailing list dev@kafka.apache.org Received: (qmail 24412 invoked by uid 99); 22 Jan 2014 22:36:42 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 22 Jan 2014 22:36:42 +0000 X-ASF-Spam-Status: No, hits=1.5 required=5.0 tests=HTML_MESSAGE,RCVD_IN_DNSWL_LOW,SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (athena.apache.org: local policy includes SPF record at spf.trusted-forwarder.org) Received: from [209.85.219.43] (HELO mail-oa0-f43.google.com) (209.85.219.43) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 22 Jan 2014 22:36:38 +0000 Received: by mail-oa0-f43.google.com with SMTP id h16so1234543oag.30 for ; Wed, 22 Jan 2014 14:36:17 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:in-reply-to:references:date :message-id:subject:from:to:content-type; bh=8UCH9vE7qmdJuz/dp9Y0pApRI8KuiPp8SyjP87HcDcM=; b=WK3aM2KtR5ImCoj4u6hVH+KfJxyT2MIZIzeqG4HrDKTlPkcDv3VfycYT9RBFkNTJbS hCArlnTx4eHi5fGatbA/XxQsGo1BssXfQT4oRMb+pkw5GQOzjcIlouGFjH0zadMJHF9F TWIh551tjmoQnXL3Bmd46xKojpw5GzilHI1/1xPfNmwN6CpzKcFayifo0PG0bdH+/hPa bEDO42cOb9fNDBskQ2830NVTmNQnv7bl9OTQdyUrtizWrxildnWHAGTBcsN9jqBOU45E z/YOkjttUPMNJaP8rmTXtd19QFC9H5YJzrQVsYW/K45H9ewiIG0qcGhQZ6HMyGxxeHFH zT0A== X-Gm-Message-State: ALoCoQley8IEoWRPvBPk25Kz/RM1BK4U7eGBTOq9T3GTiyFg/2m48cFvRVdGY6yCuvEv58G7ZZg4 MIME-Version: 1.0 X-Received: by 10.182.112.130 with SMTP id iq2mr3668454obb.57.1390430177062; Wed, 22 Jan 2014 14:36:17 -0800 (PST) Received: by 10.182.59.113 with HTTP; Wed, 22 Jan 2014 14:36:16 -0800 (PST) In-Reply-To: References: Date: Wed, 22 Jan 2014 17:36:16 -0500 Message-ID: Subject: Re: Kafka server start from resource negotiator(s) From: Joe Stein To: "dev@kafka.apache.org" Content-Type: multipart/alternative; boundary=089e01229a06ca024804f096c0af X-Virus-Checked: Checked by ClamAV on apache.org --089e01229a06ca024804f096c0af Content-Type: text/plain; charset=ISO-8859-1 Hi Jun, see inline On Tue, Jan 21, 2014 at 1:14 PM, Jun Rao wrote: > Hi, Joe, > > Thanks for the update. This looks great. A couple of questions and > comments. > > 1. How general is the framework? For example, if I want to add the support > for Apache Yarn, is anything there can be reused? > I don't think there is going to be much to share but I am honestly not far enough along to know for sure. I opened KAFKA-1206 for any (if any) changes that they would both need or use to make it work from the existing code (so we can launch brokers, producers and consumers in an abstract way not just from shell scripts but from the resource negotiator system. Quite possible no change required... > > 2. My current feeling is that it's probably better to maintain those > container supports outside Kafka's git repo (e.g., can be on github). > People may be interested in integrating Kafka with Mesos, Yarn, VMs on EC2, > Azure, and Rackspace, etc. Maintaining all those in contrib may not be a > scalable solution. > I am neutral either way on this at the moment. Right now, I am just thinking about getting it working :) If it lives only @ https://github.com/stealthly/kafka-mesos that is not a bad thing (like how we do client libraries). > > Thanks, > > Jun > > > On Sat, Jan 18, 2014 at 5:48 AM, Joe Stein wrote: > > > I got through some good research and testing this week on getting Kafka > to > > run on Mesos. > > > > I updated the Mesos ticket > > https://issues.apache.org/jira/browse/KAFKA-1207with some thoughts. > > > > Next step I am going to draw out some diagrams and update the wiki page. > I > > was thinking of writing this in the contrib folder and adding two bin > > scripts if folks are interested in having this as part of the overall > > project. There are few minor changes (like what I put in 1206) that > could > > occur but for now I can get it working on 0.8.0 I believe (refactoring > > afterwards some changes non resource negotiator specific). > > > > For now I am going to work on it here > > https://github.com/stealthly/kafka-mesos (nothing there just yet) and > once > > parts of it are working correctly upload patches to JIRA. > > > > Thoughts? Suggestions? Feedback? Tomatoes? > > > > > > /******************************************* > > Joe Stein > > Founder, Principal Consultant > > Big Data Open Source Security LLC > > http://www.stealth.ly > > Twitter: @allthingshadoop > > ********************************************/ > > > > > > On Thu, Jan 16, 2014 at 12:43 AM, Joe Stein > wrote: > > > > > Right now I am testing it that way. Once it is working and if that > > becomes > > > a problem then moving it into a mesosFramework project is no problem. > > if > > > we do that it would be beneficial if they were organized under some > > > resource manager folder or something. > > > > > > The way I wrote https://issues.apache.org/jira/browse/KAFKA-1206 was > > with > > > that in mind so folks have a light interface for doing this. The > > specific > > > systems resource negotiator implementation could go in their project > and > > > just importing the ResourceNegotiator trait in the project's reference > of > > > the jar. > > > > > > /******************************************* > > > Joe Stein > > > Founder, Principal Consultant > > > Big Data Open Source Security LLC > > > http://www.stealth.ly > > > Twitter: @allthingshadoop > > > ********************************************/ > > > > > > > > > On Thu, Jan 16, 2014 at 12:23 AM, Jun Rao wrote: > > > > > >> Hi, Joe, > > >> > > >> Thanks for looking into this. Do you plan to add a dependency to Mesos > > in > > >> kafka jar? > > >> > > >> Jun > > >> > > >> > > >> On Wed, Jan 15, 2014 at 10:50 AM, Joe Stein > > wrote: > > >> > > >> > Hi, I am working at adding some code to the kafka.Kafka.scala file. > > >> > > > >> > What I was thinking for the Utils.loadProps is to create some > > >> > ResourceNegotiatedConfiguration class or something to sit with it so > > >> > various frameworks can be supported. > > >> > > > >> > For Mesos I am thinking of storing the properties in zookeeper. For > a > > >> new > > >> > node joining => registering a default config (originally set by a > > tool) > > >> and > > >> > saving it unique for that broker in a znode. This znode would be > the > > >> input > > >> > to the serverConfig for the KafkaServerStartable. > > >> > > > >> > I am going to create a kafka.tools.ResourceNegotiator.ApacheMesos > tool > > >> too. > > >> > that tool will take in a server.properties file to set the original > > >> > default. Once loaded in zookeeper another command to take a property > > and > > >> > flag it with a function to run (like the "use new broker id value") > > and > > >> > such. > > >> > > > >> > I would rather have some implementation in Kafka.scala and have > object > > >> > KafkaMesos be in Kafka.scala too but wasn't sure what other thoughts > > >> folks > > >> > might have? > > >> > > > >> > I will be creating JIRA soon for it. > > >> > > > >> > /******************************************* > > >> > Joe Stein > > >> > Founder, Principal Consultant > > >> > Big Data Open Source Security LLC > > >> > http://www.stealth.ly > > >> > Twitter: @allthingshadoop > > >> > ********************************************/ > > >> > > > >> > > > > > > > > > --089e01229a06ca024804f096c0af--