Отличия Linux – Сравнение Debian, Ubuntu, CentOS. Преимущества и недостатки использования CentOS для выделенного сервера, особенности CentOS на базе Red Hat Enterprise Linux

Речь пойдет о не особо новом, но, несомненно, заслуживающем внимания, дистрибутиве CentOS. Разработана данная операционная система на базе Red Hat Enterprise Linux, отличается повышенной стабильностью, может работать, как на компьютерах с 64-битной архитектурой, так и 32-битной. Коренным отличием от Linux является бесплатность в распространении. О преимуществах и недостатках данной платформы подробнее, чуть ниже.

Начать стоит с того, что все программные продукты, которые рассчитаны на работу в среде Linux будут функционировать и в CentOS. Мало того в дистрибутиве имеется ряд вшитых решений, которые смогут значительно упростить жизнь программисту или же сетевому администратору с работой на выделенном сервере.

Операционная система разработана энтузиастами, тем не менее, она имеет постоянные обновления. На данный момент последняя шестая версия включает полный пакет всех нужных нововведений в сфере защиты. Новые версии выпускаются раз в два года, пакет обновлений каждые полгода.

Очень актуальным сейчас считается вопрос: «Можно ли считать, что CentOS - Linux для новичков?» Ответ отрицательный. CentOS - это полноценная операционная система, которая не является упрощённой низкопробной копией. Это самостоятельный проект, который, тем не менее, имеет общий базовый программный код с творением Red Hat Enterprise. Сразу нужно дать одно важное пояснение. Это не пиратская версия, а вполне легальная система. Если говорить более предметно, вся соль заключается в том, что Red Hat по собственному желанию выкладывают в открытый доступ исходные коды. Естественно, что такая благотворительность не осталась, не замеченной. Программисты со всего мира решили создать собственный проект, и сейчас узнаем, насколько он успешный.

Первым делом рассмотрим процесс установки. Всё довольно-таки просто и не требует от рядовых пользователей чрезмерных усилий. Скачиваем файл на сайте разработчиков, записываем на диск, устанавливаем, собственно всё. Для того чтобы проделать все эти действия даже программистом быть не нужно, достаточно знаний рядового пользователя.

Также радует то, что на официальном сайте разработчиков есть множество полезных советов и инструкций, которые пригодятся, желающим воспользоваться их программой. А вот если вы любите послушать музыку, во время работы, то здесь придётся проявить немного изобретательности. Система в принципе не рассчитана на формат mp3, а вот ogg читает на ура. Связано это с патентными правами, но есть замечательный выход из сложившейся ситуации, достаточно перекодировать файлы, и можно наслаждаться любимой музыкой.

Считается, что время поддержки каждого релиза десять лет, но это не совсем так. К примеру, если брать CentOS 4, то выпуск обновлений продолжался до 29 февраля 2012 года, а потом вышла CentOS 5. Сейчас уже широко используется CentOS 6. Фактически, данный дистрибутив, по заявлениям разработчиков будет поддерживаться до 31 марта 2017 года, время покажет.

Ещё одно важное уточнение, которое придётся по вкусу многим. CentOS предполагает установку графического интерфейса. Для этого имеются специальные метапакеты. Дополнительно у всех желающих будет возможность установить «Приложения для Офиса» и «Графические средства Интернет».

Популярность операционных систем Gentoo vs Debian vs CentOS


Итоги

Операционная система CentOS под - проект интересный и жизнеспособный, но не без огрехов. К самым неприятным стоит отнести необходимость двух двд-дисков для записи шестой версии, но для клиентов дата-центра UNIT-IS это не проблема. Наши системные администраторы сами установят любую версию операционной системы и помогут в настройке вашего выделенного сервера.

И является совместимым с ним.

Срок поддержки каждой версии CentOS составляет 10 лет. Каждая версия обновляется каждые 6 месяцев для поддержки новых аппаратных средств.

2019: Утечка памяти ядра Linux от 754.el6 и старше

По информации компании, в декабре 2018 года несколько пользователей Carbon Reductor DPI вручную обновили ядро операционной системы CentOS, через несколько дней система мониторинга Carbon Soft обнаружила проблему с нехваткой оперативной памяти на серверах . После подключения инженеров, выяснили, что ядра система от 754.el6 имеют утечку памяти, в результате чего весь сервер перестаёт работать - у нескольких операторов связи перестала работать фильтрация по реестру запрещённых сайтов.

