OS and Architecture

Hi All,

My first post - be gentle.

I’ve been using Ignition on and off for over a decade now, so naturally have by now used it across plenty of platforms (sometimes even by choice!) and have settled on my preferred method of deployment across different topologies.

But I’m interested in comparing how many people use different platforms, and what people prefer regardles of what they use. Windows, Linux; AMD64, ARM64 specifically.

I’ll go first.

What OS and architecture do you use?

Ranges from ARM64 on site with AMD64 cloud, or either on site.

Almost always Linux AMD/ARM64 with Docker and/or an orchestrator.
Example Container set.

  • Caddy - cloud reverse proxy/load balancer.
  • Portainer - simple container manager, convenient. Edge agent available for remote docker deployments.
  • Filebrowser - manage files, edit configs, share things.
  • Wireguard - easy as abc vpn server and/or client.
  • Ignition - you know
  • MariaDB - db for ignition.
  • NGINX - local reverse proxy/load blanacer
  • rclone - cloud sync
  • node-red - can be useful for linking things

Windows if I have to, I know my way around pretty well.

  • Vanilla setup with local db
  • Igniton HTTPS; IIS with letsencrypt or client cert; or VM with Linux and Caddy or NGINX for handling ingress.
  • Server gets RD Web Access for remote UI, Pro and otherwise get Guacamole in a small VM. Or anydesk/teamviewer/etc if someone is willing to pay for it.

What OS and architecture do you prefer?

Linux ARM64 local, AMD64 cloud

Any specific pros to your decision?

Deployment of a secure edge and a cloud server takes an hour, 2 at most.
Runs well on low spec.
Containerisation makes maintenance, upgrades and backup easy.

Any reasons why you don’t like the other platforms?

Not really, Linux is just easier to use. And mostly free.

Details of your installation that are relevant?

  • Usually Ubuntu 20.04 LTS
  • Caddyfile - rewrite for designer is required.
  • NGINX - config and related scripts to fill iframe url value with secure link. Used for handling local access.
  • Rclone - vfs settings
  • Deployment - docker-compose (containerised)
  • Host - OVH VPS or dedicated server, and/or local AMD64 or and industrialised RPi 4 8GB with an SSD.
  • MariaDB - db in container needs special consideraton especially under orchestration, being a stateful application. Can expand to dedicated database servers, managed or unmanaged.
  • Ongoing documentation (little laggy…)

Looking forward to seeing others answers!

3 Likes

If I had my way, we’d be using Linux/Ubuntu with either Postgre or MariaDB. However, as it stands, we end up using Windows a lot as many clients want SQL Server, want to be able to remote in and understand the system (at least to be able to grab files we produce off of it) and similar.

Besides it being free I find Ubuntu/Linux the easiest to troubleshoot (non-Ignition related) problems with as you have granular control over the system. I just recently had trouble setting up a VPN on Windows 10 as I wasn’t aware there are 2 separate different VPN setup windows - one from right clicking your wifi on the bottom right, which is limited, and the original old fashioned screen from control panel with all the options (which is what I needed). Seems tiny, and it kind of is, but I’d rather not have to sift through windows about the same thing just to change one property string. Additionally, since Ignition does not yet have cronjobs in the traditional sense (just the work around), it’s nice to be able to set them up easily within linux.

Maybe once you get a taste of the terminal lifestyle, everything else feels bloated and excessive. Maybe it’s just me.

4 Likes

It isn't just you. It is a significant enough issue that I do not supply or support any version of Windows. I will install on top of it for my customers, but they must supply and support the machine(s) with Windows. Same for MS SQL Server. SQL Server is particularly troublesome, as its timezone-aware column type is overspecified, and doesn't play well with JDBC. The only way to use SQL Server with Ignition in a geographically diverse environment is to keep SQL Server in a machine using UTC, and relying on non-tz aware column types. ):

3 Likes

Maybe once you get a taste of the terminal lifestyle, everything else feels bloated and excessive. Maybe it’s just me.

100%, I feel exactly the same way. My employer is potentially standardising on Windows, poorly provisioned at that, and it kills me.

Find it interesting that people generally strictly believe that Windows is best for this application when it's not only more difficult to use but more bloated. Typically, any Windows specific software I have to use (OPC-UA servers by ABB, for example) run in a VM adjacent to the SCADA VM on a type 1 hypervisor with guac for access.

I strongly dislike that trying to achieve the equivalent of a one line command can quickly turn into 30 clicks!

This isn't a Windows bashing thread though, as much as, in my opinion, it deserves it.

2 Likes