You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@cassandra.apache.org by Vladimir Prudnikov <v....@gmail.com> on 2015/12/14 12:46:12 UTC

Better setup to start using in production on one server

Hello, 
I’m ready to start deploying the service that uses Cassandra as a database. 

I have one dedicated server with the following config: Intel Xeon E3 1225v2 4cores 4 threads processor, 3 x 120Gb SSD drive, 32Gb RAM. 

What is the best option to start using cassandra on production on this server. I want to start using this server for both app and db server. 

I see that my 2 main options are: 
1) 3 nodes running in docker and each node uses different SSD drive for each node. Consistency level 2.
2) 1 node on this server but using different drives for commit log and everything else, third drive of for application. once we grow up add more physical nodes to the cluster. But it seems that one SSD drives can be used both for commit log and everything else… 

Which one to chose? Any other options?

Any thoughts and suggestions are appreciated. 
Thanks in advance.

—
Vladimir

Re: Better setup to start using in production on one server

Posted by Michael Shuler <mi...@pbandjelly.org>.
On 12/14/2015 05:46 AM, Vladimir Prudnikov wrote:
> I have one dedicated server

This might be OK as a dev/test set up, but defeats the purpose of a
distributed database for production use.

-- 
Kind regards,
Michael

Re: Better setup to start using in production on one server

Posted by Robert Coli <rc...@eventbrite.com>.
On Tue, Dec 15, 2015 at 11:15 AM, Jonathan Haddad <jo...@jonhaddad.com> wrote:

> If I had to choose between running 3x docker instances and 1x instance on
> a single server, I'd choose the single one.  Instead of dealing with RF
> changing nonsense I'd just set up a 2nd data center w/ 3 nodes and move to
> that when you're ready.  No downtime, easy.
>

+1, totally agree, compared to this the docker method is really not
reasonable.

=Rob

Re: Better setup to start using in production on one server

Posted by Jonathan Haddad <jo...@jonhaddad.com>.
If I had to choose between running 3x docker instances and 1x instance on a
single server, I'd choose the single one.  Instead of dealing with RF
changing nonsense I'd just set up a 2nd data center w/ 3 nodes and move to
that when you're ready.  No downtime, easy.

With that said - Starting off with a 3 node cluster in digital ocean is
pretty inexpensive.  You can be up and running for $60 a month.  You should
also ask yourself if you have a Cassandra problem.  It's designed to scale
out to hundreds of nodes, you're talking about 1.  Do you think you'll
actually have a big data problem, or are you just trying to prepare for the
future?

On Tue, Dec 15, 2015 at 11:04 AM Robert Coli <rc...@eventbrite.com> wrote:

> On Mon, Dec 14, 2015 at 10:53 PM, Vladimir Prudnikov <
> v.prudnikov@gmail.com> wrote:
>
>> Is it hard to start with 3 nodes on one server running in docker and then
>> just move 2 nodes to the separate servers?
>>
>
> FWIW, if you *absolutely knew* that you were going to need the scale and
> for some reason could not convince the money people of this obvious truth,
> there is nothing especially wrong with running a Cassandra node in this
> manner. It's really inefficient but does allow you to expand a cluster
> beyond one node without having to deal with the implications of increasing
> RF.
>
> =Rob
> PS - Note that I am still very skeptical that a meaningful number of
> people are in this case, almost everyone in a case like this should "just
> use MySQL."
>
>

Re: Better setup to start using in production on one server

Posted by Robert Coli <rc...@eventbrite.com>.
On Mon, Dec 14, 2015 at 10:53 PM, Vladimir Prudnikov <v....@gmail.com>
wrote:

> Is it hard to start with 3 nodes on one server running in docker and then
> just move 2 nodes to the separate servers?
>

FWIW, if you *absolutely knew* that you were going to need the scale and
for some reason could not convince the money people of this obvious truth,
there is nothing especially wrong with running a Cassandra node in this
manner. It's really inefficient but does allow you to expand a cluster
beyond one node without having to deal with the implications of increasing
RF.

=Rob
PS - Note that I am still very skeptical that a meaningful number of people
are in this case, almost everyone in a case like this should "just use
MySQL."

Re: Better setup to start using in production on one server

