Добавил:
ivanov666
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:Системное и сетевое администрирование. Учебное пособие
.pdf
К основным моментам работы с внешними устройствами в Linux
относятся следующие.
1. Обнаружение устройств. Linux обладает механизмом автомати-
ческого обнаружения устройств (горячее подключение), который позволяет подключать и отключать устройства без перезагрузки системы.
2. Файлы устройств. В каталоге /dev создаются специальные фай-
лы, представляющие подключенные устройства. Например, последовательные порты могут называться /dev/ttyS0, /dev/ttyS1, …, а USBустройства
– /dev/ttyUSB0, /dev/ttyUSB1 и т. д.
3. Монтирование. Для того чтобы получить доступ к данным на
внешнем устройстве, его необходимо смонтировать. В большинстве
случаев монтирование происходит автоматически при подключении
устройства. Для ручного монтирования используется команда mount.
Файл /etc/fstab содержит информацию об устройствах, которые должны
монтироваться автоматически при загрузке системы.
4. Инструменты для работы с устройствами (lsusb –
отображает
список подключенных USB-устройств; fdisk -l – отображает информацию о разделах на дисках; mount – монтирует устройства; umount – демонтирует устройства).
2.13. РЕЗЕРВНОЕ КОПИРОВАНИЕ
Безопасность и надежность сервера вплотную связана с процедурой регулярного резервного копирования. Иногда могут возникать различные повреждения. Они могут быть следствием атак, ошибок аппаратного обеспечения, ошибок сотрудников, перепадов напряжения и
др.
Самый надежный метод резервного копирования – это запись данных в место, независимое от Linux-сервера. Например, через сеть, на
стример, сменный носитель, записываемый CD-ROM и др.
Основная идея резервного копирования – это создание копий всего,
что установлено в системе, но с некоторыми исключениями. Основными исключениями, не включаемыми в резервные копии, являются сле
-
дующие.
1. Файловая система /proc, так как она содержит только данные, ко-
торые ядро генерирует автоматически, и нет никакого смысла сохранять их.
2. Файловая система /mnt, потому что в нее монтируются сменные
носители, подобные CD-ROM, гибким дискам и др.
41

3. Каталоги и носители, содержащие резервные копии, такие как
уль
стримеры, CD-ROM, смонтированная файловая система NFS, удаленные/локальные каталоги и прочие виды носителей.
4. Программное обеспечение, легко устанавливаемое повторно, хо-
тя оно может иметь конфигурационные файлы, которые необходимо
копировать, чтобы не выполнять работы по их настройке позже.
Для резервного копирования данных в качестве
методологической
основы целесообразно использовать концепцию «3-2-1», которая считается «Золотым стандартом резервного копирования». Основные компоненты этой концепции приведены в табл. 2.3.
Таблица 2.3
Характеристика концепции резервного копирования 3-2-1
Этап резервного копирования Рез
Создание трех копий данных
Основная копия – это рабочая система, которая используется ежедневно. Две дополнительные резервные копии позволяют
восстановить систему в случае повреждения или потери основной копии
Применение двух разных типов носителей
Использование различных типов носителей
для хранения минимизирует риск одновременного выхода из строя всех резервных
копий. Комбинация носителей может содержать:
1) локальные жесткие диски (быстрый доступ и восстановление данных);
2) сетевые хранилища (NAS) (централизованное управление и доступность в локальной сети);
3) съемные носители (внешние HDD/SSD и
оптические диски обеспечивают физическую изоляцию и мобильность);
4) облачные хранилища (высокая доступность и масштабируемость, защита от локальных катастроф)
тат выполнения этапа
1. Уст ой ч ив о ст ь к сбоям и потерям данных.
2. Возможность выбора актуальной копии при восстановлении.
3. Защита от ошибок в процессе
резервирования – например, если
одна из
копий окажется повре-
жденной
1. Снижение риска потери данных из-за специфических проблем конкретного носителя.
2. Повышение гибкости и доступности резервных копий в различных сценариях восстановления
42

