[go: nahoru, domu]

Skip to content

Tradeoff on the operating system to use for COPRS

Cyrille edited this page Oct 12, 2021 · 1 revision

Cluster OS

Introduction

This tradeoff aims at compare some OS in order to select the fittest for the needs of COPRS project. To perform this task, this tradeoff will use the following criterias :

  • Technical
    • OS reputation
    • portability from CentOS
    • ecosystem
    • upgrade/maintenance
    • compatibility with kubernetes
    • usage in a cloud/virtualization concept
    • open source
  • Non technical
    • community
    • licence
    • export control
    • lifecycle
    • major version support
    • future perspectives/developments
  • Security
    • system logs forwarding
    • Linux process filtering
    • hardening guides available
    • OS vulnerability
    • security patch frequency

Centos

As Centos will not be supported anymore by Red Hat, we have chosen to not add it in this trade off.

Ubuntu Server

Ubuntu is one of the most widely used Debian-based Linux distributions. It is an extremely popular choice as a Desktop distribution, cloud server OS for different cloud providers, as a base OS for Kubernetes and OpenStack platforms.

Pros
  • Great reputation and community (widely used Canonical claims that over 55% of OpenStack clouds already run on Ubuntu.)
  • Huge ecosystem
  • Compatible with K8S
  • Cloud oriented (used by many cloud provider)
  • Open source (Free software)
  • Good major version support (eg LTS is maintened for up to five year since his release date)
  • Export control of USA and EU
  • Great future as Ubuntu is currently leader of openstack deployements
  • Rsyslog, syslog-ng etc...
  • SeLinux or AppArmor as Linux process filtering
  • Many hardening guides available
  • Security issues are corrected frequently
Cons
  • Migrate from Centos is feasible but complex because of the usage of differents package system (RPM vs APT).
  • Less stable because of short lifecycle between releases
  • A little bit less secure than SUSE or RHEL
Sources

SUSE

SUSE Linux Enterprise Server was brought to the market by a German-based multinational open-source software company – SUSE. This Linux distro is one of the most common on-premises and cloud-based server solutions for hosting SAP workloads. Like RedHat, SUSE focusing on the Enterprise market segment and provides a reliable operating system for desktops and servers.

Pros
  • Good reputation
  • Migrate from Centos is simpler because it use the same package system of Centos.
  • Compatible K8S
  • Hardening guides availables
  • Community driven development
  • Support
  • Secured image
  • Better stabilty than Ubuntu
  • Consume less ressources than Ubuntu
  • Long term support (10 years)
  • SeLinux or AppArmor as Linux process filtering
  • Rsyslog, syslog-ng etc...
Cons
  • Smaller community
  • Not Free
  • Commercial licence
  • Export control US/UK Mass Market
Sources

RHEL (Red Hat Enterprise Linux)

Red Hat Enterprise Linux (RHEL) is a business-oriented Linux distribution for workstations and servers. This Linux distro is based on the open-source Fedora project. The core software is open-source and available for free. Red Hat utilizes trademark law for prohibiting the redistribution of their official Red Hat Enterprise Linux applications. The RedHat company is applying many efforts to make the most popular open-source software available for large enterprises by improving software stability and packaging it to ready-to-use distributions with lots of additional management tools.

Pros
  • Great reputation
  • Migrate from Centos is simpler because it use the same package system of Centos.
  • Each version is supported up to 7 to 10 years.
  • Security oriented "tried and trusted"
  • Support
  • Compatible K8S
  • Great stability
  • Hardening guides availables
  • Large community
Cons
  • Not free
  • Commercial licence
  • Export control US Mass Market
Sources

Conclusion

Regarding all the elements cited above, we preconise the use of Ubuntu Server as operating system. The main argument is the fact that this solution is free and his popularity even if less stable than his two opponents. Even so, his leading position as OS in the cloud world is a big advantage and confort us in this opinion.

Container OS

Introduction

This tradeoff aims at compare container OS in order to select the fittest for the needs of COPRS project. To perform this task, this tradeoff will use the following criterias :

  • Technical
    • Container reputation
    • Ecosystem
    • Upgrade/maintenance
    • Open source
    • Java compatible
  • Non technical
    • Community
    • Licence
    • Export control
    • Lifecycle
    • Major version support
    • Future perspectives/developments
  • Security
    • Security patch frequency

Ubuntu Server

Ubuntu is one of the most widely used Debian-based Linux distributions. It is an extremely popular choice as a Desktop distribution, cloud server OS for different cloud providers, as a base OS for Kubernetes and OpenStack platforms.

Technical

  • Great reputation (1B+ download)
  • Huge ecosystem
  • Easy Upgrade/maintenance
  • Open source
  • Java compatible

Non technical

  • Huge Community
  • Licence Opensource
  • Short lifecycle (many release, less stability )
  • Major version support (up to 5 years)
  • Great perspectives/developments

Security

  • Rapid Security patch frequency

OpenSuse Leap

The container image for OpenSuse Leap which is the communautary version of SUSE SLE.

Technical

  • Good reputation (5M+ download)
  • Huge ecosystem
  • Easy Upgrade/maintenance
  • Open source
  • Java compatible

Non technical

  • Community smaller than Ubuntu
  • Licence Opensource
  • 18 months lifecycle
  • Major version support (up to 5 years)
  • Good perspectives/developments

Security

  • Rapid Security patch frequency

SUSE

SUSE offers a number of official base container images that can be used as a starting point for building custom containers. Each SLE base image provides a minimal environment with a shell and package management.

Technical

  • Unknown reputation
  • Large ecosystem
  • Easy Upgrade/maintenance
  • Open source (GNU)
  • Java compatible

Non technical

  • Community smaller than Ubuntu
  • Licence Opensource
  • Long lifecycle
  • Major version support (up to 10 years)
  • Good perspectives/developments

Security

  • Rapid Security patch frequency

Conclusion

Regarding all the elements cited above, we preconise the use of Ubuntu as container solution (minimal image). The popularity of this container image and the fact that the same OS could be used as main operating system would ease the works of the teams.

Note: this choice was also made according to Cluster OS in order not to have two different OS to maintain