8 (905) 200-03-37 Владивосток
с 09:00 до 19:00
CHN - 1.14 руб. Сайт - 21.13 руб.

[Dangdang.com подлинная книга] Kubernetes в действии китайская версия

Цена: 1 720руб.    (¥81.4)
Артикул: 586222363102

Вес товара: ~0.7 кг. Указан усредненный вес, который может отличаться от фактического. Не включен в цену, оплачивается при получении.

Этот товар на Таобао Описание товара
Продавец:当当网官方旗舰店
Рейтинг:
Всего отзывов:0
Положительных:0
Добавить в корзину
Другие товары этого продавца
¥29.9632руб.
¥31.75671руб.
¥25.8546руб.
¥39825руб.

Рекомендуемые читатели: Эта книга подойдет системным архитекторам, разработчикам и тестировщикам, а также персоналу по эксплуатации и техническому обслуживанию.Он также имеет справочную ценность для корпоративных ИТ-директоров, системных администраторов, администраторов платформ, персонала SRE и т. д. Его, конечно, также можно использовать в качестве профессионального учебника по облачным вычислениям и контейнерным технологиям в колледжах и университетах.

Система оркестровки контейнеров Kubernetes безопасно управляет структурой и процессами распределенных приложений и организует контейнеры и сервисы с чрезвычайно высокой эффективностью.Kubernetes выступает в качестве операционной системы для кластера, что устраняет необходимость учитывать базовую сетевую и серверную инфраструктуру при проектировании.Эта книга научит вас использовать Kubernetes для развертывания распределенных приложений на основе контейнеров. Прежде чем создавать кластер Kubernetes, вы начнете с обзора Docker и Kubernetes.Вы будете постепенно расширять исходное приложение, добавлять функции и углублять понимание архитектуры и операций Kubernetes.Изучая это подробное руководство, вы также изучите более сложные темы, такие как мониторинг, настройка и масштабирование. В эту книгу входят:

◎Внутренние принципы Kubernetes

◎Развертывание контейнеров в кластерах

◎Обеспечить безопасность кластера

◎Обновляйте приложения без простоев

Основная информация
наименование товара:Kubernetes in Action китайская версияформат:128
Автор:(США) Марко Лукса (Марко&миддот; Луша)Цены:148.00
Номер ISBN:9787121349959Опубликованная дата:2018-12-01
Издательство:Электронная промышленная прессаВремя печати:2018-12-01
Версия:1Индийский:1

1 Введение в Kubernetes 1

1.1 Требования к системе Kubernetes 2

1.1.1 От монолитного приложения к микросервисам 2

1.1.2 Обеспечение единообразной среды для приложений 5

1.1.3 Стоимость к непрерывной доставке: DevOps и без эксплуатационного измерения 6

1.2 Введение в контейнерную технологию 7

1.2.1 Что такое контейнер 7

1.2.2 Знакомство с контейнерной платформой Docker 11

1.2.3 rkt—&-Альтернатива Docker 14

1.3 Введение в Kubernetes 15

1.3.1 Первоначальное намерение 15

1.3.2 Понимание Kubernetes простым и легким способом 15

1.3.3 Архитектура кластера Kubernetes 17

1.3.4 Запуск приложений в Kubernetes 18

1.3.5 Преимущества использования Kubernetes 20

1.4 Резюме этой главы 22

2. Начало работы с Kubernetes и Docker 23

2.1 Создание, запуск и обмен образами контейнеров 23

2.1.1 Установите Docker и запустите контейнер Hello World 24

2.1.2 Создание простого приложения Node.js 26

2.1.3 Создание Dockerfile для образа 27

2.1.4 Создание образов контейнеров 27

2.1.5 Запуск образов контейнеров 30

2.1.6 Исследование внутренней части работающего контейнера 31

2.1.7 Остановка и удаление контейнеров 32

2.1.8 Отправка изображений в хранилище изображений 33

