Системный администратор Linux. Вопросы. Часть 3

Данный пост является продолжением серии постов про собеседования на должность системного администратора linux. По традиции комментарии к предыдущему посту (Системный администратор Linux. Вопросы. Часть 2) в большинстве своём скатились в срач. Адекватных были единицы, но ради них эти посты я и пишу.


У меня меленькая просьба к подписчикам и тем, кто сохраняет в избранное мои посты - оставляйте хоть какой-то фидбек. Хотя бы в виде плюса или минуса посту. Сейчас примерно половина сохранений без оценки и это нагоняет тоску.

Системный администратор Linux. Вопросы. Часть 3 Linux, Windows, Сисадмин, Отдел кадров, Пригорело, Собеседование, Длиннопост

Вводные завершены, продолжаем список вопросов и ответов.


В: Как отключить iptables на RHEL/Centos 7?

О: Начиная с 7й версии было изменено название демона с iptables на firewalld. Для отключения надо сделать systemctl stop firewalld, а так же отключить его запуск при загрузке systemctl disable firewalld.

В+: Всегда ли этого достаточно?

О+: Нет. Иногда используются надстройки и кастомные скрипты для восстановления правил iptables после перезагрузки. Надо просмотреть вывод systemctl status на предмет скриптов восстановления iptables, а так же post-up, pre-up, post-down, pre-down скрипты в /etc/sysconfig/network-scripts/.


В: Как выполнить некий скрипт на условной 1000 серверов?

О: Можно написать скрипт, который будет обходить сервера по списку и выполнять на них нужные действия.

В+: А есть какие то готовые решения?

О+: Да. Сейчас особенно популярен Ansible. Помимо него есть puppet, chef и т.д. Так же есть различные web-интерфейсы для данных систем. Такие как платный Ansible Tower или бесплатные AWX, Foreman.


В: Необходимо сделать резервное копирование неких данных. Что бы Вы использовали? Как сделать дёшево и как правильно?

О: Самое простое и дешевое решение это архивация неких данных и вынос на внешний носитель. Для работы с обычными файлами этот метод вполне рабочий. А вот для копирования баз данных, особенно больших и нагруженных, такой метод не подходит. Всё дело в том, что между началом копирования и завершением проходит достаточно много изменений в базе и на выходе получается не консистентный бекап. В таких случаях используется логирование действий для последующей «догонки» базы до актуального состояния. Например в psql для этого используется WAL, у oracle это FRA и т.д., но это уже в зоне ответственности администратора баз данных. Виртуальные машины можно бекапить снапшотами с ротацией и выносом их на другой носитель.

В+: А более «взрослые» решения?

О+: Для этого есть масса программно-аппаратных комплексов. Обычно это некий софт, под управлением которого работают дисковые массивы с дедупликацией, компрессией и репликацией. Для наиболее холодных или наиболее разностных данных используются ленточные библиотеки.


В: Есть безлимитный бюджет и задача построить максимально отказоустойчивую инфраструктуру. Ваши действия.

О: Основное правило - всех элементов по два. Если говорить про сервер, под систему должно быть два диска в зеркале (тут обычно спрашивается про то, какие raid бывают) или загрузка по SAN, две сетевые карты с LACP или иной active-active агрегацией, два независимых HBA адаптера в двух PCI слотах, каждый из которых подключается в отдельную SAN фабрику. Два блока питания на раздельных линиях питания. Разумеется таких серверов должно быть тоже два. Желательно в разных, георазнесённых, ЦОДах.

В+: А что касается остальной, не серверной части?

О+: Тот же принцип - всего по два. Главное, что бы приложение, которое работает в этой инфраструктуре, тоже умело резервироваться. Т.е. работало по принципу active-active или active-standby без участия человека. Так же, надо учитывать, что одно «плечо» должно тянуть суммарную нагрузку и при этом не упираться в свой предел. Например, штатный максимум по нагрузке на CPU одного плеча - 40%. При падении старого плеча будет 80%. И останется 20% на непредвиденные ситуации, которые часто в таких случаях появляются.


В: Что нужно для кластерной виртуализации?

О: Основное требование - наличие общего хранилища. Так же желательно иметь одинаковые настройки сети на всех нодах кластера. Это нужно для горячей миграции и для миграции машин при авариях.


В: Каким образом можно подключить диски к кластеру?

О: Общее хранилище может быть реализовано различными средствами - SAN, iSCSI, Ceph.

В+: Какой способ оптимальный из предложенных?

