The following article goes through best practices for setting up an Ignision Server for various use cases.
MacPro Server with 2.7GHz 12-core and 64GB of RAM
Samsung 860 EVO 1TB SSD
ORICO 9548RU3 4 bay 3.5" SATA RAID Hard Drive Enclosure
NewerTech AdaptaDrive 2.5" to 3.5" Drive Converter Bracket
Expected User Experience:
MS Office Users: For a deployment where users are primarily running MS Office applications and doing some web-browsing without video or audio streaming, this server could hold up to 60 concurrent users.
iOS Developers: For a deployment where users are primarily running the iOS Simulator and also compiling code in xCode, this server could hold up to 30 concurrent users.
Creative Cloud Users: For a deployment where users are primarily running Photoshop and InDesign (or Illustrator), this server could hold up to 40 concurrent users.
How-To Guide for iOS Development:
We recommend the hardware above as the Samsung EVO SSD's are very stable, fast, and affordable. The drive enclosure will give you the ability to create a RAID5 (hardware) from those SSDs and export them to the MacPro as a single drive, thus removing the need for SoftRAID (such as AppleRAID). The brackets are of course so the SSDs fit the 3.5" enclosures. If you find that those SSDs aren't large enough, you are able to load that enclosure up with drives as big as 6TB a piece.
Once you have all that done, you'll now want to load your [new] user accounts to use the new array for their home directories. The easiest way to do this is by using "System Preferences". To do this, open
"System Preferences" and click on "Users & Groups", then click on the padlock in the lower-left corner and unlock the panel. Once that is done, right-click (or Ctrl+Click) a user account and select "Advanced Options..." then change their "Home Directory" to be a new folder on the new RAID. Alternatively, you can use the "dscl" command to create a user on the new RAID. An example of this command would be:
dscl . -create /Users/aqua
dscl . -create /Users/aqua UserShell /bin/bash
dscl . -create /Users/aqua RealName "Aqua User"
dscl . -create /Users/aqua UniqueID "510"
dscl . -create /Users/aqua PrimaryGroupID 20
dscl . -create /Users/aqua NFSHomeDirectory /Volumes/RAID/Users/aqua
dscl . -passwd /Users/aqua <password for aqua>
After you've done this, you'll need to initialize the user's home with "createhomedir", example: "createhomedir -u aqua". From there you should have all your user accounts located in the right spot.
To setup the development environment, you'll need to simply install XCode (and the tools associated with it) via the App Store. Note that you'll need to install XCode for 1 user, and all users will access to
it long as they accept the EULA. If you're wanting to host your own repository (Git, SVN, CVS, etc.), we recommend using BitBucket as it'll allow you to setup access permissions and secure the repo with things
such as SSH keys. We also recommend disabling SIP (System Integrity Protection) as it helps with using LLDB/a debugger (see below).
Additional Articles on Optimizing the Platform:
Disable SIP: https://developer.apple.com/library/content/documentation/Security/Conceptual/System_Integrity_Protection_Guide/ConfiguringSystemIntegrityProtection/ConfiguringSystemIntegrityProtection.html
Optimize macOS for Ignision: http://support.aquaconnect.net/display/IIS/Optimizing+your+Mac+for+use+with+Ignision