This website’s status over time. Powered by Ansible, Prometheus and Grafana. It’s live and updates on its own.
I have always been interested in infrastructure, servers and systems, so when I was building this website, I decided.. “I will not be using an established host like one.com, wix or anything.” I wanted the challenge myself. I wanted to learn.
What started out as a simple experiment with Apache, soon turned out to become much much much more complex, featuring service separation, service optimisation and high availability. I even automated almost every aspect of it once I felt I knew the services.
I love complex challenges, and I’m employing a simplicity first solution to my complex challenges. If a solution is simple, reproducible and easily maintainable, it is a good solution. Complex solutions could over time make the system less maintainable, or cause potential issues later down the road.
This website and a whole bunch of other websites I’m running for projects, friends and family, consist of several virtual machines running Ubuntu 18.04 LTS, but will soon be upgraded to 20.04 LTS. Nearly all of the virtual machines are built with high availability and maintainability in mind.
NOTE: This system is about to get phased out. Ubuntu is being replaced by CentOS/RHEL family for standardisation.
No machines are manually managed, apart from the deployment (soon to be automated), any installations, configurations, management etc are done through automation by using Ansible. Ansible has enabled me to become highly platform independent, so if I wanted, I could easily redeploy the entire infrastructure on own servers, or with cloud providers.
|mon-eu1-prd||Monitoring platform||Prometheus++, Grafana|
|vas-eu1-prd||Vulnerability Assessment platform||Greenbone, OpenVAS|
|acme-eu1-prd||SSL Cert Management||CertBOT/LetsEncrypt|
|lb1-eu1-prd||Primary loadbalancer||KeepAlived, HAProxy, Varnish, GlusterFS|
|lb2-eu1-prd||Secondary loadbalancer||KeepAlived, HAProxy, Varnish, GlusterFS|
|lb3-eu1-prd||Tertiary loadbalancer||KeepAlived, HAProxy, Varnish, GlusterFS|
|db1-eu1-prd||MySQL Node||MySQL, XtraDB, Galera|
|db2-eu1-prd||MySQL Node||MySQL, XtraDB, Galera|
|db3-eu1-prd||MySQL Node||MySQL, XtraDB, Galera|
|web1-eu1-prd||Web Node, SQL Proxy||nginX, Apache2, ProxySQL, GlusterFS|
|web2-eu1-prd||Web Node, SQL Proxy||nginX, Apache2, ProxySQL, GlusterFS|
|web3-eu1-prd||Web Node, SQL Proxy||nginX, Apache2, ProxySQL, GlusterFS|