Server Specs and Opinions

tomgideon2003
Contributor

Hi!

We are looking at revising our JSS and database servers this summer. I am wanting to get other opinions on what type of server specs we should do. Here is the setup I want to do:

(4) Linux servers - DMZ JSS - 2 JSS behind load balancer - MySQL

We currently have 5,000 macOS devices and 1000 iOS devices. I would think we will grow to 10,000 macOS in the future and probably stay under 2,000 on iOS devices.

This is what I am wanting to try doing:

Specs each JSS server needs:
Ubuntu 16.04 LTS Server (64-bit)
16GB RAM
Intel CPU (unknown)
256GB available space (RAID, 4x256GB SSD’s)

MySQL server specs:
Ubuntu 16.04 LTS Server (64-bit)
32GB RAM
Intel CPU (unknown)
256GB available space (RAID, 4x256GB SSD’s)

My biggest question is the CPU's. I don't know whether I should do a single CPU in each box or multiple. I hear that MySQL doesn't take advantage of multiple cores very well so a CPU with a fast clock speed and less cores usually works the best for that. I would just like some opinions on it all.

Also, does anyone have an F5 load balancer model that you would suggest?

Thank you!

2 REPLIES 2

crbeck
Contributor

Single CPU systems would be the way to go, especially for MySQL with Jamf. I have about 2,400 Macs, 6,200 iPads, and 300 Apple TV's in Jamf. For when I re-did MySQL in my environment a few months ago, I ended up going with an HPE ProLiant DL20 Gen9 with a Xeon E3-1240 v6 @ 3.7 GHz, 16 GB RAM, 4x300GB SAS 12Gb/s 10k RPM drives running RHEL 7.4. MySQL will occasionally get into all 4 cores for me but won't touch the virtual cores/threads. Previous setup was master JSS and MySQL on the same Windows Server 2008 box with 2x8 core CPUs with hyperthreading, I didn't see MySQL ever using more than 2 cores regularly. With MySQL tuning of MyISAM (Jamf's MySQL storage engine), allocating 4GB of RAM for key_buffer_cache, and the rest available for system cache, only 0.03% of read requests have to hit the disk. I think 32GB for a dedicated MySQL server may be a bit overkill but if you're collecting a lot of inventory on your Macs it might be needed. I know enabling collection of Application Usage Information and retaining for three months bumped my database size up by around 60%.

I haven't gotten to the point of re-doing my JSS servers yet though I plan on using a similar setup that you mention. The only thing you should consider is adding a management JSS, one that is not the DMZ or behind a load balancer used just for you or other techs to sign into, and turn on limited access on the other servers.

tomgideon2003
Contributor

Thank you @crbeck ! This is really going to help me, especially for the MySQL server.