Not that I am some expert on this subject, but I can see that broker logs
indicate the shutdown progress:
https://github.com/tejasapatil/kafka/blob/0.8.0-beta1-candidate1/core/src/main/scala/kafka/server/KafkaServer.scala#L165


On Mon, Aug 19, 2013 at 10:19 PM, Vadim Keylis <vkeylis2...@gmail.com>wrote:

> Neha. Thanks so much for explaining. That leaves only one open question.
> How do you validate  that shutdown was successful if you do not have remote
> jmx access unless besides setting timeout reasonable high?
>
> Thanks so much again,
> Vadim
>
>
> On Mon, Aug 19, 2013 at 9:11 PM, Neha Narkhede <neha.narkh...@gmail.com
> >wrote:
>
> > It depends on how much flexibility you need during the controlled
> shutdown
> > and whether you have remote jmx operations enabled in your production
> Kafka
> > cluster. The jmx controlled shutdown method will offer more flexibility
> as
> > your script will have the retry logic, you don't need to make config
> > changes to Kafka brokers to change the timeout or the # of retries for
> > controlled shutdown. On the other hand, the jmx controlled shutdown
> method
> > requires access to remote jmx on the broker. At LinkedIn, we do not have
> > the ability to invoke jmx operations remotely on Kafka brokers in
> > production. So we prefer using the controlled.shutdown.enable method.
> >
> > Thanks,
> > Neha
> >
> >
> > On Mon, Aug 19, 2013 at 12:34 PM, Vadim Keylis <vkeylis2...@gmail.com
> > >wrote:
> >
> > > What is preferred method for control shutdown using admin tool or
> setting
> > > as flag "controlled.shutdown.enable" to true? What is the advantage of
> > > using one verses the other?
> > >
> > > Thanks,
> > > Vadim
> > >
> > >
> > > On Sun, Aug 18, 2013 at 11:05 PM, Vadim Keylis <vkeylis2...@gmail.com
> > > >wrote:
> > >
> > > > thanks so much. Greatly appreciated.
> > > >
> > > >
> > > > On Sun, Aug 18, 2013 at 10:00 PM, Neha Narkhede <
> > neha.narkh...@gmail.com
> > > >wrote:
> > > >
> > > >> It is exposed on every leader through the
> > > >> "kafka.server.UnderReplicatedPartitions" jmx bean. It is independent
> > of
> > > >> the
> > > >> controlled shutdown functionality.
> > > >>
> > > >> Thanks,
> > > >> Neha
> > > >>
> > > >>
> > > >> On Sun, Aug 18, 2013 at 8:33 PM, Vadim Keylis <
> vkeylis2...@gmail.com>
> > > >> wrote:
> > > >>
> > > >> > Neha. Thanks so much for response. How can I get under replicated
> > > >> partition
> > > >> > count during control shutdown that is configured in the property
> > file?
> > > >> >
> > > >> > Thanks,
> > > >> > Vadim
> > > >> >
> > > >> >
> > > >> > On Sun, Aug 18, 2013 at 6:11 PM, Neha Narkhede <
> > > neha.narkh...@gmail.com
> > > >> > >wrote:
> > > >> >
> > > >> > > Vadim,
> > > >> > >
> > > >> > > Controlled shutdown takes 2 parameters - number of retries and
> > > >> shutdown
> > > >> > > timeout. In every retry, controlled shutdown attempts to move
> > > leaders
> > > >> off
> > > >> > > of the broker that needs to be shutdown. If the controlled
> > shutdown
> > > >> runs
> > > >> > > out of retries, it proceeds to shutting down the broker even if
> it
> > > >> still
> > > >> > > hosts a few leaders. At LinkedIn, the script to bounce Kafka
> > brokers
> > > >> > waits
> > > >> > > for the under replicated partition count to drop to 0 before
> > > invoking
> > > >> > > controlled shutdown on the next broker. The aim is to avoid data
> > > loss
> > > >> > that
> > > >> > > occurs if you shut down a broker that still has some leaders. If
> > the
> > > >> > under
> > > >> > > replicated count never drops to 0, it indicates a bug in Kafka
> > code
> > > >> and
> > > >> > the
> > > >> > > script does not proceed to bouncing any more brokers in a
> cluster.
> > > We
> > > >> > > measure the time it takes to move "n" leaders off of some
> broker,
> > > and
> > > >> > > configure the shutdown timeout accordingly. We also configure
> the
> > > >> retries
> > > >> > > to a small number (2 or 3). If the controlled shutdown fails the
> > > >> retries,
> > > >> > > the broker shuts itself down anyways. In general, you want to
> > avoid
> > > >> hard
> > > >> > > killing (kill -9) a broker since that means the broker will run
> a
> > > long
> > > >> > > running log recovery process on startup. That significantly
> delays
> > > the
> > > >> > time
> > > >> > > the broker takes to rejoin the cluster.
> > > >> > >
> > > >> > > Thanks,
> > > >> > > Neha
> > > >> > >
> > > >> > >
> > > >> > > On Sun, Aug 18, 2013 at 3:33 PM, Vadim Keylis <
> > > vkeylis2...@gmail.com>
> > > >> > > wrote:
> > > >> > >
> > > >> > > > Good afternoon. We are running kafka on centos linux. I
> enabled
> > > >> > > controlled
> > > >> > > > shutdown in the property file. We are starting/stopping kafka
> > > using
> > > >> > init
> > > >> > > > script. The init script will issue term signal first followed
> 3
> > > >> seconds
> > > >> > > > later by kill signal. Is that right process to shutdown kafka?
> > > Which
> > > >> > > > startup/shutdown/restart script you guys use? What shutdown
> > > process
> > > >> > > > linkedin uses? What side effects could be after kafka service
> is
> > > >> killed
> > > >> > > > uncleanly using kill -9 signal?
> > > >> > > >
> > > >> > > > Thanks,
> > > >> > > > Vadim
> > > >> > > >
> > > >> > >
> > > >> >
> > > >>
> > > >
> > > >
> > >
> >
>

Reply via email to