Differences between revisions 48 and 66 (spanning 18 versions)
Revision 48 as of 2017-12-28 08:31:46
Size: 1518
Comment:
Revision 66 as of 2021-01-20 20:25:45
Size: 2393
Comment:
Deletions are marked like this. Additions are marked like this.
Line 3: Line 3:
The main goal is to go as close to no downtime as possible. System uptime and availability is being increasingly important. Various services are expected to be accessibly at all times. The challenge is to configure and maintain such a system, with minimal downtime, and preferable no downtime at all. At first this sounds like a very complicated task, but breaking it down to its components makes it possible. Configuring and deploying one component at a time, in a redundant way, allows for added complexity in a simple way, which increasingly builds on a stable redundant platform, keeping the redundancy all the way through the component stack. As the system is comprised of redundant components, it is ensured that any component at any time can be taken down for maintenance, without compromising the uptime and availabilty of the system.
Line 5: Line 5:
== These are our worst foes == == The Challenge ==

Many factors affects such a system, and usually we do no have control of all of them.
Line 12: Line 14:
To get around this a redundant system has to be built. Realizing that a redundant system consists of many redundant parts, virtualization naturally comes to mind. Redundancy for all factors will be very expensive, so here we will focus on the software redundancy, and the physical hardware the software runs on.
Realizing that a redundant system consists of many redundant parts, virtualization naturally comes to mind.
Line 38: Line 41:
 * [[HA-proxy|HA-proxy]]
 * [[Corosync|Corosync]]
 * [[Corosync and HA-proxy|Corosync and HA-proxy]]
 * [[Mariadb|Mariadb]]
 * [[Redis|Redis]]
Line 41: Line 45:
 * [[Mariadb|Mariadb]]
Line 45: Line 48:
 * [[ownCloud|ownCloud]]  * [[Nextcloud|Nextcloud]]
 * [[OPNsense|OPNsense]]
Line 47: Line 51:
== Troubleshooting ==

 * [[Troubleshooting Disk IO|Disk IO]]


''This project is based on the GNU/Linux software packaged by Debian, currently the stretch release. The information provided here will most likely work on other GNU/Linux systems as well. Basic knowledge of GNU/Linux commandline tools, file editing, network etc. is required to use and understand this guide.''
''This project is based on the GNU/Linux software packaged by Debian, currently the buster release. The information provided here will most likely work on other GNU/Linux systems as well. Basic knowledge of GNU/Linux commandline tools, file editing, network etc. is required to use and understand this guide.''

Its all about uptime!

System uptime and availability is being increasingly important. Various services are expected to be accessibly at all times. The challenge is to configure and maintain such a system, with minimal downtime, and preferable no downtime at all. At first this sounds like a very complicated task, but breaking it down to its components makes it possible. Configuring and deploying one component at a time, in a redundant way, allows for added complexity in a simple way, which increasingly builds on a stable redundant platform, keeping the redundancy all the way through the component stack. As the system is comprised of redundant components, it is ensured that any component at any time can be taken down for maintenance, without compromising the uptime and availabilty of the system.

The Challenge

Many factors affects such a system, and usually we do no have control of all of them.

  • Power outage
  • Internet access
  • Hardware malfunction
  • Software updates

Redundancy for all factors will be very expensive, so here we will focus on the software redundancy, and the physical hardware the software runs on. Realizing that a redundant system consists of many redundant parts, virtualization naturally comes to mind.

Configure your system

Manage Virtual Domains

Network Planning

Configure a Redundant Service

This project is based on the GNU/Linux software packaged by Debian, currently the buster release. The information provided here will most likely work on other GNU/Linux systems as well. Basic knowledge of GNU/Linux commandline tools, file editing, network etc. is required to use and understand this guide.

TODO

None: Uptime (last edited 2021-12-31 11:46:57 by Kristian Kallenberg)