После локализации проблемы с обновлением операционной системы разобрались и исправили неполадку. В данной ситуации реакция инженеров помогла избежать нескольким интернет-провайдерам штрафов от Роскомнадзора .

Также сообщалось о собранной статистике, почему могут быть проблемы с сервером фильтрации трафика и как их избежать. Основная причина - это неправильная выгрузка и обработка списков на блокировку. Те операторы связи, которые сами обрабатывают списки, имеют по статистике больше проблем с фильтрацией, так как выгружают списки в DPI не напрямую с серверов Роскомнадзора, а через промежуточный. В этом случае разработчики советуют перейти на классическую выгрузку через электронно-цифровую подпись или с помощью режима "дельт" по логин/паролю рекомендованную Роскомнадзором.

2016: CentOS Atomic Host

CentOS Atomic Host - компиляция продукта Red Hat Enterprise Linux Atomic Host 7.2 , созданного на основе наработок свободного проекта Atomic.

Сборки CentOS Atomic Host доступны в форме установочного ISO, образов виртуальных машин Vagrant (Libvirt, VirtualBox), qcow2 (OpenStack, AWS, Libvirt) и AMI (Amazon Machine Image). Основными компонентами CentOS Atomic Host являются пакеты с ядром Linux 3.10.0-327, docker-1.8.2-10, cloud-init-0.7.5-10, atomic-1.6-6.gitca1e384, kubernetes-1.0.3-0.2, etcd-2.1.1-2, ostree-2015.9-2 и flannel-0.5.3-8.

Atomic Host предоставляет базовое окружение, которое содержит только минимальный набор компонентов (systemd, journald, docker, rpm-OSTree, geard и т.п.), необходимых для запуска и управления изолированными контейнерами. Все пакеты, обеспечивающие работу конечных приложений, поставляются непосредственно в составе контейнеров, а хост-система не содержит ничего лишнего. Состав хост-системы неделим и обрабатывается как целостный образ, без разбиения на отдельные пакеты. При этом сам образ формируется на основе штатных RPM-пакетов CentOS 7 при помощи системы rpm-ostree.

Контейнеры не привязаны к базовой системе и могут перемещаться с одного сервера на другой, а также централизованно обновляться и заменяться без перезапуска сервера. Поставка сервисов в форме контейнеров упрощает тестирование продукта, например, новая версия приложения или обновление состава контейнера могут быть предварительно протестированы на машине разработчика, а затем в неизменном виде перенесены на рабочий сервер, заменив прошлый рабочий образ контейнера. В случае сбоя сервера, контейнер с минимальной задержкой может быть поднят на другой машине.

Особенности Atomic Host

  • Обновление окружения Atomic Host производится атомарно, через замену образа всей системы, без разбивки на отдельные пакеты, что даёт возможность легко откатиться на прошлое состояние в случае проблем.
  • Для управления кластерами контейнеров задействован фреймворк Kubernetes, открытый компанией Google .
  • Помимо cgroups и пространств имён дополнительная изоляция приложений внутри контейнеров обеспечивается системой SELinux, что добавляет дополнительный барьер защиты.
  • Окружение Atomic Host может быть развёрнуто не только на физических серверах, но и в виртуальных машинах, приватных и публичных облачных окружениях, включая возможность запуска под управлением Amazon Web Services и Google Compute Engine.
  • Выполняемые в окружении Atomic Host образы контейнеров, оформляются в формате Docker ;
  • Для обновления системного окружения используется технология OSTree, при которой системный образ атомарно обновляется из Git-подобного хранилища, позволяющего применять методы версионного контроля к компонентам дистрибутива (например, можно быстро откатить систему к прошлому состоянию). RPM-пакеты транслируются в репозиторий OSTree при помощи специальной прослойки rpm-ostree;
  • Предоставляются средства для инкрементального применения обновлений, избавляющие от необходимости полной замены образа при каждом обновлении;
  • Установка и привязка контейнеров к systemd, а также координация выполнения контейнеров на разных хостах, осуществляется при помощи нового инструмента GearD. GearD войдёт в состав будущего выпуска платформы OpenShift и берёт на себя задачи быстрой доставки и развёртывания кода приложений в программных окружениях на базе изолированных контейнеров с использованием методов непрерывной интеграции;
  • Поддержка запуска привилегированных контейнеров, позволяющих распространять в форме контейнеров управляющие приложения, которым требуется доступ к содержимому базовой хост-системы или к другим контейнерам.