2.2 Настройка кластера Kubernetes 34

2.2.1 Использование Minikube для запуска локального одноузлового кластера Kubernetes 34

2.2.2 Использование Google Kubernetes Engine для размещения кластеров Kubernetes 36

2.2.3 Настройка псевдонимов и дополнения командной строки для kubectl 39

2.3 Запуск приложения в Kubernetes 40

2.3.1 Deploy Node.js Application 40

2.3.2 Доступ к веб-приложениям 43

2.3.3 Логическая часть системы 45

2.3.4 Приложение горизонтального масштабирования 46

2.3.5 Проверьте, на каком узле работает приложение 49

2.3.6 Знакомство с панелью управления Kubernetes 50

2.4 Сводка этой главы 51

Модуль 3: контейнер, работающий в Kubernetes 53.

3.1 Знакомство с модулем 53

3.1.1 Зачем нужен модуль 54

3.1.2 Понимание модуля 55

3.1.3 Правильное управление контейнерами через модуль 56

3.2 Создайте модуль 58 с файлом описания YAML или JSON.

3.2.1 Проверка файла описания YAML существующего модуля 59

3.2.2 Создайте простой файл описания YAML 61 для POD

3.2.3 Использование kubectl create для создания модуля 63

3.2.4 Просмотр журналов приложений 64

3.2.5 Отправить запрос на модуль 65

3.3 Использование меток для организации модулей 66

3.3.1 Знакомство с тегами 66

3.3.2 Указание меток при создании модулей 67

3.3.3 Изменение метки существующего модуля 68

3.4 Перечисление подмножеств модулей с помощью селекторов меток 69

3.4.1 Используйте Selectioner Tag, чтобы перечислить POD 69

3.4.2 Использование нескольких условий в селекторах тегов 71

3.5. Используйте метки и селекторы для ограничения планирования модулей 71

3.5.1 Использование меток для классификации рабочих узлов 72

3.5.2 Планирование модулей для определенных узлов 72

3.5.3 Планирование конкретного узла 73

3.6 Аннотации pod73

3.6.1 Поиск аннотаций к объектам 74

3.6.2 Добавление и изменение аннотаций 74

3.7 Использование пространств имен для группировки ресурсов 75

3.7.1 Понимание необходимости пространств имен 75

3.7.2 Откройте для себя другие пространства имен и их модули 75

3.7.3 Создание пространства имен 76

3.7.4 Управление объектами в других пространствах имен 77

3.7.5 Изоляция, обеспечиваемая пространствами имен 78

3.8 Остановка и снятие капсулы 78

3.8.1 Удаление модуля 78 по имени

3.8.2 Используйте селектор тегов для удаления POD 79

3.8.3 Удалить модуль 80, удалив все пространство имен

3.8.4 Удалите все модули в пространстве имен, но сохраните пространство имен 80.

3.8.5 Удалить (почти) все ресурсы в пространстве имен 80

3.9 Эта глава - резюме 81

4. Механизм реплик и другие контроллеры: развертывание размещенных модулей 83

4.1 Поддержание здоровья капсулы 84

4.1.1 Знакомство с зондами выживания 84

4.1.2 Создание проверки выживания на основе HTTP 85

4.1.3 Использование зондов выживания 86

4.1.4 Настройка дополнительных атрибутов зонда выживания 87

4.1.5 Создание эффективных тестов жизнеспособности 88

4.2. Понимание контроллера репликации 89

4.2.1 Работа контроллера репликации 90

4.2.2 Создание контроллера репликации 92

4.2.3 Использование контроллера репликации 94

4.2.4 Перемещение модулей в область действия ReplicationController или из нее 97

4.2.5 Изменение шаблона модуля 100

4.2.6 Модуль горизонтального масштабирования 101

4.2.7 Удаление контроллера репликации 103

4.3. Используйте ReplicaSet вместо ReplicationController 104.

4.3.1 Сравнение Replicaset и ReplicationController 104

