Роман Андриади — Деплой

63
Роман Андриади Системный администратор Развертывание вёрстки 9 февраля 2013 года

Upload: yandex

Post on 03-Jul-2015

4.243 views

Category:

Technology


9 download

DESCRIPTION

Рассказ про развертывание на примере верстки, про проблемы, которые могут возникнуть при этом, про то как их избежать, а также о том, как все это делается в Яндексе.

TRANSCRIPT

Page 1: Роман Андриади — Деплой

Роман АндриадиСистемный администратор

Развертывание вёрстки

9 февраля 2013 года

Page 2: Роман Андриади — Деплой

Роман АндриадиСистемный администратор

Развертывание вёрстки

9 февраля 2013 года

Page 3: Роман Андриади — Деплой

Роман АндриадиСистемный администратор

РазвертываниеНа примере вёрстки

9 февраля 2013 года

Page 4: Роман Андриади — Деплой

4

Что такое развертывание, и зачем оно нам нужно?

Page 5: Роман Андриади — Деплой

5

Можно ничего не разворачивать

Page 6: Роман Андриади — Деплой

6

Можно ничего не разворачивать

Page 7: Роман Андриади — Деплой

7

Можно ничего не разворачивать

Page 8: Роман Андриади — Деплой

8

Но на самом деле нельзя

Page 9: Роман Андриади — Деплой

9

А как можно?

Page 10: Роман Андриади — Деплой

10

А как можно?

?

Page 11: Роман Андриади — Деплой

11

Один сервер: всё просто

● Копирование по FTP● Для продвинутых — SCP :-)

Page 12: Роман Андриади — Деплой

12

Один сервер: всё просто

● Копирование по FTP● Для продвинутых — SCP :-)

Page 13: Роман Андриади — Деплой

13

Один сервер: всё просто

● Копирование по FTP● Для продвинутых — SCP :-)

Page 14: Роман Андриади — Деплой

14

Первая кровь: два сервера

● Продолжаем использовать FTP● Страдаем от того, что раскладывать дольше

Page 15: Роман Андриади — Деплой

15

Переходим на VCS

Page 16: Роман Андриади — Деплой

16

Переходим на VCS

Page 17: Роман Андриади — Деплой

17

Переходим на VCS

Page 18: Роман Андриади — Деплой

18

Кластеры компьютеров

● В кластере может быть много серверов

Page 19: Роман Андриади — Деплой

19

Кластеры компьютеров

● В кластере может быть много серверов● Некоторые из них могут не работать

Page 20: Роман Андриади — Деплой

20

Кластеры компьютеров

● В кластере может быть много серверов● Некоторые из них могут не работать● Проблема выкладки становится более сложной :(

Page 21: Роман Андриади — Деплой

21

Докатывание верстки

Page 22: Роман Андриади — Деплой

22

Докатывание верстки

● Робот-раскладывальщик

Page 23: Роман Андриади — Деплой

23

Докатывание верстки

● Робот-забиральщик

Page 24: Роман Андриади — Деплой

24

Версионирование и целостность

Page 25: Роман Андриади — Деплой

25

Откатывание верстки

● Появилась проблема с боевой версткой● Хочется откатить на предыдущую, которая работала

Page 26: Роман Андриади — Деплой

26

Откатывание верстки

● Появилась проблема с боевой версткой● Хочется откатить на предыдущую, которая работала

Page 27: Роман Андриади — Деплой

27

Откатывание верстки

● Появилась проблема с боевой версткой● Хочется откатить на предыдущую, которая работала

Page 28: Роман Андриади — Деплой

28

Откатывание верстки

● Появилась проблема с боевой версткой● Хочется откатить на предыдущую, которая работала● Иногда хочется откатить не всё

Page 29: Роман Андриади — Деплой

29

Архивы и пакеты

● Складываем верстку в архивы● Складываем верстку в архивы

Page 30: Роман Андриади — Деплой

30

Архивы и пакеты

● Складываем верстку в архивы● Складываем верстку в архивы● Добавляем метаинформацию и получаем

пакеты :)

Page 31: Роман Андриади — Деплой

31

Архивы и пакеты

● Складываем верстку в архивы● Складываем верстку в архивы● Добавляем метаинформацию и получаем

пакеты :)

Page 32: Роман Андриади — Деплой

32

Точечное откатывание

● Иногда хочется откатить не всё

Page 33: Роман Андриади — Деплой

33

Точечное откатывание

● Иногда хочется откатить не всё

Page 34: Роман Андриади — Деплой

34

Идем в лес!

● Сисадмины мерзкие и жалуются, что не любят откатываться

Page 35: Роман Андриади — Деплой

35

Идем в лес!

● Сисадмины мерзкие и жалуются, что не любят откатываться

● Мы и сами крутые, и не любим ошибки

Page 36: Роман Андриади — Деплой

36

Идем в лес!

● Сисадмины мерзкие и жалуются, что не любят откатываться

● Мы и сами крутые, и не любим ошибки● Сделаем ветки! :-)

Page 37: Роман Андриади — Деплой

37

Ветки компьютеров

Page 38: Роман Андриади — Деплой

38

Ветки VCS

Page 39: Роман Андриади — Деплой

39

Ветки VCS

Page 40: Роман Андриади — Деплой

40

Несколько кластеров

Page 41: Роман Андриади — Деплой

41

Проблема многих серверов

Page 42: Роман Андриади — Деплой

42

Проблема многих серверов

Page 43: Роман Андриади — Деплой

43

Проблема многих серверов

Page 44: Роман Андриади — Деплой

44

Версионные зависимости

● Не заменяем файлы, только добавляем

Page 45: Роман Андриади — Деплой

45

Версионные зависимости

● Не заменяем файлы, только добавляем● Сначала — статика, потом — верстка

Page 46: Роман Андриади — Деплой

46

Добавим кластеров

Page 47: Роман Андриади — Деплой

47

Добавим кластеров

Page 48: Роман Андриади — Деплой

48

Добавим кластеров

Page 49: Роман Андриади — Деплой

49

Добавим кластеров

Page 50: Роман Андриади — Деплой

50

Добавим разнообразия

Page 51: Роман Андриади — Деплой

51

Добавим разнообразия

Page 52: Роман Андриади — Деплой

52

Добавим разнообразия

Page 53: Роман Андриади — Деплой

53

Добавим разнообразия

Page 54: Роман Андриади — Деплой

54

Добавим разнообразия

Page 55: Роман Андриади — Деплой

55

Добавим разнообразия

Page 56: Роман Андриади — Деплой

56

Добавим разнообразия

Page 57: Роман Андриади — Деплой

57

Добавим разнообразия

Page 58: Роман Андриади — Деплой

58

Добавим разнообразия

Page 59: Роман Андриади — Деплой

59

Добавим разнообразия

Page 60: Роман Андриади — Деплой

60

Чтобы не расслабляться

● Вспомним, что есть тестинг● Для каждого кластера● И бывают случаи, когда хочется

протестировать новую верстку с боевым бэкендом, например ;-)

Page 61: Роман Андриади — Деплой

61

Page 62: Роман Андриади — Деплой

62

Вопросы?

Page 63: Роман Андриади — Деплой

Системный администратор

119021, Россия, Москва,ул. Льва Толстого, д. 16

+7 (495) 739-00-00+7 (495) 739-70-70 — факс

[email protected]

Роман Андриади