2015: CentOS 7.1511 для архитектуры i686, ARM и PowerPC

21 декабря 2015 года проект CentOS объявил о доступности редакций дистрибутива CentOS Linux 7.1511 для альтернативных платформ, поддерживаемых силами проекта CentOS .

Стали доступны сборки для 32-разрядной архитектуры i386/i686, Armhfp (может использоваться на платах Raspberry Pi2, Сubie truck, Bananapi и т.п.), PowerPC64 и PowerPC8 LE. Ожидается релиз CentOS 7.1511 для ARM64/Aarch64.

Дистрибутив RHEL 7.2 , используемый в качестве основы CentOS 7.1511, выпускается только для 64-разрядных систем. Адаптация пакетной базы для 32-разрядных систем выполнена в результате деятельности группы CentOS Linux AltArch SIG (Special Interest Group), в которую вошли участники, заинтересованные в портировании CentOS на платформы и архитектуры, отличные от x86_64 и официально не поддерживаемые в базовой редакции.

Любая работа по администрированию сервера начинается с самого очевидного и обязательного процесса — инсталляции необходимой ОС, чем мы и займемся. Скачаем и установим CentOS 7 server в конфигурации minimal или netinstall с загрузочной флешки или по сети на обычный диск или raid раздел. Перед этим выполним небольшую подготовительную работу и познакомимся с подробностями нашего дистрибутива, которые могут быть полезны в будущем.

7 июля 2014 года увидел свет релиз дистрибутива CentOS 7. Перед его установкой рекомендуется ознакомиться с системными требованиями. Подробно посмотреть полный список максимальных и минимальных системных требований можно на официальном wiki . Я же приведу только самые важные параметры:

Это официальные данные с сайта CentOS. У RHEL они такие же, я проверял. У меня лично на VDS благополучно все работает и с 512MB памяти, меньше не пробовал ставить, думаю и с 256 заведется.

Типы iso образов CentOS 7

Релиз CentOS содержал в себе несколько видов iso образов. Подробное описание каждого из них представлено в таблице:

Редакции CentOS 7
CentOS-7-x86_64-DVD Этот DVD образ содержит все пакеты, которые могут быть установлены с помощью инсталлера. Рекомендуется для большинства пользователей.
CentOS-7-x86_64-NetInstall Этот NetInstall образ для установки по сети и для восстановления. Инсталлятор спросит, откуда будет производиться установка пакетов. Удобно использовать, если у вас есть локальный репозиторий пакетов.
CentOS-7-x86_64-Everything В этом Everything образе содержится полный набор пакетов CentOS 7. Он может быть использован для установки, либо обновления локального зеркала. Для этого образа требуется двухсторонний DVD, либо флешка на 8 Гб.
CentOS-7-x86_64-LiveGNOME
CentOS-7-x86_64-LiveKDE
Эти два образа являются LiveCD CenOS 7. В зависимости от названия используется та или иная графическая оболочка. Они разработаны для тестирования окружения CentOS 7. Они не устанавливаются на жесткий диск, если вы не собираетесь этого делать принудительно. Набор установленного программного обеспечения поменять нельзя, это можно сделать только на установленной операционной системе с помощью yum.
CentOS-7-x86_64-Minimal С помощью этого Minimal образа можно установить базовую систему CentOS с минимальным набором пакетов, необходимых для работоспособности системы. Все остальное можно доустановить позже с помощью yum. Набор пакетов в этом образе будет такой же, как и на DVD при выборе установки minimal.

Я обычно использую для установки либо minimal образ, либо netinstall .

Cкачать CentOS 7

Скачать свежую на текущий момент версию CentOS 7.2.1511 можно двумя способами:

  1. Через torrent сеть
  2. С ближайшего зеркала

Я в качестве такого зеркала предпочитаю использовать :