4.3.2 Определить ReplicaSet 105

4.3.3 Создание и проверка ReplicaSet106

4.3.4 Более выразительный селектор тегов с использованием ReplicaSet 106

4.3.5 Сводка набора реплик 107

4.4. Используйте DaemonSet для запуска модуля 107 на каждом узле.

4.4.1 Использование DaemonSet для запуска модуля 108 на каждом узле

4.4.2 Использование DaemonSet для запуска модуля 109 только на определенных узлах

4.5 Запуск модуля 112, выполняющего одну задачу

4.5.1 Знакомство с ресурсами вакансий 112

4.5.2 Определение ресурсов задания 113

4.5.3 Посмотрите, как Джоб запускает модуль 114

4.5.4 Запуск нескольких экземпляров модуля в задании 114

4.5.5 Ограничение времени выполнения задач модулем Job 116

4.6 Планирование регулярного или однократного запуска задания 116

4.6.1 Создание задания CronJob 116

4.6.2 Понимание того, как выполняются запланированные задачи 118

4.7 Краткое содержание этой главы 118

5 Сервис: позвольте клиенту обнаружить модуль и связаться с ним 121

5.1 Знакомство с услугами 122

5.1.1 Создание сервисов 123

5.1.2 Обнаружение услуг 129

5.2 Подключение к сервисам вне кластера 132

5.2.1 Знакомство с конечной точкой сервиса 133

5.2.2 Настройка конечной точки службы вручную 133

5.2.3 Создание псевдонимов для внешних сервисов 135

5.3 Предоставление услуг внешним клиентам 136

5.3.1 Использование сервисов типа NodePort 137

5.3.2 Предоставление услуг через балансировщики нагрузки 140

5.3.3 Понимание характеристик внешних соединений 142

5.4 Предоставление услуг через Ingress 143

5.4.1 Создание входящего ресурса 145

5.4.2 Доступ к сервисам через Ingress 146

5.4.3 Предоставление доступа к нескольким сервисам через один и тот же Ingress 147

5.4.4 Настройка Ingress для обработки передачи TLS 149

5.5 Отправка сигнала о готовности модуля 150

5.5.1 Знакомство с датчиками готовности 151

5.5.2 Добавление датчиков готовности в модули 152

5.5.3 Понимание того, что на самом деле делают датчики готовности 154

5.6. Использование автономных сервисов для обнаружения независимых модулей 155

5.6.1 Создание автономного сервиса 156

5.6.2 Обнаружение модуля 156 через DNS

5.6.3 Откройте для себя все стручки—&-Включить модуль 157, который еще не готов.

5.7 Устранение проблем с обслуживанием 158

5.8 Краткое содержание этой главы 159

6 Том: смонтируйте диск в контейнер 161.

6.1 Введение, том 162

6.1.1 Примеры объемного применения 162

6.1.2 Знакомство с доступными типами томов 164

6.2 Совместное использование данных между контейнерами через тома 165

6.2.1 Использование пустого каталога Volume 165

6.2.2 Использование репозитория Git в качестве тома хранения 168

6.3 Доступ к файлам в файловой системе рабочего узла 171

6.3.1 ВВЕДЕНИЕ HOSTPATH ​​Том 171

6.3.2 Проверка системного модуля 172 с использованием томов HostPath

6.4 Использование постоянного хранилища 173

6.4.1 Использование постоянных дисков GCE в качестве томов хранения модулей 174

6.4.2 Использование других типов томов через базовое постоянное хранилище 177

6.5 Отделение модулей от базовой технологии хранения данных 179

6.5.1 Введение в постоянные тома и объявления постоянных томов 179

6.5.2 Создание постоянных томов 180

6.5.3 Получение постоянного тома путем создания заявки на постоянный том 182

6.5.4 Использование объявлений постоянных томов в модулях 184

6.5.5 Понимание преимуществ использования постоянных томов и утверждений постоянных томов 185

