Linux/BSD: популярные дистрибутивы (general, network)

  • Корпоративный сегмент: грубо говоря 45% debian (ubuntu+debian+raspbian), 45% rhel (centos+rhel+fedora), 10% остальные
  • Популярные дистрибутивы могут выбирать не самую продолжительную (отличную от Long term support, LTS) по поддержке сборку Linux Kernel для своей работы (напр. Fedora, Ubuntu) – чтобы как можно раньше находить баги с новыми версиями. Негативный и позитивный примеры в этом контексте (требовался надежный сервер с заведомо рабочей сборкой ПО):
GENERAL
  1. Ubuntu – самый популярный дистрибутив Linux. Есть платная поддержка, которая дешевле Red Hat. На него c RHEL не так давно мигрировала Wikipedia по причинам экономии (неужели Red Hat не могли подарить бесплатную поддержку Wiki?). Сам использовал его в качестве продакшн сервера для развертывания нескольких приложений. Траблов из-за ОС каких то не встречал, все предельно удобно и надежно.
At the top of almost every Linux-related list, the Debian-based Ubuntu is in a class by itself. Canonical's Ubuntu surpasses all other Linux server distributions — from its simple installation to its excellent hardware discovery to its world-class commercial support, Ubuntu leaves the others fumbling in the dusty distance
http://www.ubuntu.com/products/casestudies/wikimedia

Wikimedia Foundadtion (владелец сети ресурсов Wikipedia) меняет серверный дистрибутив: теперь вместо Red Hat главным поставщиком организации станет Canonical, а около четырёхсот серверов заработают под управлением Ubuntu 8.04 LTS — новость, прямо скажем, приятнейшая. В чём же превосходство Ubuntu над RHEL?
Свой выбор в Wikimedia Foundadtion объясняют, главным образом, желанием сэкономить на поддержке: сейчас в месяц тратится порядка 35 тыс. долларов для поддержания серверного парка. Пятигодичный цикл поддержки LTS версий Ubuntu должен сократить расходы.
Интересно и вот что: нагрузка на серверы с Wikipedia достигает 50 тыс. запросов в секунду. Кто там говорил, что Ubuntu сладо подходит для высоконагруженных систем?
  1. Red Hat – один из самых качественных, но и дорогих enterprise дистрибутивов. Можно поставить trial на 30 дней. По окончанию триала ничего слишком страшного не произойдет – только апдейты не будут работать.
Red Hat Enterprise Linux (RHEL) started out as the "little Linux company that could" and is now a major force in the quest for data center rackspace. The Linux darling of large companies throughout the world, Red Hat's innovations and non-stop support will have you coming back for more.
  1. SUSE – Novell SUSE Linux Enterprise Server.
CentOS говно – поддержки нет никакой. Можно уповать только на community и умение свое поиска (Карманов).
Карманов переехал с CentOS на SUSE, когда тот глючил и он не смог его “вылечить”.
  1. Debian – популярен, нет коммерческой поддержки
  2. FreeBSD – крайне популярная для серверов ОС, причем до сих пор (netflix использует и контрибьютит в него). Ядро Freebsd монолитное (в отличии от Linux) и то, что включено в ядро или можно включить в ядро (как IPFW) работает супер круто. То что через порты работает так себе. Сейчас во многом к сожалению многие мигрируют с нее на другие ОС (RHEL, Oracle, Ubuntu, etc), сам проект частично раздербанился в разные стороны (netbsd, openbsd) – что скорее недостаток.
Что подпилил netflix в FreeBSD
● NUMA enhancements
● Asynchronous sendfile
● Kernel TLS
● Pbuf allocation enhancements
● “Unmapped” mbufs
● I/O scheduling
● TCP algorithms
● TCP logging infrastructure
    • Кейс применения: на freebsd прога на С парсит/сохраняет машину состояний tcp по закону Яровой, работает совместно с крутым во FreeBSD IPFW (о нем чуть подробней в iptables)
    • Основной сервер what’s up (200к сообщений в секунду), слышал его используют так же Яндекс и OZON
    • Мелкий провайдер может иметь одну самосборную машину для ISC-DHCPd на белые (услуга статический IP) и серые адреса (NAT’ятся), NAT, shaping и даже биллинг в одной коробке на FreeBSD. Причем не нужен какой-то супер сервер. Достаточно Core i7, 8Gb RAM, Intel E1G42ET.
    • Сервер может использоваться как vpn-концентратор – у одного из провайдеров для 20к клиентов стоит 20 таких серверов с round-robin балансингом на DNS с физ. конфигом недорогого сервера Intel XeonE5405 2.0GHz/4GB RAM/250GB.
  1. Fedora – популярен т.к. основан на RED HAT и по сути является девелоперской версией RED HAT, но самим RED HAT оффициально не поддерживается (но спонсируется), только сообществом. Нет коммерческой поддержки.
  2. CentOS (Rocky Linux/Alma Linux now) – популярен т.к. основан на RED HAT, но самим RED HAT раньше не поддерживался и после 2021 по сути не будет “стабильного CentOS”, только dev версия будет проходить через RED HAT. Нет коммерческой поддержки. Очень популярен в entreprise решениях т.к. по сути является копией RHEL. Сейчас его заменой считается Rocky Linux.