Скачать CentOS 7
Torrent Yandex Mirror Размер
Скачать CentOS 7 DVD torrent Скачать CentOS 7 DVD iso 4G
СкачатьCentOS 7 NetInstall torrent СкачатьCentOS 7 NetInstall iso 360M
СкачатьCentOS 7 Everything torrent СкачатьCentOS 7 Everything iso 7G
СкачатьCentOS 7 LiveGNOME torrent СкачатьCentOS 7 LiveGNOME iso 1G
СкачатьCentOS 7 LiveKDE torrent СкачатьCentOS 7 LiveKDE iso 1G
СкачатьCentOS 7 Minimal torrent СкачатьCentOS 7 Minimal iso 634M

Напоминаю, что 32 bit или i386 редакции CentOS 7 не существует. Все дистрибутивы только x86_64 , то есть 64 bit .

Загрузочная флешка для CentOS 7

Последнее время лично я практически не пользуюсь обычными CD, предпочитая им загрузочные флешки. Они удобнее, занимают меньше места, проще обновить дистрибутив на них. Но иногда приходится заморочиться для создания загрузочной флешки. Например, для создания загрузочной флешки CentOS 6 я раньше пользовался программой unetbootin , но с 7-й версией этот номер не прошел. Созданная в ней флешка не позволяет установить CentOS 7, так как сам инсталлятор в какой-то момент не видит источник установки на флешке.

Но на выручку пришла бесплатная программа . С ее помощью без проблем удается создать загрузочную флешку CentOS 7 . Вот как это делается:

Этого достаточно для создания флешки. Теперь ей можно пользоваться для установки операционной системы с флешки.

Установка CentOS 7 с флешки

После создания загрузочной флешки, можно приступить к установке. Вставляем флешку в сервер, указываем в качестве источника загрузки USB и запускаем компьютер. Нас встречает начальное меню установки CentOS:

Выбираем первый пункт: Install CentOS 7 и жмем enter . После загрузки инсталлера, нас встречает окно с выбором языка, который будет использоваться во время установки. Я всегда выбираю Еnglish , мне так привычнее:

CentOS 7 minimal

Если вы используете диск centos minimal iso , то увидите следующий экран:

Здесь вам предлагают указать параметры установки. Восклицательным знаком помечен раздел, без настройки которого продолжение невозможно. Для настройки доступны следующие параметры установки:

  1. Выбор .
  2. Выбор раскладки клавиатуры.
  3. Поддержка каких языков будет осуществляться на сервере.
  4. Откуда будет происходить установка. Так как у нас дистрибутив centos minimal, установка будет с локального iso.
  5. Выбор пакетов для установки. В образе minimal доступен только минимальный набор софта.
  6. Разбивка жесткого диска. Подробнее коснемся этого пункта, когда будем разбирать установку на raid.
  7. Настройка сетевых интерфейсов.

Для продолжения установки необходимо выполнить как минимум разбивку жесткого диска. Без этого продолжение установки невозможно. Но мы пройдемся по всем параметрам и установим необходимые для нас значения.

Итак, нажимаем на DATE & TIME и настраиваем параметры времени:


После завершения настроек жмем сверху синюю кнопку Done .

Идем в следующую настройку — KEYBOARD LAYOUT :

  1. Добавляем необходимые раскладки. Я добавил Russian .
  2. Нажимаем Options и выбираем, как будет происходить переключение раскладок.
  3. Тестируем раскладки и переключение. Если все в порядке, идем дальше.

Нажимаем LANGUAGE SUPPORT :

Выбираем дополнительные языки, которые будет поддерживать система. Чаще всего мне это не нужно, но для примера добавим поддержку русского языка. Это может пригодиться, например, при создании файлового архива с русскими названиями в файлах. С поддержкой русского языка можно работать в консоли с русскими названиями папок и файлов. Если у вас, к примеру, сервер настраивается для работы в качестве шлюза, поддержка дополнительных языков скорее всего не пригодится. После выбора снова жмем Done .

Теперь выполним сетевые настройки. Идем в раздел NETWORK & HOSTNAME . Подробно о я указывал в одной из своих статей, поэтому останавливаться на этом вопросе не буду. Включаем ползунок в положение ON и получаем автоматически настройки по dhcp :

  1. Включение ползунка в положение ON активирует интерфейс, он получает настройки по dhcp.
  2. Если вы хотите изменить эти настройки, нажимаете Configure .
  3. Указываете hostname . Если забудете, то после установки этот параметр можно изменить.

