FOG Server CPU Requirements
-
In reality the fog server doesn’t (shouldn’t) use much CPU for imaging. During the imaging process the FOG server is reponsible for managing the imaging process and moving the imaging files from the local disk to the target computer. That’s all. All of the heavy lifting is done by the FOG client. I even setup FOG on a raspberry pi2 server. This setup ran well for up to 2 simultaneous unicast images.
The target computer is responsible for image compression and decompression.
If you want to image faster using unicast, add more spindles (disks) to the server, use faster disks, setup a network lag group to share the networking load, use the new and faster image compression formats (zstd) and deploy to fast target computers.
Your fog server cpu spiking could be related to insufficient ram in your fog server, or a slow disk subsystem.
-
Okay, cool. That’s good to know the heavy lifting is done by the client. The server I’m using is older than the hills (was an 2003 box at one point), so I can imagine the underlying hardware is getting old and will probably fail sooner or later.
Re: faster image compression formats - where do I change the compression format? I know where to change the compression level. Is that the same thing?
Re: adding more disks - what is the recommended RAID configuration? I saw a lot of the developers mention RAID 5 in the past few years. Didn’t know if any testing had been done with RAID 5, 6, 10, 50, 50, 100, etc…
Thanks a bunch for the help!
-
@ty900000 you mentioned that it was “a while back” that you set up the server. what version of fog are you running? you may not have the new options available.
i don’t recommend raid 5. most people won’t these days. the exact setup of your storage is entirely up to you, your need, and your budget. -
It’s been only about 8 months or so. It’s at version 1.4.0-RC-9.2, so I’m only one RC behind as of today. Does this include the ZSTD compression as default?
Re: RAID 5 - Gotcha. I really didn’t want to use RAID 5, but I didn’t know if it maybe had a better test case for FOG specifically due to some underlying FOG code or CentOS oddity.
Thanks for the quick reply!
-
@ty900000 Generally, businesses like fault tolerance over speed. If a disk dies in a RAID 5 array, the array is down and needs rebuilt. This isn’t a problem in RAID 1 or 10.
-
Yeah, I’ll probably try a RAID 10 when I reconfigure it sometime in the near future. Thanks all for the help! I appreciate it a lot!
-
@ty900000 said in FOG Server CPU Requirements:
Okay, cool. That’s good to know the heavy lifting is done by the client. The server I’m using is older than the hills (was an 2003 box at one point), so I can imagine the underlying hardware is getting old and will probably fail sooner or later.
With this holder hardware its probably scsi disks with a 30-40MB/s max transfer rate. It probably has 2 xenon single core physical processors. You could surpass the performance of that system a few times over by grabbing an old dell 7010 and put a 512GB ssd drive in it. For just a few hundred buck < probably $500USD you could get a great bit of kit from ebay. http://www.ebay.com/itm/Dell-Poweredge-R420-2-x-SIX-CORE-2-40GHZ-E5-2440-24GB-MEMORY-2-x-500GB-1TB-/132171794047?hash=item1ec60d867f:g:H2kAAOSwj85YPZYv This would be a really over powered system for FOG. My point is for just a little cash you could improve on your current hardware.
Re: faster image compression formats - where do I change the compression format? I know where to change the compression level. Is that the same thing?
Right that is switching from gzip (fog standard compression) to zstd (fog enhanced compression). This is / can be set on a per image basis.
Re: adding more disks - what is the recommended RAID configuration? I saw a lot of the developers mention RAID 5 in the past few years. Didn’t know if any testing had been done with RAID 5, 6, 10, 50, 50, 100, etc…
Yes you don’t really want parity raid (raid 5, 6, 50, 60). In your case you will probably write the image once and then read many times. Parity raid only has a penalty tax on write. There is a checksum calculation on a read but that is only for confirmation. The issue with raid 5 and big disks is related to the likely hood as the total disk size increases so doe the likely hood of an undetected disk error. So for data safety and speed you will probably want raid 10 (not 0+1 which is similar but different). Now just consider my comment add more spindles. The more disks you add to the array the faster the entire array will run because the load is spread around all disks. The slowest bit of rotating media is the disk seek time. Consider if you had just a single disk and you were deploying 3 unicast disk images at the same time but started slightly at different times. That single hard drive head would be bouncing all over the disk trying to keep all three transmit buffers filled because each system would need data from different sectors.
-
The CPU will be very busy if your server is low on useable RAM.
It’s really a question of how old your system, is though. Undoubtedly you’d profit from a more modern system, but the question of how much is rather abstract and dependent on your environment.
On average, client CPU matters quite a bit, server CPU far less so, at least for FOG.
-
Yeah, it’s just a 500GB desktop HDD I had lying around. I just blew the image to five machines this morning and it was getting about 40-50MB/s, which is what I would expect from a random read, like you said.
I’m going to turn one of our “newer” systems into a FOG beefcake server when we reimage over 20-30 machines at a time and I’ll use a RAID 10 setup.
Thanks for the confirmation. I’ll be beefing up our server soon with a 8 or 16 core machine with 24+ GB RAM and a RAID 10 configuration, so that should help tremendously, just with the RAID 10.
Thank you both for your help! I really appreciate it!
-
@ty900000 said in FOG Server CPU Requirements:
I’m going to turn one of our “newer” systems into a FOG beefcake server when we reimage over 20-30 machines at a time and I’ll use a RAID 10 setup.
Really if you are going to image that many systems at a time I would look at multicasting the image to the machines. That way only one data stream is sent out to all systems. You need to have a network configured to support multicasting but with FOG multicasting does work well.
I know some educational groups that will reimage an entire classroom of computers (>25) between classes using multicasting.
-
I am running a multicast image right now and it is super slow, <20MB/sec and declining. With the unicast with 2 computers imaging, I was getting about 6GB/sec each. I did a little Googling around it seems as if our very old, crappy Dell PowerConnect switches are probably causing the issue. I guess they can’t handle the “amount” of multicast traffic - no surprise there…
We should be getting Cisco switches soon, so I’ll have to test it with those and make sure they are configured to pass multicast traffic properly.
Thanks!
-
@ty900000 With multicast the speed of the slowest computer sets your maximum transfer rate. I can say that multicasting to 20 computers should just be slightly slower than a single unicast image.
I would have to question your unit of scale. I could understand 20MB/s and 6GB/min. At 6GB/s you would need faster than a 20GbE network.
-
Oh, you’re right! I meant <20MB/min for multicasting two machines and 6GB/min unicasting two machines. My bad!
-
@ty900000 wow that sux on the performance scale.
-
Which one sucks? The 20MB/min or the 6GB/min? Or both?
-
@ty900000 The 20MB a minute.
-
Ah, yeah. It was going to take over 13 hours to blow down a 17GB image. I think it’s the crappy L2 Dell switches can’t handle … much of anything. It’s a constant battle with them.
-
@ty900000 Are the switches you have capable to be “managed”.
-
Yeah, they can be managed. But, I can’t do much with them. Their documentation isn’t great and the are seriously lacking commands. I’m a CCNA, so I’m a little more used to Cisco-specific commands that do Cisco-specific things. These old PowerConnects either don’t have an equivalent or just have a very different and more difficult way of doing the same thing.
-
@ty900000 said in FOG Server CPU Requirements:
20MB/min
I would expect a single unicast image to deploy about 6GB/m on a typical solid network. 4 to 5GB/m for a multicast.
You are multicasting to devices on the same vlan as the fog server?