Help me choose a hardware

Hi,

I am new here and I am in process of purchasing a slice and would appreciate if you help me do that.

I am going to use a customized Civi CRM open source application designed to host 10000 users. We can expect only 1000 users to begin with. CiviCRM uses Drupal and Apache on Linux.

The Dbase size is about 35MB and is expected to grow. Basically, the web app is designed for users to enter their field activities and generate very basic reports about their activities like history, monthly performance, etc. A bit of profile management also.

For load balancing, I am planning to have separate machines for dbase and web application. What configuration would you recommend?

We would also need a backup. The website indicates the availability of Mirroring by default.

Please highlight the quality of service.

Thanks,

Avinash

23 Replies

Linodes are very scalable; resizing to a larger node is just a matter of shutting it down while the disk image copies over to the new host. For more urgent upgrades where you can't afford to wait for a disk migration, you can purchase disk or RAM upgrades that can be enabled by a simple reboot (obviously not cost-effective since it's cheaper to upgrade the linode, but it allows emergency upgrades with minimal downtime).

Generally the advice most people give for this sort of thing is to start small and resize the linode to a larger one if you outgrow it.

How much RAM is required is really dependent on how you configure the server, what the usage patterns are like, etc… It also depends on your budget. If you want to have separate database and application servers from the get-go, you'd probably be OK to start with two 512s and see how it goes from there; if it turns out that that's not enough RAM, it only takes a few minutes to get that resized to a 1024; it's a largely automated process.

One important thing to keep in mind if you want to use Apache is that Apache is very badly configured out of the box; it comes configured for servers with many gigabytes of RAM. You're going to need to tweak it before use unless you're planning to throw 8GB of RAM at it. Other servers like nginx and lighttpd have more sane default configurations.

Thank You so much for your detailed explanation.

Correct me if am wrong, the plans and availability shows only 4GB max - Linode 4096. Cant I go beyond 4GB?

Avinash

@Avinash.Rao:

Thank You so much for your detailed explanation.

Correct me if am wrong, the plans and availability shows only 4GB max - Linode 4096. Cant I go beyond 4GB?

Avinash

The order page goes up to 20GB.

I don't know much about CiviCRM, but Drupal on Apache doesn't need 8GB of RAM to handle a large number of users if properly configured…

Guspaz,

Thank You for your response.

I read from other posts that, "Linode is a high-end unmanaged cloud provider" , if its un-managed, the first things comes to my mind is "Data Security". Will Linode take care of this? Bcoz, we intend to use very vital data that cannot be shared with anybody outside the company.

@Guspaz:

I don't know much about CiviCRM, but Drupal on Apache doesn't need 8GB of RAM to handle a large number of users if properly configured…

@Avinash.Rao:

we intend to use very vital data that cannot be shared with anybody outside the company.
So of course you immediately think "I know, lets put this vital top secret data on the cloud".

Un-managed means security is COMPLETELY up to you and your application config.

Un-managed means that Linode doesn't install software, update software, configure software, etc on your node (VPS). They provide and maintain the physical host machines, network, and other infrastructure. Other than that, installing, configuring and updating the software on your virtual private server is 100% on you.

It's more secure than a shared host and I'd trust Linode employees a lot further than those at most hosting companies.

Thank You for your responses.

So, it is an un-managed cloud solution.

Is there anybody who has hosted Apache/Linux/Drupal/MySql web application on these servers? Would like to hear a few words from them. Would appreciate if you highlight on the OS and App fine tuning and security aspects.

Also, all the users for this application are spreadout throughout India. Sounds Silly, would this attract any network speed or bandwidth issue as the servers are in US/UK?

I am sorry I am asking too many questions. I just want to be absolutely sure and convinced before I go ahead with the purchase.

Thanks a Ton!

Avinash

You can test speed to the various datacenters from your location: http://www.linode.com/speedtest/

There is more discussion on this and on tuning server settings in the Performance and Tuning forum.

Thanks. I have gone through these pages.

If i choose separate servers for dbase and web application, what aspect do i have to take care while purchasing as they both need to be in the same network.

Also, can somebody share the Server's processor details.

@Vance:

You can test speed to the various datacenters from your location: http://www.linode.com/speedtest/

There is more discussion on this and on tuning server settings in the Performance and Tuning forum.

@Avinash.Rao:

If i choose separate servers for dbase and web application, what aspect do i have to take care while purchasing as they both need to be in the same network.

Also, can somebody share the Server's processor details.
When you add a linode to your account, the system asks which datacenter you would like it to be in. Just make sure to choose the same one.

(If you decide you want to change your mind later, you can deploy a new node where you want then build from scratch and clone your node to it, or just open a ticket asking to move the machine.)

Re: CPU, I've got access to 4x of these:

With Xen you get your "fair-share" but can use more if you the others on the machine aren't using the CPU

processor : 0

vendor_id : GenuineIntel

cpu family : 6

model : 26

model name : Intel(R) Xeon(R) CPU L5520 @ 2.27GHz

stepping : 5

cpu MHz : 2266.746

cache size : 8192 KB

fpu : yes

fpu_exception : yes