Завершаем настройку нажатием на Done . Теперь можно вернуться в настройки часов и активировать Network Time .

Теперь перейдем в раздел INSTALLATION SOURCE . При установке centos minimal менять этот параметр нет необходимости. Там по-умолчанию установлен локальный источник, нам это подходит. Можно ничего не трогать:

В разделе SOFTWARE SELECTION при minimal установке тоже нечего выбрать, уже указан единственно возможный вариант:

Нам осталось рассмотреть последнюю обязательную настройку, без которой установка centos не начнется — INSTALLATION DESTINATION . Зайдя в нее вы увидите список подключенных к серверу дисков. В моем случае это один жесткий диск.

Если ваш диск определился правильно, выбираете его и нажимаете Done . Выскакивает окошко с предупреждением, что для установки системе понадобится примерно 1 Гб места на жестком диске, а на вашем жестком диске нет необходимого свободного места. Это происходит потому, что раньше на этом диске была установлена другая система и она занимала весь жесткий диск. Нам нужно удалить всю старую информацию для установки новой системы. Делаем это, нажимая Reclaim space :

Выбираем диск и удаляем все существующие разделы на нем — жмем сначала Delete all , а потом Reclaim space :

После этого установщик выберет весь диск в качестве диска для установки. После этого можно начать непосредственно установку centos, нажав кнопку Begin Installation .

CentOS 7 netinstall

Установка Centos 7 с образа netinstall отличается от прочих только одним моментом. Во время подготовки к установке по сети в разделе INSTALLATION SOURCE вам вместо локального источника необходимо указать путь к образу, расположенному где-то в сети. Очевидно, что перед этим необходимо выполнить настройку сети и убедиться, что у компьютера есть доступ в интернет.

В качестве источника для установки я буду использовать упомянутое ранее . — https://mirror.yandex.ru/centos/7/os/x86_64/

На скриншоте указан старый url. После череды обновлений он стал неактуален. Правильная ссылка выше в тексте.

Указываем путь и жмем Done . После проверки доступности источника, в разделе SOFTWARE SELECTION можно выбрать необходимый для установки набор софта:

Теперь рассмотрим наиболее сложный вариант установки. Мы будем ставить CentOS 7 на программный рейд. Для примера возьмем 2 диска и raid 1. Все установки будут такие же, как мы рассмотрели ранее, кроме одной — INSTALLATION DESTINATION .

Подключаем 2 диска к системе, загружаемся с установочного диска и идем в раздел разбивки диска. Видим 2 жестких диска. Выбираем оба и отмечаем пункт I will configure partition :

Жмем Done . Открывается немного кривое окно управления разделами жесткого диска.

Здесь мы первым делом удаляем все существующие разделы:

И создаем свои новые, нажимая плюсик. Нам нужно создать 3 раздела: boot , swap и корень / . Размеры разделов выбирайте сами, исходя из своих потребностей и оперативной памяти на сервере. Для раздела boot достаточно 500Мб, для swap хватит объема оперативной памяти. Все остальное можно либо заполнить одним корневым разделом, либо создать несколько, если в этом есть необходимость. Device Type ставим RAID . Тип файловой системы выбирайте на свое усмотрение. Что лучше — xfs или ext4 зависит от конкретной ситуации. Считается, что xfs работает лучше с большими файлами, ext4 с кучей мелких. Это тема отдельного разговора. RAID Level указываем RAID1.

Должно получиться примерно так:

Нажимаем Done , когда закончим. В новом окне подтверждаем разбивку диска, нажимая Accept Сhanges :

Все остальные параметры выставляем как было рассказано выше. Теперь можно начинать установку CentOS 7 на программный raid, который мы только что создали.

Посмотрим информацию о корневом массиве:

# mdadm -D /dev/md126

Все в порядке, установка сервера закончена. Рейд раздел нормально функционирует, обеспечивая отказоустойчивость сервера.

Я очень рекомендую использовать софтовый raid линукса mdadm в повседневной деятельности. Он намного надежнее, понятнее и стабильнее встроенных в материнскую плату контроллеров. Отдавать предпочтение аппаратному рейду следует только в том случае, если он действительно аппаратный, он имеет батарейку и он действительно увеличивает производительность сервера. Во всех остальных случаях рекомендую пользоваться mdadm.