Окончание табл. 2.3
Этап резервного копирования Результат выполнения этапа
Хранение одной копии вне офиса (офсайт)
Хранение одной резервной копии в удаленном месте обеспечивает защиту от локальных катастрофических событий, таких как
пожары, наводнения, кражи или другие
происшествия, способные уничтожить все
локальные копии данных. К основным вариантам офсайт-хранения относятся:
1) облачные сервисы (Amazon S3, Google
Cloud Storage, Backblaze B2 и др.);
2) удаленные физические локации (дата-
центры, филиалы компании, банковские
сейфы);
3) ленточные хранилища вне офиса (используют организации с высокими требованиями к долговременному хранению архивных данных)
1. Высокий уровень безопасности и надежности хранения.
2. Доступность данных даже при
полной потере локальной инфраструктуры.
3. Возможность географического
распределения данных для глобальных компаний
В Linux применяется множество методов для выполнения резервного копирования, среди них наиболее распространенными являются
такие, как dump, tar, cpio и dd. Доступны также утилиты, базирующиеся на текстовых файлах, например Amanda, и коммерческие пакеты для
резервного копирования, например BRU. Причем процедуры выполнения резервного копирования и восстановления данных будут отличаться в зависимости от выбранного решения.
В основе алгоритма выполнения резервного копирования данных
лежат ответы на следующие вопросы.
1. Что копировать?
2. Куда копировать?
3. Как копировать?
4. Когда копировать?
5. Сколько хранить копии?
6. Как осуществляется восстановление данных?
Ответом на первый вопрос является следующий перечень элементов, необходимых для выполнения резервного копирования.
1. Настройки системы. В
Linux все основные настройки хранятся
в директории /etc. Как правило, эта папка занимает относительно
43

небольшой объем и ее можно поместить в архив полностью при помощи команды
sudo tar -czf etc.tar.gz /etc/
Эта консольная команда создаст сжатый архив etc.tar.gz в текущей
директории. Можно также сохранить образ всей файловой системы при
помощи команды dump.
2. Данные пользователей. По умолчанию все документы и персональные настройки находятся в папке /home/имя_пользователя/. В основном
директории /home/ важны для персональных компьютеров.
Если сохранить эту папку, то даже после миграции на другой дистрибутив можно продолжить работу. Если необходимо сохранить резервную копию этой папки целиком, то надо исключить из архива директории.cache/, содержащие временные файлы, что позволит сэкономить
место.
3. Базы данных. Например, если сайт хранит данные
в реляционной
базе данных MySQL или PostgreSQL, то выгрузка резервной копии выполняется при помощи следующих команд:
sudo mysqldump опции имя_базы_данных > имя_файла.sql – для
MySQL;
sudo pg_dump опции имя_базы_данных > имя_файла.sql – для
PostgreSQL.
Эти команды создают так называемую логическую резервную копию указанной базы данных. Можно также создать физический архив
файлов, содержащих базу данных, при помощи команды tar.
4. Файлы посетителей и другие данные сайта. Не всё можно поместить в базу данных. Например, аватарки пользователей или фотографии товаров часто хранятся в виде файлов на диске. В таком случае
важно также добавить директории с этими файлами в резервную
копию.
Кроме того,
при выполнении резервного копирования необходимо
ограничить права доступа к архиву.
Местом для резервного копирования и хранения рабочей копии
может стать жесткий диск или массив дисков (Redundant Array of
Independent Disks, RAID). Однако в случае недоступности сервера или
выхода из строя дисков данные все же окажутся потерянными. Кроме
того, архивы могут занимать значительный объем дискового пространства,
поэтому лучше всего производить резервное копирование на уда-
44

ленный сервер или в облако, желательно находящееся в другом географическом местоположении.
Процедура резервного копирования выполняется в Linux при помощи специального набора инструментов и средств автоматизации.
1. Rsync (Remote Sync) – это универсальная консольная утилита,
позволяющая быстро и эффективно синхронизировать данные между
удаленными компьютерами. Высокая скорость и низкий межсетевой
трафик достигаются за счет передачи
только измененных блоков между
двумя наборами файлов и использования сжатия, а безопасность обеспечивается благодаря применению защищенных сетевых протоколов.
Базовый синтаксис команды при выгрузке данных на удаленный компьютер может выглядеть так:
sudo rsync -a /локальная_директория логин@ip_адрес:/удаленная_
директория
2. Rclone (rsync for cloud storage, rsync для облаков) – другая утили-
та для резервного копирования в облачные хранилища
. Работает
с Google Drive, Yandex Disk, Mail.ru Cloud, Dropbox, Microsoft
OneDrive, Amazon S3, Cloudflare R2, DigitalOcean Spaces и др. Команда
для синхронизации данных между локальной директорией и облачным
хранилищем выглядит так:
rclone sync /локальная_директория имя_хранилища:имя_ контейнера
3. Распределенные системы контроля версий (Version Control
System, VCS), например Git.
4. Репликация данных. Применяется в основном на высоконагру-
женных системах для немедленного согласования данных прямо во
время их записи.
5. Приложения
с графическими интерфейсами (GUI). В качестве
примера можно привести grsync.
Вопрос частоты выполнения резервного копирования связан с числом транзакций, выполняемых сервером в единицу времени, и с критичностью потери сохраняемых данных. При этом максимальное время
недоступности данных складывается из интервала резервного копирования (Recovery Point Objective) и времени восстановления данных
(Recovery Time Objective). Настроить автоматическую выгрузку дан
-
ных по расписанию можно при помощи скрипта backup.sh.
45