6.5.6 Переработка постоянных томов 186

6.6 Динамическая конфигурация постоянных томов 187

6.6.1 Определение доступных типов хранилища с помощью ресурса StorageClass 188

6.6.2 Запрос класса хранилища в заявке на постоянный том 188

6.6.3 Динамическая конфигурация без указания класса хранения 190

6.7 Краткое содержание этой главы 193

7 ConfigMap и Secret: настройка приложений 195

7.1 Настройка контейнерных приложений 195

7.2 Отправка параметров командной строки 196

7.2.1 Определение команд и параметров в Docker 196

7.2.2 Переопределение команд и параметров в Kubernetes 199

7.3 Установка переменных среды для контейнеров 200

7.3.1 Указание переменных среды в определении контейнера 201

7.3.2 Ссылка на другие переменные среды в значениях переменных среды 201

7.3.3 Понимание недостатков жестко закодированных переменных среды 202

7.4 Использование ConfigMap для разделения конфигурации 202

7.4.1 Знакомство с ConfigMap 202

7.4.2 Создание ConfigMap 203

7.4.3 Передача записей ConfigMap в контейнеры в качестве переменных среды 206

7.4.4 Одновременная передача всех записей ConfigMap в качестве переменных среды 208

7.4.5 Передача записей ConfigMap в качестве аргументов командной строки 209

7.4.6 Использование томов configMap для представления записей в виде файлов 210

7.4.7 Обновление конфигурации приложения без перезапуска приложения 216

7.5. Использование Secret для передачи конфиденциальных данных в контейнер 218

7.5.1 Знакомство с секретом 218

7.5.2 Знакомство с токеном по умолчанию, секрет 218

7.5.3 Создать секрет 220

7.5.4 Сравнение ConfigMap и Secret 221

7.5.5 Использование Secret 222 в модуле

7.6 Краткое содержание этой главы 228

8. Доступ к метаданным модуля и другим ресурсам из приложения 229.

8.1 Передача метаданных через Downward API 229

8.1.1 Понимание доступных метаданных 230

8.1.2 Предоставление метаданных через переменные среды 231

8.1.3 Передача метаданных через нисходящие тома API 234

8.2 Взаимодействие с API-сервером Kubernetes 237

8.2.1 Изучение REST API Kubernetes 238

8.2.2 Взаимодействие с сервером API изнутри модуля 242

8.2.3 Упрощение взаимодействия с API-сервером через контейнер-амбассадор 248

8.2.4 Использование клиентских библиотек для взаимодействия с API-сервером 251

8.3 Краткое содержание данной главы 253

9. Развертывание: декларативное обновление приложений 255

9.1 Обновление приложений, работающих в модулях 256

9.1.1 Удалите модуль старой версии и замените 257 модулем новой версии.

9.1.2 Сначала создайте новый модуль, а затем удалите модуль старой версии 257

9.2 Использование ReplicationController для реализации автоматического последовательного обновления 259

9.2.1 Запуск первой версии приложения 259

9.2.2 Используйте Kubectl для выполнения обновления Rolling 261

9.2.3 Почему скользящее обновление kubectl устарело 265

9.3 Использование развертывания для декларативного обновления приложений 266

9.3.1 Создание развертывания 267

9.3.2 Обновление развертывания 269

9.3.3 Откат развертывания 273

9.3.4 Управление скоростью непрерывного обновления 276

9.3.5 Приостановка непрерывного обновления 278

9.3.6 Предотвращение последовательного обновления неисправных версий 279

9.4 Краткое содержание данной главы 284

10. StatefulSet: развертывание многокопийных приложений с отслеживанием состояния 285

10.1 Репликация модулей с сохранением состояния 285

10.1.1 Запуск нескольких копий с сохранением каждого экземпляра отдельно 286

10.1.2 Каждый модуль обеспечивает стабильную идентификацию 287

10.2 Понимание Statefulset 289

10.2.1 Сравнение Statefulset и ReplicaSet 289