Видео установки CentOS 7 на raid 1

Онлайн курс "Администратор Linux"

Если у вас есть желание научиться строить и поддерживать высокодоступные и надежные системы, рекомендую познакомиться с онлайн-курсом «Администратор Linux» в OTUS. Курс не для новичков, для поступления нужны базовые знания по сетям и установке Linux на виртуалку. Обучение длится 5 месяцев, после чего успешные выпускники курса смогут пройти собеседования у партнеров. Проверьте себя на вступительном тесте и смотрите программу детальнее по.

Сегодня мы анонсируем доступность релиза операционной системы CentOS 7 в облаке InfoboxCloud , основанного на пакетной базе Red Hat Enterprise Linux 7 и полностью совместимого с ним. В конце поста ссылка на бесплатное тестирование в облаке.

CentOS 7 - первый релиз ОС, после перехода команды CentOS в RedHat. Данная ОС стабильна и готова к корпоративному использованию.

Мы начинаем обзор новой ОС, состоящий из серии теоретических и практических статей. В первой главе обзора будет рассказано о поддержке контейнеров Linux в CentOS 7.

В облаке по умолчанию устанавливается минимальная версия CentOS 7 для обеспечения максимальной безопасности через снижение поверхности атаки. Все необходимые компоненты ОС устанавливаются из стандартных репозиториев.

Ключевые изменения CentOS 7
  • Поддержка контейнеров Linux (включая поддержку Docker ). Контейнеры расширяют возможности по разработке, доставке и изоляции софта для тестовых и производственных задач. Так же контейнеризация увеличивает безопасность ПО, снижая поверхность атаки;
  • Интеграция Active Directory / Identity Management (IdM)
  • Использование systemd , стандарта управления процессами, сервисами, безопасностью и другими ресурсами;
  • Встроенные профили и инструменты для оптимизации производительности и простого масштабирования;
  • Унифицированные инструменты управления и фреймворк управления OpenLMI , являющийся фактически стандартом индустрии для администрирования и настройки системы;
  • Техническая предварительная версия технологии установки обновлений ядра без перезагрузки kpatch ;
Поддержка контейнеров Linux
Docker безусловно выстрелил, породив изрядный шум в блогосфере и социальных сетях. В самых различных областях начали активно использоваться контейнеры для изоляции приложений друг от друга и от внешней среды, как средство доставки и развертывания программного обеспечения.

В контейнерная виртуализация используется уже несколько лет как один из вариантов виртуализации: более быстрый и экономичный, чем гипервизорная технология. Стандартный функционал InfoboxCloud позволяет быстро из панели управления создавать быстрые и эффективные контейнеры с необходимой ОС. Использование контейнеров внутри виртуальной машины InfoboxCloud (флаг "Разрешить управление ядром ОС " при создании сервера в облаке) приносит новые возможности:

  • Сохраняя возможность управления ядром ОС появляется возможность изоляции приложений друг от друга. В случае сбоя одного приложения система останется стабильной.
  • Разработчики хотят предоставлять программное обеспечение, которое легко развертывать, обновлять и масштабировать . Использование контейнеров позволяет иметь больший контроль над средой исполнения программного обеспечения. Появляется возможность создания портативного образа ПО и окружения, который легко переносить между средами исполнения.
Основные возможности контейнеров Linux:
  • Управление ресурсами;
  • Процесс изоляции;
  • Безопасность;
  • Инструменты управления из командной строки.
В контексте контейнеров Linux управление ресурсами организовано через cgroups . Cgroups позволяют пользователю выделять ресурсы, такие как процессорное время, системная память, пропускная способность сети, блок ввода-вывода или любую комбинацию из этих ресурсов для установки ограниченной пользователем группы задач или процессов, запущенных в данной системе. Пользователи могут заниматься мониторингом любых настроенных cgroups, запрещать cgroups доступ к определенным ресурсам, или даже динамически переконфигурировать cgroups на запущенной системе. Используя cgroups, системные администраторы имеют точный контроль за выделением, приоритизацией, уменьшением, управлением и мониторингом системных ресурсов. Аппаратные ресурсы (ресурсы гипервизора) могут быть легко поделены между задачами и пользователями, часто повышая общую эффективность системы. Cgroups – не новая концепция. Она появилась еще в Cent OS 6. В CentOS 7 стали лучше возможности управления контрольными группами через Systemd - менеджер ОС и сервисов.

