← До фільтрів та технологій

← До списку лабораторних по Docker

Docker Лабораторна 79: Перенесення сервісу

Технологія: Docker

Номер лабораторної: 79 · Рівень: middle

Тема: Міграція контейнерів між хостами з мінімальним простоєм

Повний опис / сценарій лабораторної:

Мета: відпрацювати сценарій переносу окремого сервісу на інший Docker хост з мінімальною зупинкою.



Крок 1. Проаналізувати що входить у сервіс.

Пояснення: образи, конфігурація, томи з даними, змінні середовища.



Крок 2. На новому хості встановити Docker і створити потрібні мережі.

Пояснення: імена мереж бажано зберегти такими самими.



Крок 3. Перенести образи через docker save/load або через реєстр.

Пояснення: переконайся що версії образів збігаються.



Крок 4. Перенести дані томів.

Пояснення: використай docker run з tar для копіювання вмісту на новий хост.



Крок 5. Підготувати на новому хості docker compose файл або systemd unit.

Пояснення: конфіг такий самий як на старому хості.



Крок 6. Зменшити ttl dns записів перед міграцією.

Пояснення: це дозволить швидше переключити трафік.



Крок 7. Зупинити сервіс на старому хості.

Пояснення: зроби це в узгоджене вікно обслуговування.



Крок 8. Запустити сервіс на новому хості.

Команда: docker compose up -d або systemctl start для unit.



Крок 9. Оновити dns або конфіг балансувальника.

Пояснення: трафік має піти на новий хост.



Крок 10. Міні звіт.

Завдання: опиши які додаткові кроки потрібні щоб перенести stateful сервіс з мінімальною втратою даних.