Как справляться с ростом инфраструктуры сервиса —...

Preview:

DESCRIPTION

Инфраструктура любого сервиса со временем растёт. Внедряются новые технологии, становится больше серверов, растут затраты на рутинные технические операции. В первой части доклада я расскажу в общем о процессах роста, а во второй на конкретных примерах покажу, как мы с этим справляемся. В частности, мы поговорим про Salt — систему управления конфигурацией.

Citation preview

Как справляться с ростом инфраструктуры сервиса

Игорь Андреев, системный администратор Я.Субботник, Новосибирск, 18 октября 2014

План доклада ▌ Развитие инфраструктуры сервиса ▌ Salt ▌ Reclass ▌ Интеграция с другими системами ▌ Hadoop

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

4

Как люди воспринимают сервис

5

Пользователи

Как люди воспринимают сервис

6

Пользователи Разработчики

Как люди воспринимают сервис

7

Пользователи Разработчики Администраторы

Какой путь проходит сервис

Proof of concept

Какой путь проходит сервис

Proof of concept

Стабильная система

Какой путь проходит сервис

Proof of concept

Стабильная система

Масштабы роста

11

1 103

104

10???

1997 2007 2010 2014

Задачи

12

Мониторинг

13

▌ Juggler

▌ Graphite

Управление изменениями конфигурации

14

▌ Зафиксировать изменения у разработчика ▌ Скопировать эти изменения ▌ Применить изменения на тестовую среду ▌ Перенести на production

Configuration management systems

Salt

17

Python

Yaml

ZeroMQ

File server

Parallel execution

Top 10 on GitHub

Архитектура

18

Описание конфигурации

19

Файловая структура

20

Grains

21

Grains

22

Pillar

23

Pillar

24

Как применяются изменения

25

Недостатки

26

Reclass

27

Recursive external node classification

▌ http://reclass.pantsfullofunix.net › Node › Class › Application › Parameters

Использование reclass с salt

29

Использование reclass с salt

30

Использование reclass с salt

31

Top.sls

32

Top.sls vs class.yml & host.yml

33

Command Line

34

salt “*” test.ping

Command Line

35

salt “*” test.ping

Где

Command Line

36

salt “*” test.ping

Что

Command line

37

Демонстрация

38

Интеграция с другими системами

Возможности

40

▌ Вся конфигурация в одном месте ▌ Экспорт в другие системы ▌ Запросы к reclass ▌ OpenStack

41

Hadoop

42

Сложность управления

43

▌ Большое количество сервисов ▌ Сервисы зависят друг от друга ▌ Строгий порядок запуска и выключения

Управление кластерами

44

▌ Bootstrap ▌ Несколько копий окружения ▌ Переиспользование кода ▌ Защита от выкладки старой версии ▌ Open-source ▌ Интеграция с инфраструктурой

Управление кластерами

45

Вопросы?

46

Контакты

47

▌ Игорь Андреев ▌ системный администратор ▌ E-mail: iandreyev@yandex-team.ru

Recommended