Изоляция процессов, сердце архитектуры контейнеров Linux, представлена пространствами имен ядра (kernel namespaces ) CentOS. Сейчас Linux реализовывает шесть различных типов пространств имен. Цель каждого - обернуть каждый глобальный ресурс системы в абстракции . Каждый ресурс предоставляется в качестве изолированного инстанса для процесса внутри пространства имен, что обеспечивает изоляцию - иллюзию того, что группа процессов одинока в системе. Пространства имен необходимы, потому что ядро Linux ничего не знает о контейнерах. Задача пространства имен - научить ядро понятию изолированного окружения.

CentOS 7 реализует следующие пространства имен:

  • PID пространство имен предоставляет изоляцию идентификаторов процессов, позволяя процессам в различных пространствах имен PID иметь одинаковые PID. Одно из главных преимуществ пространств имен PID – возможность контейнеров мигрировать между хостами с сохранением тех же идентификаторов процессов внутри контейнера. PID пространство имен позволяет каждому контейнеру иметь собственный процесс инициализации, который управляет различными задачами инициализации системы, и управлять жизненным циклом контейнера.
  • Сетевые пространства имен предоставляют изоляцию сетевых контроллеров, системных ресурсов, ассоциированных с сетями, файрволлов и таблиц маршрутизации. Сетевые пространства имен позволяют каждому контейнеру иметь собственный виртуальный сетевой стек, который ассоциирован с группами процессов. Каждое пространство имен имеет свое собственное loopback устройство и пространство процесса. Виртуальные или реальные устройства могут быть добавлены к каждому сетевому пространству имен, и IP адреса могут быть назначены на эти устройства и использованы как сетевая нода.
  • Пространства имен UTS изолируют два системных идентификатора: nodename и domainname , возвращаемые системным вызовом uname(). Пространства имен UTS позволяют каждому контейнеру иметь собственный hostname и NIS domain name. Это полезно для инициализации и конфигурационных скриптов, которые совершают свои действия на основе этих имен.
  • Пространства имен монтирования изолируют набор точек монтирования файловых систем подобно группе процессов и помогают созданию различных файловых систем только для чтения. Процессы в различных пространствах имен монтирования могут иметь различные видения иерархии файловой системы. В дополнение к пространствам имен монтирования, системные вызовы mount() и umount() перестают действовать в глобальном пространстве точек монтирования (видимом для всех процессов ОС). Вместо этого они действуют только в пределах пространства имен монтирования, ассоциированным с процессом контейнера.
  • IPC пространства имен изолируют определенные ресурсы межпроцессного взаимодействия (IPC), такие, как объекты System V IPC и очереди сообщений Posix. Каждое пространство имен IPC имеет свой собственный набор идентификаторов System V и свою собственную очередь сообщений POSIX файловой системы.
  • Пользовательские пространства имен изолируют идентификаторы пользователя и группы так, что пользовательские процессы и идентификаторы групп могут быть различными внутри и снаружи пользовательского пространства имен. Наиболее интересный случай - когда процесс обычный не привилегированный ID снаружи пользовательского пространства имен и в то же самое время иметь идентификатор пользователя 0 внутри пространства имен. Это означает, что процесс имеет полные root привилегии для операций внутри пользовательского пространства имен, но является непривилигерованным для операций снаружи пространства имен.
Для обеспечения безопасности так же используется SELinux, который, как и в случае с cgroups, не является новой концепцией и существует начиная с CentOS 4. SELinux применяет метки безопасности и политики для контейнеров Linux и их ресурсов, предоставляя дополнительный уровень безопасности поверх безопасности, предоставляемой пространствами имен ядра.

Команда RedHat (вы ведь знаете, кто все это разработал на самом деле) начала работать над Docker начиная с версии 0.7. Вкладом Red Hat был новый драйвер хранения, который позволил Docker запуститься на Cent OS 7. В течении дальнейшего сотрудничества и вклада Red Hat в Docker был разработан новый встроенный драйвер исполнения, основанный на libcontainer, разработанный для доступа к API ядра контейнера напрямую, без сторонних зависимостей. Этот нативный набор инструментов может управлять возможностями ядра системы, такими как cgroups, пространства имен, сетевые интерфейсы, файрвол и другие особенности ядра. Благодаря Red Hat в Cent OS 7 Docker сейчас готов для корпоративного применения.