https://centos.rip/
We offer two Linux distros:
- purchase RHEL
- purchase RHEL
http://community.redhat.com/centos-faq/#_centos
Red Hat and the CentOS Project are building a new CentOS, capable of driving forward development and adoption of next-generation open source projects.
CentOS говно – поддержки нет никакой. Можно уповать только на community и умение свое поиска (Карманов).
Карманов переехал с CentOS на SUSE, когда тот глючил и он не смог его “вылечить”.

Если посмотреть в файл  License agreement CentOS (находится там же, где и в RHEL), то там можно увидеть предельно короткое описание поддержки CentOS 😉

[root@host1 ~]# more /usr/share/centos-release/EULA
CentOS-7 EULA
CentOS-7 comes with no guarantees or warranties of any sorts, either written or implied.
  1. Gentoo – популярен, нет коммерческой поддержки. У нас исторически (я бы наверно сейчас не стал бы ее ставить) есть один сервер на Gentoo, на нем крутится мониторинг.
  1. AltLinux – сертифицированный в России дистрибутив Linux
  2. Oracle Linux OS – ее хвалят как хорошую ОС, сделанную на основе RHEL + имеющую свои интересные плюшки. Плюс выпускается она с 2006! Года. Причем, в отличии от RHEL, Oracle Linux обновляется бесплатно. Только поддержка является платной и как я понял цена меньше RHEL.
  3. FreeNAS / TrueNAS – свободная операционная система для сетевого хранилища на основе FreeBSD. The World’s #1 Storage OS  with over 9+ Million Downloads.
  4. illumos (DilOS, OmniOS, SmartOS) в настоящее время является основой для множества различных Solaris-дистрибутивов с открытым исходным кодом, аналогично тому как ядро Linux используется в различных дистрибутивах Linux.
Network Operation System (NOS)

Все операционные системы тут.

Зачастую для сетевых задач используется не специализированная сборка, а чистый Debian/CentOS. Особенно популярно у Российских вендоров – собирается комбайн на базе debian/centos + frr/quagga/zebra, процессинг пакетов на базе Intel CPU или напр. Broadcom Trident (b4com) с возможностью или без возможности (сертифицируемые ИБ продукты) установки стандартных deb пакетов.

vyatta и vyos (fork vyatta)

Vyatta поддерживает dmvpn

Cumulus, sonic

Можно сделать фильтр только по тем, которые поддерживают ONIE (ниже). ONIE – Open Network Install Environment – изначально инициатива Cumulus Network (создателей Cumulus Linux, сейчас Cumulus принадлежит NVidia, так же как Mellanox – совпадение? не думаю). Странно, что в списке нет SONiC – операционки Microsoft на основе Debian (кстати, как и большинство других NOS), которую она использует в AZURE. Это основная ОС для whitbox сейчас.

Arista says the 7388X5 can also be configured to run the SONiC NOS if a customer wants it.

https://www.ipinfusion.com/products/sonic/

ONIE (Cumulus) поддерживают коммутаторы ДЦ сегмента от fs.com, подробнее в ДЦ.

Очень годное обсуждение Cumulus, Sonic в статье про яндекс облако. Кто-то активно их использует при строительстве ДЦ, включая яндекс облако.

Wind River Linux – его используют крупные вендоры (Cisco, Juniper) и оборонные предприятия США. Wind River User Guide.

    • От создателей vxWorks. vxWorks – ОС реального времени, позиционируется как более надежная в сравнении с “обычными” ОС, в том числе на основе нее работают марсоходы.
    • EOL 4.1 был еще в 2018. Они активно патчат старое ядро. Явно  компания на себя берет решение вопросов комплаенса.
      • https://en.m.wikipedia.org/wiki/Linux_kernel_version_history
      • https://support2.windriver.com/index.php?page=other-downloads&on=view&id=6411
      • https://support2.windriver.com/index.php?page=cve&on=view&id=CVE-2017-7273
