ycliper

Популярное

Музыка Кино и Анимация Автомобили Животные Спорт Путешествия Игры Юмор

Интересные видео

2025 Сериалы Трейлеры Новости Как сделать Видеоуроки Diy своими руками

Топ запросов

смотреть а4 schoolboy runaway турецкий сериал смотреть мультфильмы эдисон
Скачать

Kubernetes Rolling Update или Recreate: какую стратегию выбрать?

kubernetes

kubernetes tutorial

kubernetes for beginners

kubernetes explained

learn kubernetes

rolling update vs recreate

recreate strategy

rolling update

kubernetes rolling update

deployment strategy

update strategy

kubernetes deployment strategy

maxUnavailable

max surge

max unavailable

zero downtime deployment

kubectl describe

kubectl apply

kubectl get pods watch

kubernetes deployment

replicaset

kubectl

kind

kubernetes in docker

nginx

devops

cka

docker

Автор: Future Coding

Загружено: 2026-09-22

Просмотров: 41

Описание: В прошлый раз отмена одного обновления исправила неудачную попытку обновления, и наш веб-сайт ни разу не перестал работать.
Но всегда ли скользящее обновление — правильный выбор? И сколько подов изменяется одновременно? Сегодня мы ответим на оба вопроса в режиме реального времени на нашем кластере. 🚢

В этом видео вы узнаете:
✅ Что такое стратегия обновления развертывания
✅ Как работает RollingUpdate: сначала запускается один новый под, затем отключается один старый
✅ Как работает Recreate: сначала останавливаются все старые поды, затем запускаются все новые
✅ Почему Recreate означает короткий простой и когда он все еще нужен
✅ Как увидеть свою стратегию с помощью kubectl describe deployment
✅ Что означают maxSurge и maxUnavailable, и как округляется 25% от 3 подов
✅ Как переключить развертывание на Recreate и наблюдать за ним в режиме реального времени
✅ Как выбрать между двумя вариантами

⏱️ Разделы
0:00 Ранее: два открытых вопроса
0:35 Два способа обновления: RollingUpdate и Recreate
1:33 Какую стратегию мы используем?

2:20 Максимальный пиковый спрос и максимальная недоступность
3:20 Воспроизвести в прямом эфире
4:37 Какой из них выбрать?

5:04 Краткий обзор и далее: Сервисы

🛠️ Что вам понадобится (все бесплатно)
Docker Desktop: https://www.docker.com/products/docke...
kind (Kubernetes в Docker): https://kind.sigs.k8s.io/docs/user/qu...
kubectl: https://kubernetes.io/docs/tasks/tools/
В 1-м эпизоде ​​пошагово строится кластер kind из 3 узлов («fleet»).

📚 Официальная документация
Стратегия обновления развертывания (RollingUpdate и Recreate): https://kubernetes.io/docs/concepts/w...
Max surge: https://kubernetes.io/docs/concepts/w...
Max unavailable: https://kubernetes.io/docs/concepts/w...
kubectl describe: https://kubernetes.io/docs/reference/...

💻 Команды из видео
1) Перед началом: развертывание "web" из эпизода 4
Перед началом видео мы перестраиваемся с того места, где закончился эпизод 4: nginx:1.27, затем 1.28, опечатка 1.299, отмена и файл, исправленный до версии 1.28:
apiVersion: apps/v1
kind: Deployment
metadata:
name: web
spec:
replicas: 3
selector:
matchLabels:
app: web
template:
metadata:
labels:
app: web
spec:
containers:

name: nginx
image: nginx:1.28

2) Какую стратегию мы используем?
kubectl describe deployment web
(Найдите эти две строки: "StrategyType: RollingUpdate" и "RollingUpdateStrategy: 25% max unavailable, 25% max surge". Мы их не писали: это значения по умолчанию.)

3) Переключитесь на Recreate: добавьте стратегию и обновите образ до nginx:1.29. Вот содержимое файла deployment.yaml:
apiVersion: apps/v1
kind: Deployment
metadata:
name: web
spec:
replicas: 3
strategy:
type: Recreate
selector:
matchLabels:
app: web
template:
metadata:
labels:
app: web
spec:
containers:
name: nginx
image: nginx:1.29

4) Примените изменения и наблюдайте за подами.
kubectl apply -f deployment.yaml
kubectl get pods --watch
(Все три старых пода одновременно завершают работу. Затем три новых пода показывают 0/1 ready: веб-сайт недоступен. Затем все три пода запускаются. Нажмите Ctrl+C, чтобы остановить наблюдение.)
kubectl describe deployment web
(StrategyType теперь Recreate. В событиях внизу: старый ReplicaSet уменьшился с 3 до 0, затем новый увеличился с 0) к 3.)

5) В качестве примера (не показано в видео): значения по умолчанию, которые мы никогда не записывали
стратегия:
тип: RollingUpdate
rollingUpdate:

maxSurge: 25%
maxUnavailable: 25%
При наличии 3 реплик maxSurge округляет до 1 дополнительного пода, а maxUnavailable — до 0 отсутствующих подов. Таким образом, запускается один новый под, и когда он готов, останавливается один старый под.
Пример из видео: maxUnavailable: 1 позволяет старому поду остановиться до того, как будет готов новый. Это быстрее, но на мгновение ваши пользователи будут обслуживаться только двумя подами.
Примечание: устанавливайте rollingUpdate только тогда, когда тип — RollingUpdate. При типе: Recreate, опустите rollingUpdate, иначе Kubernetes отклонит файл.

6) Выполните очистку после завершения (не показано в видео)
kubectl delete deployment web
kind delete cluster --name fleet

⏮️ Предыдущий эпизод: Откат Kubernetes: отмена неудачного обновления одной командой
⏭️ Следующий эпизод: Сервисы: стабильный адрес для ваших подов — после каждого обновления наши поды получают новые имена и новые IP-адреса. Как же пользователи находят приложение? Мы встречаем сервис ClusterIP и обращаемся к приложению по имени.

▶️ Это 5-й эпизод плейлиста «Kubernetes Explained with Ships»: эпизоды дополняют друг друга.

Что-то не было понятно, или у вас есть вопрос? Задайте его в комментариях — нет слишком простых вопросов. Если это помогло, поделитесь с другом, который изучает Kubernetes, и подпишитесь, чтобы не пропустить следующий эпизод.

Демонстрация записана на Kubernetes v1.37.0 с kind v0.33.0.

#Kubernetes #DevOps ...

Не удается загрузить Youtube-плеер. Проверьте блокировку Youtube в вашей сети.
Повторяем попытку...
Kubernetes Rolling Update или Recreate: какую стратегию выбрать?

Поделиться в:

Доступные форматы для скачивания:

Скачать видео

  • Информация по загрузке:

Скачать аудио

Похожие видео

© 2025 ycliper. Все права защищены.



  • Контакты
  • О нас
  • Политика конфиденциальности



Контакты для правообладателей: [email protected]