Таким образом, контейнеры Linux - важная open source технология для упаковки и доставки приложений, сочетая легковесную изоляцию и гибкость методов развертывания, основанных на образах.

Использованные в подготовке статьи источники.

В данной статье ознакомимся еще с одним популярным и актуальным дистрибутивом Linux – Centos (Community ENTerprise Operating System) . Коммерческая основа – Red Hat Enterprise Linux, ОС появилась в 2004 году. Каждая версия поддерживается сроком на 10 лет, релизы обновляется с периодичностью в 6 месяцев. Система считается свободным и популярным аналогом RHEL. Отличается характерной стабильностью и может отлично работать на компьютерах с 64-битной и 32-битной архитектурой.

Важная особенность Centos – на данной ОС работают все программные продукты, которые рассчитаны на Linux . Система поддерживается энтузиастами, но тем не менее новые версии выходят в свет каждые два года и постоянно обновляются. Процесс установки Centos прост и понятен даже для обычного пользователя, и это вовсе не обозначает низкопробность системы, наоборот Centos – полноценная ОС.

Характеристики системы : обновления данной ОС получают через программу yum; сообщество поддержки, которое быстро растет, имеет систему сборки, теста и исправления ошибок; осуществляется поддержка через форумы, имеется большой и понятный FAQ; есть возможность купить платное сопровождение.

Один из самых популярных и актуальных релизов – Centos 7 (всего на данный момент насчитывают 5 версий ОС). Какие основные изменения были внесены в данную версию по сравнению с предыдущими релизами:

  1. Обновление ядра до 3.10.0
  2. Обеспечение Linux Containers
  3. Open VMware Tools и графические 3D драйверы «из коробки»
  4. По умолчанию настроены OpenJDK-7 - JDK
  5. Обеспечение обновления с версии 6.5 до 7.0 (только с 6.5, много весомых изменений)
  6. Снапшоты LVM с ext4 и XFS
  7. Переход на systemd, firewalld и GRUB2
  8. XFS - файловая система по умолчанию
  9. iSCSI и FCoE в ядре
  10. Обеспечение PTPv2
  11. Поддержка сетевых карт 40G Ethernet
  12. Обеспечение установки в режиме UEFI Secure Boot на поддерживаемом оборудовании.

Основные особенности ОС Centos в целом. Ну в первую очередь, Centos привлекает пользователей своей бесплатностью в отличии RHEL, которая предоставляется на коммерческой основе. Со стороны технических аспектов выделяют оперативность репозиториев RHEL на высоком уровне, чем обеспечивается безопасность системы. Используются технологии GCC как SSP (защита стека), PIE. Набор ПО актуальный и типичный для современных ОС: предоставляются версии офисных, серверных и девелоперских пакетов, программ и утилит (KDE и Gnome с compiz и AIGLX, Firefox и Evolution, MySQL и PostgreSQL, Apache и PHP, и т.д.). Также предоставляется подробная техническая документация и имеется большой штат поддержки ОС, к которому можно обратится и получить ответы на все интересующие вопросы по данной системе.

Для работы с ОС Centos на наших ВПС-серверах предоставляем к вашему вниманию несколько инструкций на нашем блоге:

По поводу недостатков системы , пользователи часто отмечают то, что дистрибутив комплектуется не всегда свежими версиями программ, в том числе ядро Linux тоже не всегда новое. Поэтому данная система не подходит для тех, кто любит ежедневные обновления. Хотя любую систему можно обновить на свой “вкус”, и данный недостаток не будет считаться столь существенным.

ОС Centos рекомендована организациям и частным лицам, которым не нужны дорогостоящая лицензия и обслуживание, а стабильность работы сервера находится в приоритете. Компания Hyper Host™ бесплатно установит ОС Centos последней версии на любой из своих тарифов или .

О том, как правильно выбрать ОС для работы сервера, читайте .

25905 раз(а) 56 Сегодня просмотрено раз(а)