10.2.2 Обеспечение стабильной сетевой идентификации 290

10.2.3 Обеспечить стабильное выделенное хранилище для каждого экземпляра с состоянием 292

10.2.4 Гарантии Statefulset 294

10.3 Использование Statefulset 295

10.3.1 Создание образов приложений и контейнеров 295

10.3.2 Развертывание приложений через Statefulset 296

10.3.3 Использование модуля 301

10.4 В Statefulset я нашел партнерский узел 305

10.4.1 Обнаружение друг друга через DNS 306

10.4.2 Обновление Statefulset 308

10.4.3 Попробуйте кластерное хранилище данных 309

10.5 Понимание того, как Statefulset обрабатывает сбои узлов 310

10.5.1 Имитация отключения узла от сети 310

10.5.2 Удаление модуля 312 вручную

10.6 Краткое содержание данной главы 313

11. Понимание механизма Kubernetes 315

11.1 Понимание архитектуры 315

11.1.1 Распределенные характеристики компонентов Kubernetes 316

11.1.2 Как Kubernetes использует etcd 318

11.1.3 Что делает сервер API 322

11.1.4 Как сервер API уведомляет клиента об изменениях ресурсов 324

11.1.5 Понимание планировщика 325

11.1.6 Знакомство с контроллерами, работающими в диспетчере контроллеров 327

11.1.7 Что сделал Кубелет 331

11.1.8 Роль сервисного прокси Kubernetes 332

11.1.9 Знакомство с плагинами Kubernetes 333

11.1.10 Краткий обзор 335

11.2 Как контролеры сотрудничают 335

11.2.1 Понимание того, какие компоненты задействованы335

11.2.2 Цепочка событий 336

11.2.3 Наблюдение за кластерными событиями 337

11.3 Понимание того, что такое беговая капсула 339

11.4 Межподовая сеть 340

11.4.1 Как должна выглядеть сеть 340

11.4.2 Глубокое понимание того, как работает сеть 341

11.4.3 Внедрение сетевого интерфейса контейнера 343

11.5 Как реализуются услуги 344

11.5.1 Введение kube-proxy 344

11.5.2 Как использовать iptables с kube-proxy 344

11.6. Запуск высокодоступного кластера 346

11.6.1 Обеспечение высокой доступности вашего приложения 346

11.6.2 Обеспечение высокой доступности плоскости управления Kubernetes 347

11.7 Краткое содержание данной главы 350

12. Защита API-сервера Kubernetes 351.

12.1 Понимание механизма аутентификации 351

12.1.1 Пользователи и группы 352

12.1.2 Знакомство с ServiceAccount 353

12.1.3 Создание учетной записи службы 354

12.1.4 Назначение ServiceAccount для модуля 356

12.2 Усиление безопасности кластера посредством управления разрешениями на основе ролей 358

12.2.1 Знакомство с плагином авторизации RBAC 359

12.2.2 Знакомство с ресурсами RBAC 360

12.2.3 Использование роли и привязки ролей 363

12.2.4 Использование ClusterRole и ClusterRoleBinding 367

12.2.5 Изучите кластеррол по умолчанию и кластерролерую 376

12.2.6 Рациональное предоставление прав авторизации 379

12.3 Краткое содержание данной главы 379

13. Обеспечение безопасности узла и сети внутри кластера 381.

13.1 Использование пространства имен Linux хост-узла в модуле 381

13.1.1 Использование сетевого пространства имен хост-узла в модуле 382

13.1.2 Привязка порта на хост-узле без использования сетевого пространства имен хост-узла 383

13.1.3 Используйте узлы PID и IPC узла хоста 385

13.2 Настройка контекста безопасности узла 386

13.3 Ограничение модулей на использование функций безопасности 396

13.4 Изоляция сетей модулей 406

13.5 Краткое содержание данной главы 410

14 Управление вычислительными ресурсами 411