Период хранения резервных копий также зависит от интенсивности
записи данных и минимального интервала резервного копирования.
Например, если настроить выгрузку данных раз в сутки, то надо будет
хранить по одной копии за последние 7 дней и по одной – за каждую
неделю последнего месяца. Итого получится 7 + 4 = 11 копий. Поскольку архивы могут занимать значительный объем
дискового пространства,
то для полноценного резервного копирования может потребоваться дополнительное место. Ус тар евш ие данные следует удалять либо по расписанию, либо сразу после сохранения очередной копии, чтобы освободить место на диске. Этот процесс называется «ротацией».
Восстановление данных осуществляется при помощи следующих
команд:
sudo tar -xzf etc.tar.gz – при распаковке файлов в директорию /etc;
sudo mysql опции имя_базы_данных < имя_файла.sql – для вос-
становления базы данных MySQL;
sudo psql опции имя_базы_данных < имя_файла.sql – для
PostgreSQL.
При восстановлении данных с удаленного сервера рекомендуется
использовать безопасный протокол SSH с авторизацией по ключу.
2.14. УПРАВЛЕНИЕ ИТ-ИНФРАСТРУКТУРОЙ
ИТ-инфраструктура обеспечивает связь между всеми процессами
и подразделениями компании, поэтому грамотное
управление этой си-
стемой – залог стабильной работы и конкурентоспособности бизнеса.
Управление ИТ-инфраструктурой – это комплексный процесс,
охватывающий все ИТ-компоненты. Нужно обеспечивать их слаженную работу, чтобы вся система функционировала эффективно: не приводила к лишним тратам и перебоям в работе, позволяла отделам
и подразделениям взаимодействовать. К основным компонентам
управления ИТ
-инфраструктурой относятся следующие блоки: программное обеспечение (системы и приложения, используемые в организации, например операционные системы, базы данных); аппаратное
обеспечение (физические устройства, которые поддерживают работу
систем, например серверы, компьютеры, принтеры и прочее оборудование); сетевая инфраструктура (коммуникации, линии связи, обеспечивающие взаимодействие между компонентами).
46

В управлении ИТ-инфраструктурой существует множество методологий, но наиболее распространенными являются три подхода, каждый
из которых предлагает свой взгляд на организацию технологических
процессов компании. Выделяют следующие ключевые подходы
к управлению ИТ-инфраструктурой.
1. Функциональный подход. При этом подходе осуществляется
управление каждым элементом инфраструктуры по отдельности,
и у каждой зоны есть
ответственные: кто-то из сотрудников ИТ-отдела
следит за сетями, кто-то отвечает за аппаратную составляющую, а ктото контролирует лицензии на программное обеспечение. Такая модель
напоминает классическую организационную структуру с четким распределением ролей и зон ответственности, где каждый специалист является экспертом в своей узкой области. Главный плюс
такого подхода –
сразу понятно, к кому обратиться в случае проблемы. Если сломался
сервер, можно обратиться к сотруднику, который отвечает за сервера
и мониторинг их работоспособности. Минус заключается в потенциальной разобщенности специалистов: узкая специализация может приводить к торможению процессов и снижению общей эффективности
работы ИТ-подразделения.
2. Сервисный подход. Согласно
этому подходу инфраструктуру
воспринимают через призму услуг – бизнес интересует не отдельное
оборудование или программа, а то, как они вместе обеспечивают
нужный сервис. Подход ориентирован на конечного пользователя
и результат, а не на технические детали, а значит, каждый элемент инфраструктуры оценивается с точки зрения его вклада в общую производительность
и качество предоставляемых услуг. Когда компания использует этот подход, сотруднику не нужно думать, что сломалось:
если не работает, например, почта – он просто создает заявку на портале, а дальше ИТ-отдел разбирается в причинах и решает проблему,
чтобы возобновить предоставление услуги. Так пользователь может
абстрагироваться от технических нюансов и сосредоточиться
на быстром решении возникающих проблем без погружения в технические
детали.
3. Процессный подход. В этом случае управление инфраструктурой
рассматривается через бизнес-процессы, которые связаны не только
с техникой, но и с людьми, вовлеченными в процессы. Этот подход
предполагает детальное описание последовательности действий, взаимосвязей между участниками и регламентацию каждого
шага. Про-
47