cpuid level : 11

wp : yes

flags : fpu de tsc msr pae cx8 sep cmov pat clflush mmx fxsr sse sse2 ss ht syscall nx lm constanttsc repgood nonstoptsc pni ssse3 cx16 sse41 sse42 popcnt hypervisor lahflm

bogomips : 4533.49

clflush size : 64

cache_alignment : 64

address sizes : 40 bits physical, 48 bits virtual

power management:

Thanks for writing.

Processor says: 0 , so its a single processor details. Does your node have multiple processors?

I want to know how many processors will i get as a minimum configuration.

Re: CPU, I've got access to 4x of these:

With Xen you get your "fair-share" but can use more if you the others on the machine aren't using the CPU

Did you even read the section you quoted?

Yes, I did and it says 4x.. which I believe is 4 cores.

Am just confirming as I am not an expert in these.

@JshWright:

Did you even read the section you quoted?

For another datapoint on CPU specs, two of my Linodes have four each of:

processor       : 0
vendor_id       : GenuineIntel
cpu family      : 6
model           : 23
model name      : Intel(R) Xeon(R) CPU           L5420  @ 2.50GHz
stepping        : 6
cpu MHz         : 2500.092
cache size      : 6144 KB
fdiv_bug        : no
hlt_bug         : no
f00f_bug        : no
coma_bug        : no
fpu             : yes
fpu_exception   : yes
cpuid level     : 10
wp              : yes
flags           : fpu de tsc msr pae cx8 cmov pat clflush mmx fxsr sse sse2 ss ht nx constant_tsc pni ssse3 sse4_1 hypervisor
bogomips        : 5000.18
clflush size    : 64
cache_alignment : 64
address sizes   : 38 bits physical, 48 bits virtual
power management:

The exact CPU model will vary, but the number of visible CPU cores is invariably four and the CPUs will be Intel Xeons.

Also, remember to enable the intra-datacenter "private" IP network in the Remote Access tab; that will let your servers talk to each other (and to other Linodes within the same datacenter) free of charge.

hoopycat,

Thank You so much.

I have a clear picture now.

I will be purchasing soon.

Thank You all.

Avinash

Hi,

if you want, feel free to use my referral code while signing up. I've already posted that code elsewhere on the forum, but I don't mind helping you out with that as well.

If you remain an active customer (with a billable Linode) for 90 days I can receive a service credit.

The nice thing is that if you do this as well, you two if people use your code can get $20 on your Linode account as well.

Credits can be useful for paying for Linode services without your card being charged if you want to do that.

Also, you can always make advanced pre-payments in prety much any dollar amount I believe, and you don't have a limit on credit (pro-rated or otherwise) on your account, and that credit if not used doesn't expire.

It's still money costing you in the end anyhow, but that's a nice benifit of Linode that I'm sure everyone has used at one time or antoher.

You will be taken to the Linode home page when you click this link, but if you click the sign up box my code will already be in the box if you choose to use it.

Any other new users who see this thread are more than welcome to use the code as well.

Thanks, and God Bless.

http://goo.gl/o8ITq

Sounds good.. Keith-BlindUser, will use your code.

Hi Hoopycat,

I added a Private IP on both my servers and the system generated an IP by itself. Is that it? Does this confirm that the servers are talking to each other. How do i confirm this?

Thanks.

@hoopycat:

Also, remember to enable the intra-datacenter "private" IP network in the Remote Access tab; that will let your servers talk to each other (and to other Linodes within the same datacenter) free of charge.

Quickest way is to use ping. From one server, ping the private IP address of the other server:

$ ping -c3 192.168.137.246
PING 192.168.137.246 (192.168.137.246) 56(84) bytes of data.
64 bytes from 192.168.137.246: icmp_seq=1 ttl=64 time=1.55 ms
64 bytes from 192.168.137.246: icmp_seq=2 ttl=64 time=0.337 ms
64 bytes from 192.168.137.246: icmp_seq=3 ttl=64 time=0.278 ms

--- 192.168.137.246 ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2001ms
rtt min/avg/max/mdev = 0.278/0.722/1.553/0.588 ms

If you see something like that, you've got two-way communications working.

If we community folks can help answer any other questions do let us know.

Linode is a perfect environment to experiment around with to if your curious about trying other Linux flavers.

The Linode library, is probably one of the best sources of documentation detailing practically everything you might wish to know.

I suggest checking it out, you can find it under Linode community section on the main homepage.

I saw that you also used my code, so that's cool.

It's pending until you reach the 90 day mark, so stick with it.

As said any questions, just ask.

Feel free to message me on the forum if I can help somehow with whatever you want to know.

Nice thing is that if one person can't help, you can be asured that someone can.

Hard-core IT administraters are just some of the folks on this forum.

Take care, and hope you like your Linode so far!

Reply

Please enter an answer
Tips:

You can mention users to notify them: @username

You can use Markdown to format your question. For more examples see the Markdown Cheatsheet.

> I’m a blockquote.

I’m a blockquote.

[I'm a link] (https://www.google.com)

I'm a link

**I am bold** I am bold

*I am italicized* I am italicized

Community Code of Conduct