14.1 Подайте заявку на ресурсы для контейнеров в модуле 411

14.1.1 Создайте модуль 412, содержащий запросы ресурсов

14.1.2 Как запросы ресурсов влияют на планирование 413

14.1.3 Как запросы процессора влияют на распределение времени процессора 418

14.1.4 Определение и применение пользовательских ресурсов 418

14.2 Ограничение доступных ресурсов контейнера 419

14.3 Понимание уровней QoS модулей 423

14.4. Установка запросов и ограничений по умолчанию для модулей в пространстве имен 427

14.5 Ограничение общего количества ресурсов, доступных в пространстве имен 431

14.6 Мониторинг использования ресурсов модуля 436

14.7 Краткое содержание данной главы 442

15 Автоматическое горизонтальное масштабирование подов и узлов кластера 443

15.1 Горизонтальное автоматическое масштабирование модуля 444

15.2 Вертикальное автоматическое масштабирование модуля 456

15.3 Горизонтальное масштабирование узлов кластера 457

15.4 Краткое содержание данной главы 461

16 Расширенное планирование 463

16.1 Использование искажений и допусков для предотвращения назначения узлов конкретным узлам 463

16.2 Использование привязки узлов для планирования модулей для определенных узлов 469

16.3 Использование сходства и несвязанности модулей для координации развертывания модулей 475

16.4 Краткое содержание данной главы 483

17 *Практика разработки приложений 485

17.1 Концентрация всех ресурсов 486

17.2 Понимание жизненного цикла модуля 487

17.3 Убедитесь, что все запросы клиентов обрабатываются должным образом 500

17.4. Упрощение запуска и управления приложениями в Kubernetes 505

17.5 Практика разработки и тестирования* 510

17.6 Краткое содержание данной главы 515

18 Расширение приложения Kubernetes 517

18.1 Определение пользовательских объектов API 517

18.2 Расширение Kubernetes с помощью каталога сервисов Kubernetes 528

18.3 Платформа на базе Kubernetes 536

18.4 Краткое содержание данной главы 541

A: Использование kubectl в нескольких кластерах 543

Б. Используйте kubeadm для настройки многоузлового кластера 549

C Использование других сред выполнения контейнеров 563

D Кластерная Федерация 567

......

Эта книга в основном объясняет, как развернуть распределенные контейнеры в Kubernetes.Начало этой книги вводит происхождение и разработку Docker и Kubernetes, а затем углубляет наше понимание и работу архитектуры Kubernetes, развернув приложение в Kubernetes в Kubernetes.В последней части этой книги вы также можете выучить некоторые темы высокого уровня, такие как мониторинг, отладка и выдвижение.Kubernetes - это греческий, что означает&Ldquo; Хелмсман&Rdquo; заставит нас безопасно добраться до неизвестных вод.Система расположения контейнеров, такая как Kubernetes, поможет нам должным образом управлять структурой развертывания и онлайн -трафиком распределенных приложений, а также эффективно организовать контейнеры и услуги.Как операционная система центра обработки данных, Kubernetes может минимизировать бремя на базовых сетевых и аппаратных средствах при разработке программной системы.

......

Знакомство с первоначальным автором

Марко Лукса — инженер-программист с более чем 20-летним опытом профессиональной разработки. Он занимался проектами, начиная от простых веб-приложений и заканчивая большими ERP-системами, платформами и промежуточным программным обеспечением.Работая в Red Hat, он начал с разработки реализаций Google App Engine API, которые будут основаны на промежуточном программном обеспечении Red Hat JBoss, и с тех пор участвовал в CDI/Weld, Infinispan/JBoss DataGrid и других проектах.После 2014 года он присоединился к команде Red Hat Cloud Enablement, отвечая за обновление Kubernetes и разработку сопутствующих технологий, гарантируя, что промежуточное программное обеспечение компании сможет полностью раскрыть потенциал функций Kubernetes и OpenShift.

 

Введение в переводчик

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