цессный подход позволяет создать максимально прозрачную систему
управления, где каждый сотрудник понимает свою роль и последовательность действий в различных сценариях. Часто этот подход опирается на такие стандарты, как ITIL, в которых описаны процессы управления инцидентами, проблемами, изменениями и др. Стандартизация
процессов помогает не только оптимизировать работу ИТ-подразделения
, но и снизить риски возникновения сбоев, создать единые алгоритмы реагирования на нештатные ситуации и обеспечить преемственность знаний внутри команды.
Перечисленные подходы формируют комплексное понимание того,
как должно быть организовано управление ИТ в современной организации. От выбора подхода зависит не только техническая эффективность ИТ-подразделения, но и
скорость реакции на изменения бизнеспроцессов, уровень удовлетворенности сотрудников и конечных пользователей.
Помимо указанных подходов современное системное администрирование использует проверенные временем методики из области разработки программного обеспечения и применяет их для повышения качества и наглядности управления ИТ-инфраструктурой. Выделяют два
основных подхода: инфраструктура как код и инфраструктура
как данные. Эти подходы целесообразно применять для контроля версий, проверки кода, автоматизированного тестирования и автоматизации процессов развертывания программного обеспечения в организации [3].
Инфраструктура как код (Infrastructure as Code, IaC) – это подход
к управлению ИТ-инфраструктурой, при котором настройка и изменения инфраструктуры описываются в виде кода, а не через ручное конфигурирование.
Этот код управляется и развертывается с помощью
автоматизированных инструментов – аналогично тому, как разрабатывается различное программное обеспечение. Основные принципы IaC
заключаются в следующем.
1. Автоматизация. Вместо ручной настройки IaC использует код
для автоматического создания, настройки и развертывания ресурсов.
2. Декларативный подход. IaC описывает желаемое состояние ин-
фраструктуры, а инструменты автоматизации сами заботятся о дости
-
жении этого состояния.
3. Управление версиями. Код инфраструктуры хранится в системе
контроля версий, что позволяет отслеживать изменения, откатываться
к предыдущим версиям и совместно работать над инфраструктурой.
48

4. Тестирование. Инфраструктурный код можно тестировать так же,
как и обычный программный код, что позволяет выявлять проблемы
до развертывания.
5. Повторяемость. Благодаря автоматизации и управлению версиями IaC обеспечивает возможность повторного развертывания инфраструктуры в разных средах, например в тестовой, в staging и в pro-
duction.
К преимуществам подхода IaC относятся следующие.
1. Повышение скорости
развертывания. Автоматизация позволяет
значительно сократить время, необходимое для развертывания и обновления инфраструктуры.
2. Снижение рисков. Благодаря тестированию и управлению версиями IaC позволяет снизить вероятность ошибок при развертывании
и изменениях инфраструктуры.
3. Улучшение согласованности. IaC обеспечивает единообразие
инфраструктуры в разных средах, что упрощает поддержку и устранение проблем.
4. Сокращение затрат. Автоматизация
и снижение рисков позволя-
ют сократить затраты на управление инфраструктурой.
Инфраструктура как данные (Infrastructure as Data, IaD) – это развитие идеи Infrastructure as Code. Суть подхода заключается в том, чтобы
описывать инфраструктуру с помощью данных (YAML, JSON), переменных, а не менять код конфигурации вручную при малейшем изменении окружающей среды. Администратор лишь меняет параметр
(переменную), а все необходимые
действия выполняет заранее напи-
санный код или сервис. Это упрощает управление и снижает количество изменений в логике.
В отличие от IaC, где изменения чаще всего касаются самого кода,
IaD предлагает отделить данные от логики. Код остается стабильным
и универсальным, а различия между окружениями, настройками
и ресурсами описываются только в конфигурационных файлах
. Этот
подход может помочь заменить или расширить функционал модулей,
заменить сторонние утилиты.
49

3. СЕТЕВОЕ АДМИНИСТРИРОВАНИЕ
3.1. СЕТЕВОЕ ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ
Сетевое администрирование включает в себя обеспечение бесперебойной и надежной работы сети за счет реализации таких мероприятий, как наладка и развитие сети, устранение неисправностей, техническая поддержка пользователей, обеспечение безопасности сети,
модернизация компьютерной техники и установка необходимых программ.
Основными компонентами сети являются конечные устройства
(компьютеры
Wi-Fi), сетевые устройства (маршрутизаторы, коммутаторы, точки до-
ступа) и сетевое программное обеспечение (протоколы, операционные
системы).
Сетевое программное обеспечение – это программное обеспечение,
позволяющее организовать работу пользователя в сети и включающее
в себя общее, системное и специальное программное обеспечение.
Общее сетевое программное обеспечение: браузеры, HTML-редакторы,
графические средства
вые программы. Системное программное обеспечение: сетевые операционные системы, сервисные программы и системы технического обслуживания. Сервисные программы представляют собой программное
обеспечение, позволяющее расширить возможности операционной системы, предоставляя пользователю и его программам набор дополнительных услуг. Системы технического обслуживания – это программное обеспечение, которое
оборудования и поиск неисправностей в сети [3, 5].
Специальное программное обеспечение представлено прикладными программными средствами – функциональными и интегрированными пакетами прикладных программ, библиотеками, а также при-
, серверы, мобильные устройства), сетевая среда (кабели,
, машинные переводчики и антивирусные сете-
облегчает диагностику, тестирование
50
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]