Wind River
Американская компания, производитель операционной системы реального времени VxWorks, дистрибутива Wind River Linux и средств разработки программного обеспечения для встраиваемых микропроцессорных устройств.


Linux FTDv
https://www.kernel.org/category/releases.html 
Обращает на себя ядро 4.1 и 2021 год.
Copyright 2004-2021, Cisco and/or its affiliates. All rights reserved.
Cisco is a registered trademark of Cisco Systems, Inc.
All other trademarks are property of their respective owners.
Cisco Fire Linux OS v6.6.4 (build 3)
Cisco Firepower Threat Defense for VMWare v6.6.4 (build 59)
admin@ciscoasa:~$ cat /etc/*-release
ID="wrlinux-small"
NAME="Wind River Linux"
VERSION="8.0.0.25"
VERSION_ID="8.0.0.25"
PRETTY_NAME="Wind River Linux 8.0.0.25"
admin@ciscoasa:~$ uname -a
Linux ciscoasa 4.1.21-WR8.0.0.25_standard #1 SMP Fri Apr 16 15:53:58 GMT 2021 x86_64 x86_64 x86_64 GNU/Linux

Dentos – сетевая ОС от linux foundation (изначально amazon) для коммутаторов, стек технологий довольно стандартный.

Система доступна для коммутаторов на базе ASIC Marvell и Mellanox, насчитывающих до 48 10-гигабитных портов. Поддерживается работа с различными ASIC и чипами обработки сетевых данных, включая ASIC-чипы Mellanox Spectrum, Marvell Aldrin 2 и Marvell AC3X с реализацией таблиц аппаратного перенаправления пакетов.

У Facebook для коммутаторов используется свое творение – Facebook’s FBOSS network OS.

Facebook Open Switching System (FBOSS)
FBOSS is Facebook's software stack for controlling and managing network switches.

Активно так же используется Switchdev (yandex), но он вендорлокнут чипами Mellanox. В целом большой тренд использования Sonic (mail.ru).

eucariot
Мы используем Whitebox. Думаю, что на одном из следующих NextHop кто-нибудь об этом сделает доклад)
А можете рассказать, каким образом Whitebox-свитчи позволили сэкономить вагон? Они ведь не настолько драматически дешевле, а количество возникающих с ними проблем требует или поддержки или своего штата экспертов.
Ну и что было мотивацией использовать их вместо зрелых и оттестированных вендорских железок?

creker
Whitebox у нас получились существенно дешевле. Конкурент в лице аристы, которого мы тоже смотрели, стоил на тысячи долларов дороже за штуку. Оно ведь понятно. В стоимость вложена ОС, а с whitebox мы платим только за железо. И даже с учетом платы за cumulus выходило существенно дешевле, а с sonic разница так вообще неприличная получается. При этом железо все равно везде одинаковое практически — кругом стоит один и тот же броадком. В том числе у аристы и многих других.
А мотивацией было как раз нежелание отваливать столько денег, на которые лучше было серваков докупить, а также связываться собственно с этими самыми вендорами. Ну и поэкспериментировать — тренд в эту сторону давно просматривался. Пока у нас проблем никаких не возникало с таким решением. Как настроили так и работает.

Так же в сетевой среде популярен и CentOS/RHEL – на его основе работает IxOS от Ixia, Arista EOS (на базе Fedora, но по сути это тоже самое).

Vendor OS Base ONIE Compatible
Big Switch Networks Switch Light Debian YES
Cumulus Networks Cumulus Linux Debian YES
Dell Force 10 Operating System (FTOS) NetBSD YES
HPE OpenSwitch Yocto YES
Mellanox MLNX_OS Debian YES
Lenovo cNOS Yocto YES
Lenovo eNOS Yocto YES
OCP ONL Debian YES
Pica8 PicOS Debian YES
Pluribus Networks Netvisor OS Illumos/CentOS YES

Пример mellanox свича, поддерживающего ONIE.

# show version
Product name:      MLNX-OS
Product release:   3.6.4114
Build ID:          #1-dev
Build date:        2017-08-20 19:42:07
Target arch:       x86_64
Target hw:         x86_64
Built by:          jenkins@ab6c308d21cf
Version summary:   X86_64 3.6.4114 2017-08-20 19:42:07 x86_64
 
Product model:     x86onie
Host ID:           xxxx
System serial num: xxxx
System UUID:       xxxx
 
Uptime:            16d 1h 55m 23.136s
CPU load averages: 1.02 / 1.05 / 1.05
Number of CPUs:    2
System memory:     2491 MB used / 5305 MB free / 7796 MB total
Swap:              0 MB used / 0 MB free / 0 MB total

Leave a Reply