Skip to main content

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!

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.


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