Вступительное слово.........................................................................................................13
Предисловие.....................................................................................................................15
Для кого предназначена эта книга..................................................................................... 16
О том, чего в этой книге нет.............................................................................................. 16
Круг вопросов, который охватывает книга.......................................................................... 17
Последнее, о чем хочется сказать...................................................................................... 17
И еще одно предупреждение............................................................................................. 18
Условные обозначения, используемые в этой книге............................................................ 18
Благодарности................................................................................................................. 19
Введение в современное системное администрирование.......................................................21
Составьте карту маршрута.................................................................................................21
Поменяйте свое мышление.................................................................................................23
В чем заключается суть работы?.........................................................................................24
Виды системного администрирования.................................................................................25
Внедрение постоянного развития.......................................................................................25
Внедрение практических подходов.....................................................................................25
Внедрение совместной работы...........................................................................................26
Курс на устойчивость........................................................................................................26
Заключение......................................................................................................................27
ЧАСТЬ I. РАССУЖДЕНИЯ О СИСТЕМАХ.................................................................................29
Глава 1. Закономерности и взаимосвязи..............................................................................31
Как соединять ингредиенты...............................................................................................32
Многоуровневая архитектура............................................................................................ 32
Микросервисная архитектура.............................................................................................33
Управляемая событиями архитектура..................................................................................33
Как взаимодействуют компоненты......................................................................................34
Прикладной уровень..........................................................................................................36
Транспортный уровень.......................................................................................................36
Сетевой уровень................................................................................................................37
Канальный уровень............................................................................................................38
Физический уровень...........................................................................................................39
Заключение.......................................................................................................................39
Глава 2. Вычислительные среды..........................................................................................40
Распространенные рабочие нагрузки...................................................................................40
Выбор места размещения рабочих нагрузок........................................................................ 41
Локальные вычислительные среды......................................................................................42
Облачные вычисления........................................................................................................43
Технологии облачных вычислений.......................................................................................43
Бессерверные вычисления..................................................................................................43
Unikernels..........................................................................................................................44
Функции............................................................................................................................44
Службы приложений...........................................................................................................45
Контейнеры.......................................................................................................................45
Виртуальные машины.........................................................................................................46
Рекомендации по выбору вычислительных ресурсов............................................................ 47
Заключение...................................................................................................................... 50
Глава 3. Хранилище...........................................................................................................51
Почему стоит заботиться о хранилище?...............................................................................51
Основные характеристики................................................................................................. 53
Разновидности систем хранения данных..............................................................................55
Блочная система хранения данных......................................................................................55
Файловая система хранения данных....................................................................................55
Объектная система хранения данных...................................................................................56
Хранилище баз данных.......................................................................................................57
Соображения по выбору стратегии хранения данных............................................................59
Заранее обдумайте требования к емкости и задержке.......................................................... 61
Выбирайте разумную длительность хранения данных........................................................... 62
Уважайте озабоченность клиентов по поводу конфиденциальности....................................... 63
Защитите свои данные........................................................................................................63
Будьте готовы к необходимости восстановления после сбоев................................................ 64
Заключение....................................................................................................................... 65
Глава 4. Сеть......................................................................................................................66
Посмотрим на сети внимательнее.........................................................................................66
Основные характеристики сетей..........................................................................................67
Создание сети................................................................................................................... 68
Виртуализация.................................................................................................................. 69
Программно-определяемые сети..........................................................................................70
Сети доставки контента...................................................................................................... 71
Рекомендации по вашей сетевой стратегии...........................................................................73
Заключение....................................................................................................................... 74
ЧАСТЬ II. МЕТОДЫ..............................................................................................................75
Глава 5. Набор инструментов сисадмина...............................................................................77
Что представляет собой ваш цифровой инструментарий?...................................................... 77
Компоненты инструментария.............................................................................................. 78
Выбор редактора............................................................................................................... 79
Встроенный статический анализ кода...................................................................................79
Автозавершение кода......................................................................................................... 80
Установление и утверждение правил, которые должны соблюдаться
командой.......................................................................................................................... 80
Рабочий процесс, интегрированный с Git..............................................................................80
Выбор языков программирования........................................................................................80
Фреймворки и библиотеки..................................................................................................83
Другие полезные утилиты...................................................................................................83
Заключение...................................................................................................................... 86
Глава 6. Контроль версий...................................................................................................87
Что такое контроль версий?................................................................................................87
Преимущества контроля версий..........................................................................................89
Организация инфраструктурных проектов...........................................................................90
Заключение...................................................................................................................... 91
Глава 7. Тестирование........................................................................................................93
Вы уже тестируете.............................................................................................................93
Общие виды тестирования..................................................................................................94
Линтинг............................................................................................................................94
Модульные тесты...............................................................................................................96
Интеграционные тесты........................................................................................................97
Сквозные тесты..................................................................................................................97
Четкая стратегия тестирования............................................................................................98
Совершенствуем тесты, извлекая уроки из их падения......................................................... 101
Дальнейшие шаги.............................................................................................................. 102
Заключение...................................................................................................................... 103
Глава 8. Безопасность инфраструктуры............................................................................... 104
Что такое безопасность инфраструктуры?............................................................................ 104
Распределяйте обязанности по обеспечению безопасности................................................... 105
Оценивайте безопасность с точки зрения злоумышленника................................................... 106
Проектирование с учетом обеспечения безопасности............................................................ 109
Классификация обнаруженных проблем.............................................................................. 110
Заключение...................................................................................................................... 112
Глава 9. Документация.......................................................................................................113
Узнайте свою аудиторию.................................................................................................... 113
Варианты представления документации.............................................................................. 115
Методы организации информации...................................................................................... 116
Организация тем............................................................................................................... 116
Организация информации на сайте..................................................................................... 117
Рекомендации по созданию качественной документации....................................................... 118
Заключение....................................................................................................................... 119
Глава 10. Презентации........................................................................................................120
Узнайте свою аудиторию.................................................................................................... 120
Выберите канал общения................................................................................................... 122
Выберите подходящий тип истории..................................................................................... 124
Сторителлинг на практике...................................................................................................125
Случай № 1. Одна диаграмма вместо тысячи слов................................................................ 125
Случай № 2. Одна и та же история для разной аудитории..................................................... 126
Информационная панель для команды................................................................................ 128
Информационная панель менеджера.................................................................................. 129
Информационная панель клиента...................................................................................... 130
Основные выводы............................................................................................................. 131
Варианты графического представления информации............................................................131
Визуальные подсказки...................................................................................................... 131
Типы диаграмм................................................................................................................. 132
Таблицы данных............................................................................................................... 132
Столбчатые диаграммы..................................................................................................... 134
Линейные диаграммы (графики)........................................................................................ 134
Диаграмма с областями..................................................................................................... 135
Тепловые карты................................................................................................................ 135
Flame-графики................................................................................................................. 135
Древовидные карты.......................................................................................................... 135
Рекомендуемые методы визуализации................................................................................ 136
Заключение.......................................................................................................................137
ЧАСТЬ III. СБОРКА СИСТЕМЫ..............................................................................................139
Глава 11. Разработка сценариев инфраструктуры.................................................................141
Зачем создавать сценарии инфраструктуры?....................................................................... 141
Три подхода к моделированию инфраструктуры.................................................................. 143
Код для создания образов машин....................................................................................... 145
Код для предоставления инфраструктуры........................................................................... 146
Код для настройки инфраструктуры................................................................................... 148
Начало работы..................................................................................................................149
Заключение......................................................................................................................150
Глава 12. Управление инфраструктурой..............................................................................151
Инфраструктура как код................................................................................................... 151
Инфраструктура как данные.............................................................................................. 156
Приступаем к управлению инфраструктурой....................................................................... 157
Линтинг............................................................................................................................160
Написание модульных тестов............................................................................................. 160
Написание интеграционных тестов..................................................................................... 161
Написание сквозных тестов............................................................................................... 161
Заключение.......................................................................................................................162
Глава 13. Обеспечение безопасности инфраструктуры..........................................................163
Оценка векторов атак........................................................................................................ 163
Управление идентификацией и доступом............................................................................. 165
Как следует управлять доступом к системе?......................................................................... 165
Кто должен иметь доступ к вашей системе?......................................................................... 167
Управление секретными данными....................................................................................... 168
Менеджеры паролей и программное обеспечение для управления секретными
данными............................................................................................................................169
Защита секретов и наблюдение за их использованием...........................................................170
Обеспечение безопасности вычислительной среды...............................................................171
Обеспечение безопасности вашей сети............................................................................... 173
Рекомендации по безопасности для управления инфраструктурой.........................................175
Заключение.......................................................................................................................176
ЧАСТЬ ГѴ. НАБЛЮДЕНИЕ ЗА СИСТЕМОЙ.............................................................................. 179
Глава 14. Теоретические аспекты мониторинга.................................................................... 181
Зачем нужен мониторинг?.................................................................................................. 181
Чем отличаются мониторинг и наблюдаемость?.................................................................... 183
Основные элементы мониторинга........................................................................................ 184
События............................................................................................................................ 184
Мониторы.......................................................................................................................... 184
Данные: метрики, журналы и трассировка........................................................................... 185
Мониторинг первого уровня................................................................................................ 185
Обнаружение события........................................................................................................ 186
Сбор данных...................................................................................................................... 186
Сокращение объема данных................................................................................................ 186
Анализ данных................................................................................................................... 187
Представление данных....................................................................................................... 188
Мониторинг второго уровня................................................................................................ 188
Заключение....................................................................................................................... 189
Глава 15. Мониторинг вычислительной инфраструктуры
и программного обеспечения на практике............................................................................ 190
Определите желаемые результаты...................................................................................... 190
За какими параметрами следует наблюдать?........................................................................ 192
Делайте то, что можете сейчас............................................................................................ 192
Мониторы, которые имеют значение.................................................................................... 193
План проекта по мониторингу............................................................................................. 194
Какие оповещения следует рассылать?................................................................................ 197
Изучение платформ мониторинга........................................................................................ 198
Выбор инструмента или платформы для мониторинга............................................................200
Заключение.......................................................................................................................202
Глава 16. Управление данными мониторинга........................................................................203
Что такое данные мониторинга?..........................................................................................203
Метрики............................................................................................................................204
Журналы...........................................................................................................................204
Структурированные журналы..............................................................................................205
Трассировка......................................................................................................................206
Распределенная трассировка............................................................................................. 206
Выберите типы данных.......................................................................................................207
Сохранение данных журналов.............................................................................................208
Анализ данных журналов....................................................................................................208
Мониторинг данных в масштабе..........................................................................................209
Заключение.......................................................................................................................210
Глава 17. Мониторинг вашей работы....................................................................................211
Зачем вести мониторинг своей работы?................................................................................211
Управляйте своей работой по методу канбан........................................................................213
Выбор платформы..............................................................................................................216
Поиск интересующей информации.......................................................................................217
Заключение.......................................................................................................................219
ЧАСТЬ V. МАСШТАБИРОВАНИЕ СИСТЕМЫ............................................................................. 221
Глава 18. Управление мощностями...................................................................................... 223
Что такое мощности?..........................................................................................................223
Модель управления мощностями..........................................................................................224
Закупка ресурсов...............................................................................................................225
Обоснование......................................................................................................................226
Управление........................................................................................................................227
Мониторинг........................................................................................................................232
Схема планирования мощностей..........................................................................................232
Требуется ли планирование мощностей при использовании облачных вычислений?............... 234
Заключение...................................................................................................................... 235
Глава 19. Создание надежной дежурной службы................................................................. 236
Что представляют собой дежурства.....................................................................................236
Человеческие факторы процессов при дежурстве.................................................................237
Проверьте свою политику дежурств.....................................................................................238
Подготовка к дежурству......................................................................................................239
За неделю до дежурства.....................................................................................................241
Ночь накануне дежурства...................................................................................................242
Ваша дежурная смена.........................................................................................................243
Сдача смены......................................................................................................................244
День после дежурства........................................................................................................245
Мониторинг процесса дежурства.........................................................................................247
Заключение...................................................................................................................... 250
Глава 20. Управление инцидентами.....................................................................................251
Что такое инцидент?......................................................................................................... 251
Что такое управление инцидентами?...................................................................................252
Подготовка к инцидентам и план действий..........................................................................254
Настройка и документирование коммуникационных каналов................................................ 254
Обучение эффективному общению......................................................................................254
Создание шаблонов........................................................................................................... 255
Ведение документации.......................................................................................................256
Документирование рисков...................................................................................................256
Моделирование аварийных ситуаций...................................................................................256
Изучение имеющихся инструментов.....................................................................................256
Четкое определение должностей и обязанностей................................................................. 257
Представление о степени серьезности и протоколах эскалации.............................................258
Реагирование на инциденты...............................................................................................259
Извлечение уроков из инцидента........................................................................................260
Как глубоко следует расследовать инцидент?..................................................................... 260
Помощь в обнаружении......................................................................................................262
Эффективное документирование инцидентов.......................................................................262
Распространение информации.............................................................................................263
Дальнейшие шаги.............................................................................................................. 264
Заключение.......................................................................................................................264
Глава 21. Руководство устойчивыми командами....................................................................266
Коллективное руководство................................................................................................. 266
Внедрение командного подхода.......................................................................................... 267
Создание устойчивых команд дежурных специалистов..........................................................268
Обновление процесса дежурства.........................................................................................269
Мониторинг работы команды...............................................................................................271
Зачем нужен мониторинг команды?......................................................................................271
За какими параметрами следует наблюдать?........................................................................272
Каковы задачи команды?....................................................................................................274
Как команда определяет для себя задачу?...........................................................................274
Как команда определяет для себя проект?...........................................................................275
Что представляет собой каталог услуг, которые предлагает ваша команда?........................... 275
Изучите работу..................................................................................................................275
Измерение влияния на команду...........................................................................................276
Поддержка инфраструктуры команды с помощью документации............................................277
Поддерживайте культуру обучения.....................................................................................278
Адаптация к вызовам.........................................................................................................279
Заключение......................................................................................................................281
Заключение......................................................................................................................283
Приложение А. Протоколы на практике...............................................................................285
Протокол HTTP...................................................................................................................285
QUIC.................................................................................................................................288
Система доменных имен.....................................................................................................289
Приложение Б. Определение причин сбоя тестов.................................................................293
Сбой теста, вариант № 1: проблемы, связанные с инфраструктурой.....................................293
Сбой теста, вариант № 2: ошибочная логика теста..............................................................294
Сбой теста, вариант № 3: изменение предположений..........................................................295
Сбой теста, вариант № 4: ненадежные тесты......................................................................295
Сбой теста, вариант № 5: дефекты кода.............................................................................297
Предметный указатель......................................................................................................299
Об авторе.........................................................................................................................303
Об обложке......................................................................................................................304
Книга посвящена современными практиками и технологиями системного администрирования. Приведены основные сведения о системах, архитектурах, вычислительных средах, хра-нилищах, сетях. Рассмотрены методы и наборы инструментов сисадмина, вопросы контроля версий, тестирования, документирования и представления информации. Описана сборка сис-темы, разработка сценариев, управление инфраструктурой и обеспечение ее безопасности.
Рассмотрен мониторинг системы, программного обеспечения и работы сисадмина. Особое внимание уделено масштабированию системы, управлению мощностями, созданию надежной дежурной службы, управлению инцидентами и планированию системы предупреждений.
Для системных администраторов, инженеров службы поддержки и других ИТ-специалистов
Основные принципы работы систем и взаимодействия друг с другом отдельных компонентов
Практические методы повышения надежности и устойчивости систем и снижения нагрузки на системного администратора при использовании новых технологий
Приемы сборки систем, автоматизации работы и управления системной инфраструктурой, снижения затрат на денежные и людские ресурсы при техническом обслуживании
Стратегии мониторинга, современные инструменты мониторинга и фреймворки, управление данными наблюдений
Масштабирование системы и повышение ее устойчивости, планирование системы предупреждений и реагирования на инциденты
Как поддерживать надежную и устойчивую работу систем по мере развития технологий, появления новых инструментов и сервисов?
В этом практическом руководстве Дженнифер Дэвис показывает современную инфраструктуру, вычислительные среды, методы и технологии, давая путеводную нить системным администраторам и разработчикам, отвечающим за надежное функционирование вычислительных систем.
Книга посвящена современными практиками и технологиями системного администрирования. Приведены основные сведения о системах, архитектурах, вычислительных средах, хранилищах, сетях. Рассмотрены методы и наборы инструментов сисадмина, вопросы контроля версий, тестирования, документирования и представления информации. Описана сборка системы, разработка сценариев, управление инфраструктурой и обеспечение ее безопасности.
Рассмотрен мониторинг системы, программного обеспечения и работы сисадмина. Особое внимание уделено масштабированию системы, управлению мощностями и созданию надежной дежурной службы.