cassandra-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Rick Branson (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (CASSANDRA-2356) make the debian package never start by default
Date Sat, 15 Dec 2012 00:20:12 GMT

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

Rick Branson commented on CASSANDRA-2356:
-----------------------------------------

FWIW, we disable automatic starts for every persistence-related daemon in production. Anecdotally,
most people I respect in operations have a philosophy along these lines. I think perhaps reboots
are more up for discussion, but if I dpkg -i cassandra.deb, I don't want it to start. There
is no case I can think of where a .deb for a service like Cassandra does not involve additional
configuration before it's safe to boot. 

Even state-free stuff is risky: for instance, if we bring up a brand new web server on a reused
IP before it's been completely configured, if the IP was not removed from the upstream load
balancer before this was the case, it might begin to answer requests before it was ready to
go.
                
> make the debian package never start by default
> ----------------------------------------------
>
>                 Key: CASSANDRA-2356
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2356
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: Packaging
>            Reporter: Jeremy Hanna
>            Priority: Minor
>              Labels: debian, packaging
>         Attachments: 2356.txt
>
>
> Currently the debian package that installs cassandra starts cassandra by default.  It
sounds like that is a standard debian packaging convention.  However, if you want to bootstrap
a new node and want to configure it before it creates any sort of state information, it's
a pain.  I would think that the common use case would be to have it install all of the init
scripts and such but *not* have it start up by default.  That way an admin can configure cassandra
with seed, token, host, etc. information and then start it.  That makes it easier to programmatically
do this as well - have chef/puppet install cassandra, do some configuration, then do the service
start.
> With the current setup, it sounds like cassandra creates state on startup that has to
be cleaned before a new configuration can take effect.  So the process of installing turns
into:
> * install debian package
> * shutdown cassandra
> * clean out state (data/log dirs)
> * configure cassandra
> * start cassandra
> That seems suboptimal for the default case, especially when trying to automate new nodes
being bootstrapped.
> Another case might be when a downed node comes back up and starts by default and tries
to claim a token that has already been claimed by another newly bootstrapped node.  Rob is
more familiar with that case so I'll let him explain it in the comments.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Mime
View raw message