Posted by Robert Coli <rc...@eventbrite.com>.
On Mon, Dec 14, 2015 at 10:53 PM, Vladimir Prudnikov <v....@gmail.com>
wrote:

> Save money. I don’t have huge enterprise behind me nor investor’s money on
> my bank account. I just created an app and want to launch it and see if it
> is what users will use and pay for. Once I get users using it I can scale
> my hardware.
>

While I understand this is the cassandra-user@ mailing list, I feel as if I
should advise you to...

"Just Use MySQL"

If and when you have an actual scalability concern and the budget to
support it, convert your still-totally-small-enough-to-fit-on-one-host app
to Cassandra?

=Rob

Re: Better setup to start using in production on one server

Posted by Jack Krupansky <ja...@gmail.com>.
How much data and request load do you expect on this small cluster? If
fairly light, fine. But if heavy, be careful.

Someone else can chime in if they have a more solid answer on how many CPU
cores Cassandra needs, but less than two per node seems inappropriate
unless load is extremely light since it precludes much in the way of
concurrency.

Maybe you might be better off just running a single node on this box as
long as load is fairly light and then grow it to a full 6, 8, or 12 nodes
when data and request load warrant. Note that 3 nodes at RF=3 does not give
you any additional data capacity although it does triple your request load
capacity. Six nodes is sort of the sweet spot, giving you HA with RF=3 and
doubling data capacity with a bunch of nodes to handle load.


-- Jack Krupansky

On Tue, Dec 15, 2015 at 1:53 AM, Vladimir Prudnikov <v....@gmail.com>
wrote:

>
> On 14 Dec 2015, at 21:40, Robert Coli <rc...@eventbrite.com> wrote:
>
> On Mon, Dec 14, 2015 at 3:46 AM, Vladimir Prudnikov <v.prudnikov@gmail.com
> > wrote:
>
>> [I want to run Cassandra on a single server]
>
>
> I struggle to imagine the purpose of doing this.
>
>
> Save money. I don’t have huge enterprise behind me nor investor’s money on
> my bank account. I just created an app and want to launch it and see if it
> is what users will use and pay for. Once I get users using it I can scale
> my hardware.
>
> Is it hard to start with 3 nodes on one server running in docker and then
> just move 2 nodes to the separate servers?
>
>
> You are going to sign yourself up for repeated painful changes of RF, as
> well as downtimes. As Michael says, you will get most of the cost of a
> distributed database and none of the benefit.
>
>
> I'm pretty sure the ABSOLUTE MINIMUM reasonabl(ish) deploy of cassandra is
> RF=N=2.
>
> =Rob
>
>
>

Re: Better setup to start using in production on one server

Posted by Vladimir Prudnikov <v....@gmail.com>.
> On 14 Dec 2015, at 21:40, Robert Coli <rc...@eventbrite.com> wrote:
> 
> On Mon, Dec 14, 2015 at 3:46 AM, Vladimir Prudnikov <v.prudnikov@gmail.com <ma...@gmail.com>> wrote:
> [I want to run Cassandra on a single server]
> 
> I struggle to imagine the purpose of doing this.

Save money. I don’t have huge enterprise behind me nor investor’s money on my bank account. I just created an app and want to launch it and see if it is what users will use and pay for. Once I get users using it I can scale my hardware.

Is it hard to start with 3 nodes on one server running in docker and then just move 2 nodes to the separate servers?

> 
> You are going to sign yourself up for repeated painful changes of RF, as well as downtimes. As Michael says, you will get most of the cost of a distributed database and none of the benefit.
> 
> I'm pretty sure the ABSOLUTE MINIMUM reasonabl(ish) deploy of cassandra is RF=N=2.
> 
> =Rob
> 


Re: Better setup to start using in production on one server

Posted by Robert Coli <rc...@eventbrite.com>.
On Mon, Dec 14, 2015 at 3:46 AM, Vladimir Prudnikov <v....@gmail.com>
wrote:

> [I want to run Cassandra on a single server]


I struggle to imagine the purpose of doing this.

You are going to sign yourself up for repeated painful changes of RF, as
well as downtimes. As Michael says, you will get most of the cost of a
distributed database and none of the benefit.

I'm pretty sure the ABSOLUTE MINIMUM reasonabl(ish) deploy of cassandra is
RF=N=2.

=Rob