Hi Folks, I am ready to build my first Ignition test box and considering what flavor of Linux to use. I am trying to provide for both ease of administration and long term stability. Everything I am going to be replacing is all still running WonderWare on Windows 2000 boxes. The goal is to produce a mostly open source proof of concept for a good customer for an Ignition system to run for the next ten years or so. After the initial proof works out, I intend to build a rack server for it with redundant power supplies and a mirrored pair of hard drives for long term reliability. MySQL I am thinking for the database, as I have some small experience with it. I think perhaps virtualization would probably be overkill for this kind of thing, so I probably will just back it all up with Clonezilla, Acronis or similar.
I am thinking of using
A. Ubuntu 12.04 LTS server edition with either KDE or XFCE GUI pasted on to it.
or B. CentOS 6.3 with some as yet unknown GUI layer or administration tool set.
I am somewhat familiar with desktop versions of Ubuntu 10.04 and 11.04. Once I have the Linux installed, I know that I should be able to build a LAMP stack with a single install to Ubuntu. The CentOS path to a working LAMP stack seems to be one package at a time. I am willing to do the extra work installing individual packages for the sake of long term stability. That all looks fairly easy to do, apt get or yum install .deb or .rpm, whatever magic server incantations to perform pasted from Google searches after sanity checks.
Comments suggestions and ideas are all most welcome. ubuntu-12.04.2-server-amd64.iso and CentOS-6.3-x86_64-LiveCD.iso are currently downloading as we speak.
The best policy is to keep things as standard as possible. Keep a list of all the steps to recreate the system from scratch. The shorter this list is the better. This is all the more important if you’re leaving someone else to maintain the system.
Go with Ubuntu because it’s Debian-based. I avoid all CentOS/Fedora/Redhat-based distributions- they are nothing but trouble.
MySQL is a sane default option for database mainly due its popularity. Shouldn’t need to change any configuration for it.
Virtualization is definitely more hassle than it’s worth.
I use rsync for backups because it’s command-line and can be run as a cron script. If you want to pull backups from another machine you may prefer other options.
Does this machine even need a GUI?
If it’s needed to run the system, consider using the ultimate bare-bones system possible. Ratpoison is nice if there’s only one program to run- there are no window decorations and it forces everything to be full screen.
If it’s for administration, avoid this if at all possible. Servers should always be configured via the command line. It’s simpler, it’s more obvious what changes are being made, and it discourages people from messing with it unless they know what they’re doing.
Agree with everything systemparadox metioned except the virtualization.
When you want/need to upgrade to a newer machine you end up reinstalling everything versus simply moving a virtual machine over to a new host you will see the difference.
Speaking as the IA build engineer, Debian-based systems are the best way to go. Our installers can automatically add a service that automatically starts the Ignition Gateway if the box restarts. With other Linux systems, you need to configure the service manually. Also, we do the majority of our Linux testing against Debian-based systems (Ubuntu, Mint).
RHEL guy here, I agree that installing it on Ubuntu was easier.
We went RHEL because of the support structure, so I’d recommend the LTS branch of Ubuntu for a Corp environment where support matters.
Virtualization has been nothing but a plus for us. If you are interested in this route for a rack server, you can get a free license of ESXI.
Later on the VMware vSphere Essentials Kit is reasonably priced once you want more than one host running the hypervisor.