О+: Всё зависит от инфраструктуры, целей, бюджета и количества инженеров, выделенных на поддержку. Например Ceph можно собрать из весьма разносортных нод. При минимальном бюджете это хорошее решение. Вот только затраты человеческих ресурсов на него значительно завышены. SAN - дорогое по железу и относительно простое в поддержке решение. В любом случае придётся платить. Либо за железо, либо инженерам.


В: В чём преимущество Fibre Channel перед iSCSI?

О: В SAN сетях есть гарантированная доставка, меньше накладных ресурсов, сеть разрабатывалась как транспорт для дисковых носителей. В тоже время iSCSI это надстройка над ethernet, со всеми его недостатками.

В+: Допустим у нас есть два простых FC свича и два Ethernet свича. Каждую пару свичей мы соединим двумя линками. Что с ними произойдёт?

О+: FC свичи, при наличии лицензии, объединят два линка в один с удвоенной пропускной способностью. Ethernet свичи получат так «кольцо» и перестанут работать спустя какое-то время, которое зависит от объёма траффика в данном сегменте сети.


В: Есть некая виртуальная машина на VMWare. У машины 2 гигабайта памяти. В настройках машины стоят галочки «Можно добавлять память на горячую» и «Можно добавлять процессор на горячую». Внутри машины стоят все нужные гостевые дополнения. Система стоит x64. Можно ли сделать машине 6 гигабайт памяти на горячую?

О: Нет. На горячую можно будет подойти к отметке в 4 гигабайта, но пересечь её не получится.

В+: Почему? Система, ведь, поддерживает?

О+: Основной принцип памяти - отсутствие фрагментации. Т.е. вся память должна быть непрерывна. Если система стартует с объёмом памяти менее 4 гигабайт, часть старших адресов 32-битной шины резервируется под ввод-вывод. Соответственно расширять память можно до этих пределов. Если на старте памяти было 4 гигабайта и более, под ввод-вывод резервируется блок в верхней части уже существующего 64-битного адресного пространства.


В: Есть неограниченный бюджет и некая абстрактная платформа, которая умеет много памяти. Какой теоретический максимум памяти можно установить в такой сервер если система x86 и если система x64?

О: Предел x86 - 32 бита непрерывного адресного пространства, т.е. 4 гигабайта. Однако с использованием PAE объём памяти увеличивается до 64 гигабайт, но не более 4 гигабайт на процесс, т.к. адресная шина так и сталось 32 бита. Теоретический предел существующих x64 систем - 48 бит адресного пространства.

В+: Из чего получаются эти 48 бит?

О+: Размер страницы памяти 4 килобайта или 12 бит. Нумерация страниц - 36 бит. Итого получается 256 терабайт памяти.


На этом пока всё. Остался последний большой вопрос, объёмом на отдельный пост.

GNU/Linux

1K постов15.5K подписчик

Добавить пост

Правила сообщества

Все дистрибутивы хороши.

Будьте людьми.

Вы смотрите срез комментариев. Показать все
DELETED
Автор поста оценил этот комментарий

Как вернуть себе права sudo если ты испохабил /etc/sudoers ? Ну вот прям без перезагрузки?

раскрыть ветку (9)
1
Автор поста оценил этот комментарий

Как испохабил. Удалил себя из группы? Есть ли root и пароль от него? Есть ли доступ к физический доступ к консоли?

раскрыть ветку (7)
DELETED
Автор поста оценил этот комментарий

Накосячить в синтаксисе. Сервер виртуальный и пароль от рута не назначен.  Виртуализация под Xen, модификатор загрузки выставлен не показывать меню grub

раскрыть ветку (6)
DELETED
Автор поста оценил этот комментарий
2 жоских варианта: загрузиться с диска->chroot->passwd
и загрузиться в синглмоде в зависимости от системы

для извращенцев можно попробовать повысить привилегии с помощью разных эксплойтов
раскрыть ветку (5)
DELETED
Автор поста оценил этот комментарий

Еще варианты, это ведь не так сложно :))

раскрыть ветку (4)
DELETED
Автор поста оценил этот комментарий
это вопрос?
раскрыть ветку (3)
DELETED
Автор поста оценил этот комментарий

В смысле? Ну я, вроде, в начале описал суть?

раскрыть ветку (2)
1
DELETED
Автор поста оценил этот комментарий
мы играем в отгадайку или вам помощь нужна? если помощь, то придумаем что-нибудь, а для развлечений времени нет
раскрыть ветку (1)
DELETED
Автор поста оценил этот комментарий

Это живой пример актуальной задачи, перезагрузишься - пиздец тебе. Я такую решал, это не нетплан накосячить :)

Автор поста оценил этот комментарий

Попросить у того, у кого остался туда судо.

Вы смотрите срез комментариев. Чтобы написать комментарий, перейдите к общему списку