SlideShare ist ein Scribd-Unternehmen logo
1 von 19
1
Разработка приложений
для облаков
Андрей Кожокару
2
Что такое облака?
3
5 основных характеристик
Самообслуживание Глобальная доступность Объединенные ресурсы
Масштабируемость Измеримые сервисы
4
Облачные модели
Системный
администратор
Разработчик
Конечный
пользователь
5
Основные публичные
провайдеры
6
Основные законы
построения
приложений в
облаках
7
Используйте встроенные:
• мониторинг
• облачные сервисы
• методы автоматизации
• репликацию баз данных
• резервное копирование
• распределённое избыточное хранилище файлов
1. Доверяйте своему провайдеру
8
1. Доверяйте своему провайдеру
Amazon EC2 Amazon Elastic
MapReduce
Amazon S3
Amazon Glacier
DynamoDB
Amazon RDS
Amazon
ElastiCache
Amazon
CloudFront
Amazon
CloudWatch
Amazon SES
Amazon SQS
Amazon SNS
9
2. Все отказывает, будьте начеку
Стандартные ситуации:
• сервер внезапно останавливается
• сервер не запускается
• исчезают диски
• сервисы отказывают
• оборудование
• энергоснабжение
• магистральные провайдеры
• хакеры
10
2. Все отказывает, а мы готовы
Обрабатываем:
• параметры стартующего сервера
• результаты выполнения заданий
• используем очереди и сообщения
Не используем:
• локальные хранилища данных
• локальный кэш
• уникальные сервисы
Распределяем:
• разные задачи – разные группы серверов
• одна группа серверов – разные зоны
• резервное копирование в другие регионы
Тренируемся:
• High Availability тесты
• Disaster Recovery тесты
11
2. Все отказывает, а мы готовы
US-EAST-1
Availability Zone Availability Zone
EC2 Instance EC2 Instance
MultiAZ RDS
Elastic Load Balancing
US-WEST-2
S3 Backup
Bucket
EC2 AMI
EC2 Instance EC2 Instance
AppServer group
Storage cluster
EC2 Instance
12
3. Автоматизируйте всё
Разворачивание инфраструктуры:
AWS CloudFormation Chef Puppet
Разворачивание приложений:
Jenkins Cruise Control OctopusCI
13
3. Автоматизируйте всё
Автомасштабирование и мониторинг:
Amazon CloudWatch Zabbix Nagios
… при помощи скриптов на
Shell Ruby Python Powershell
14
4. Оптимизируйте расходы
1. Предоплата
до -65%
за вычислительные
мощности
до -29.5%
за инфраструктуру
15
4. Оптимизируйте расходы
2. Автомасштабирование
по предсказуемой нагрузке:
16
4. Оптимизируйте расходы
2. Автомасштабирование
по непредсказуемой нагрузке:
17
4. Оптимизируйте расходы
3. Спот инстансы: преимущества
• до 10 раз дешевле
• ваша цена
• считается только полный час работы
18
4. Оптимизируйте расходы
3. Спот инстансы: недостатки
• может быть выключен в любой момент
Больше информации о спот инстансах
следующем докладе Дмитрия Пушкарёва
19
Ваши вопросы!
Мои контакты
kozhokaru.com
Полезные ссылки
kozhokaru.com/rit.pdf

Weitere ähnliche Inhalte

Was ist angesagt?

СISCO: групповые политики в OpenStack
СISCO: групповые политики в OpenStackСISCO: групповые политики в OpenStack
СISCO: групповые политики в OpenStack
Mirantis IT Russia
 
Что такое OpenStack
Что такое OpenStackЧто такое OpenStack
Что такое OpenStack
Ilya Alekseyev
 
Мониторинг в высоконагруженных (и не только) проектах: сравнительный анализ с...
Мониторинг в высоконагруженных (и не только) проектах: сравнительный анализ с...Мониторинг в высоконагруженных (и не только) проектах: сравнительный анализ с...
Мониторинг в высоконагруженных (и не только) проектах: сравнительный анализ с...
Anton Baranov
 

Was ist angesagt? (20)

CloudStack 2.2.9 by ActiveCloud
CloudStack 2.2.9  by ActiveCloudCloudStack 2.2.9  by ActiveCloud
CloudStack 2.2.9 by ActiveCloud
 
Четырехлетие OpenStack - Сложный возраст OpenStack
Четырехлетие OpenStack - Сложный возраст OpenStackЧетырехлетие OpenStack - Сложный возраст OpenStack
Четырехлетие OpenStack - Сложный возраст OpenStack
 
Четырехлетие OpenStack - Опыт ITKey
Четырехлетие OpenStack - Опыт ITKeyЧетырехлетие OpenStack - Опыт ITKey
Четырехлетие OpenStack - Опыт ITKey
 
СISCO: групповые политики в OpenStack
СISCO: групповые политики в OpenStackСISCO: групповые политики в OpenStack
СISCO: групповые политики в OpenStack
 
Migration of Cloud Services to Microsoft Azure Service Fabric
Migration of Cloud Services to Microsoft Azure Service FabricMigration of Cloud Services to Microsoft Azure Service Fabric
Migration of Cloud Services to Microsoft Azure Service Fabric
 
Jelastic PaaS for DevOps: Hybrid Cloud based on Microsoft Azure
Jelastic PaaS for DevOps: Hybrid Cloud based on Microsoft AzureJelastic PaaS for DevOps: Hybrid Cloud based on Microsoft Azure
Jelastic PaaS for DevOps: Hybrid Cloud based on Microsoft Azure
 
Как devops исчерпывает себя, и что будет дальше / Кирилл Вечера (Jetware)
Как devops исчерпывает себя, и что будет дальше / Кирилл Вечера (Jetware)Как devops исчерпывает себя, и что будет дальше / Кирилл Вечера (Jetware)
Как devops исчерпывает себя, и что будет дальше / Кирилл Вечера (Jetware)
 
Специфика рендеринга vue.js-приложений на сервере, Алексей Клюев
Специфика рендеринга vue.js-приложений на сервере, Алексей КлюевСпецифика рендеринга vue.js-приложений на сервере, Алексей Клюев
Специфика рендеринга vue.js-приложений на сервере, Алексей Клюев
 
ITkey: примеры использования OpenStack
 ITkey: примеры использования OpenStack ITkey: примеры использования OpenStack
ITkey: примеры использования OpenStack
 
Доклад С-Терра на Уральском банковском форуме - 2016 (Башкортостан)
Доклад С-Терра на Уральском банковском форуме - 2016 (Башкортостан)Доклад С-Терра на Уральском банковском форуме - 2016 (Башкортостан)
Доклад С-Терра на Уральском банковском форуме - 2016 (Башкортостан)
 
Модуль МЭК 61850 Клиент/Сервер Test Universe Эвалдас Олешкявичус
Модуль МЭК 61850 Клиент/Сервер Test Universe Эвалдас ОлешкявичусМодуль МЭК 61850 Клиент/Сервер Test Universe Эвалдас Олешкявичус
Модуль МЭК 61850 Клиент/Сервер Test Universe Эвалдас Олешкявичус
 
Что такое OpenStack
Что такое OpenStackЧто такое OpenStack
Что такое OpenStack
 
Мониторинг в высоконагруженных (и не только) проектах: сравнительный анализ с...
Мониторинг в высоконагруженных (и не только) проектах: сравнительный анализ с...Мониторинг в высоконагруженных (и не только) проектах: сравнительный анализ с...
Мониторинг в высоконагруженных (и не только) проектах: сравнительный анализ с...
 
Shadow Fight 2: архитектура системы аналитики для миллиарда событий
Shadow Fight 2: архитектура системы аналитики для миллиарда событийShadow Fight 2: архитектура системы аналитики для миллиарда событий
Shadow Fight 2: архитектура системы аналитики для миллиарда событий
 
ASD Technologies: внедрение enterprise-grade облака для Softbank
ASD Technologies: внедрение enterprise-grade облака для SoftbankASD Technologies: внедрение enterprise-grade облака для Softbank
ASD Technologies: внедрение enterprise-grade облака для Softbank
 
ТЕКВЕЛ ПАРК ЛЭП 2016
ТЕКВЕЛ ПАРК ЛЭП 2016ТЕКВЕЛ ПАРК ЛЭП 2016
ТЕКВЕЛ ПАРК ЛЭП 2016
 
Решение TIONIX на базе Mirantis OpenStack
Решение TIONIX на базе Mirantis OpenStackРешение TIONIX на базе Mirantis OpenStack
Решение TIONIX на базе Mirantis OpenStack
 
AT Consulting: внедрение OpenStack в корпоративной среде
AT Consulting: внедрение OpenStack в корпоративной средеAT Consulting: внедрение OpenStack в корпоративной среде
AT Consulting: внедрение OpenStack в корпоративной среде
 
Drupal в облаке - Владимир Юнев
Drupal в облаке - Владимир ЮневDrupal в облаке - Владимир Юнев
Drupal в облаке - Владимир Юнев
 
Масштабирование и отказоустойчивость с Nginx
Масштабирование и отказоустойчивость с NginxМасштабирование и отказоустойчивость с Nginx
Масштабирование и отказоустойчивость с Nginx
 

Andere mochten auch

Andere mochten auch (8)

хувилбар а
хувилбар ахувилбар а
хувилбар а
 
Vente appartement luxe proche miami
Vente appartement luxe proche miamiVente appartement luxe proche miami
Vente appartement luxe proche miami
 
Plaza Offices Catete
Plaza Offices CatetePlaza Offices Catete
Plaza Offices Catete
 
Ben Doğa Ana'yım
Ben Doğa Ana'yımBen Doğa Ana'yım
Ben Doğa Ana'yım
 
1 математик даалгавар
1 математик даалгавар1 математик даалгавар
1 математик даалгавар
 
Syktyvkar Настя Грумандь
Syktyvkar Настя ГрумандьSyktyvkar Настя Грумандь
Syktyvkar Настя Грумандь
 
Reaktio 2010
Reaktio 2010Reaktio 2010
Reaktio 2010
 
Bichil dolgion
Bichil dolgionBichil dolgion
Bichil dolgion
 

Ähnlich wie Разработка приложений для облаков / Андрей Кожокару (EPAM)

Гатиятов Руслан, технический директор ООО “Дроид Лабс”: “Система управления п...
Гатиятов Руслан, технический директор ООО “Дроид Лабс”: “Система управления п...Гатиятов Руслан, технический директор ООО “Дроид Лабс”: “Система управления п...
Гатиятов Руслан, технический директор ООО “Дроид Лабс”: “Система управления п...
Provectus
 
Оптимизация производительности нагруженных веб-систем на Java
Оптимизация производительности нагруженных веб-систем на JavaОптимизация производительности нагруженных веб-систем на Java
Оптимизация производительности нагруженных веб-систем на Java
Alex Chistyakov
 
Auditing HA/DR Сonfigurations
Auditing HA/DR СonfigurationsAuditing HA/DR Сonfigurations
Auditing HA/DR Сonfigurations
Alexey Chekanov
 
Daemons In Web on #devrus
Daemons In Web on #devrusDaemons In Web on #devrus
Daemons In Web on #devrus
Alex Chistyakov
 
Database as a Service
Database as a ServiceDatabase as a Service
Database as a Service
Andrey Akulov
 
AVITO. Решардинг Redis без даунтайма. DevConf 2012
AVITO. Решардинг Redis без даунтайма. DevConf 2012AVITO. Решардинг Redis без даунтайма. DevConf 2012
AVITO. Решардинг Redis без даунтайма. DevConf 2012
Roman Pavlushko
 

Ähnlich wie Разработка приложений для облаков / Андрей Кожокару (EPAM) (20)

Docker in Production with AWS ECS
Docker in Production with AWS ECSDocker in Production with AWS ECS
Docker in Production with AWS ECS
 
Особенности тестирования сloud-приложений
Особенности тестирования сloud-приложенийОсобенности тестирования сloud-приложений
Особенности тестирования сloud-приложений
 
Гатиятов Руслан, технический директор ООО “Дроид Лабс”: “Система управления п...
Гатиятов Руслан, технический директор ООО “Дроид Лабс”: “Система управления п...Гатиятов Руслан, технический директор ООО “Дроид Лабс”: “Система управления п...
Гатиятов Руслан, технический директор ООО “Дроид Лабс”: “Система управления п...
 
Оптимизация производительности нагруженных веб-систем на Java
Оптимизация производительности нагруженных веб-систем на JavaОптимизация производительности нагруженных веб-систем на Java
Оптимизация производительности нагруженных веб-систем на Java
 
Net core and linux in production
Net core and linux in productionNet core and linux in production
Net core and linux in production
 
Docker Containers orchestrators: Kubernetes vs. Swarm
Docker Containers orchestrators: Kubernetes vs. SwarmDocker Containers orchestrators: Kubernetes vs. Swarm
Docker Containers orchestrators: Kubernetes vs. Swarm
 
от авгиевых конюшен к звездам
от авгиевых конюшен к звездамот авгиевых конюшен к звездам
от авгиевых конюшен к звездам
 
Приватный клауд на базе OpenStack
Приватный клауд на базе OpenStackПриватный клауд на базе OpenStack
Приватный клауд на базе OpenStack
 
Auditing HA/DR Сonfigurations
Auditing HA/DR СonfigurationsAuditing HA/DR Сonfigurations
Auditing HA/DR Сonfigurations
 
Тестовая инфраструктура в облаке
Тестовая инфраструктура в облакеТестовая инфраструктура в облаке
Тестовая инфраструктура в облаке
 
Андрей Зайчиков "Архитектура распределенных кластеров NoSQL на AWS"
Андрей Зайчиков "Архитектура распределенных кластеров NoSQL на AWS"Андрей Зайчиков "Архитектура распределенных кластеров NoSQL на AWS"
Андрей Зайчиков "Архитектура распределенных кластеров NoSQL на AWS"
 
Переезжаем с Zabbix на Prometheus / Василий Озеров (fevlake)
Переезжаем с Zabbix на Prometheus / Василий Озеров (fevlake)Переезжаем с Zabbix на Prometheus / Василий Озеров (fevlake)
Переезжаем с Zabbix на Prometheus / Василий Озеров (fevlake)
 
Daemons In Web on #devrus
Daemons In Web on #devrusDaemons In Web on #devrus
Daemons In Web on #devrus
 
Рэки IBM для проекта ExoGENI
Рэки IBM для проекта ExoGENIРэки IBM для проекта ExoGENI
Рэки IBM для проекта ExoGENI
 
Chef @DevWeb
Chef @DevWebChef @DevWeb
Chef @DevWeb
 
ORM технологии в .NET (Nhibernate, Linq To SQL, Entity Framework)
ORM технологии в .NET (Nhibernate, Linq To SQL, Entity Framework)ORM технологии в .NET (Nhibernate, Linq To SQL, Entity Framework)
ORM технологии в .NET (Nhibernate, Linq To SQL, Entity Framework)
 
Database as a Service
Database as a ServiceDatabase as a Service
Database as a Service
 
The impact of the cloud on development by Alexander Klimov, Igor Sukharev
The impact of the cloud on development by Alexander Klimov, Igor SukharevThe impact of the cloud on development by Alexander Klimov, Igor Sukharev
The impact of the cloud on development by Alexander Klimov, Igor Sukharev
 
The impact of the cloud on development by Alexander Klimov, Igor Sukharev
The impact of the cloud on development by Alexander Klimov, Igor SukharevThe impact of the cloud on development by Alexander Klimov, Igor Sukharev
The impact of the cloud on development by Alexander Klimov, Igor Sukharev
 
AVITO. Решардинг Redis без даунтайма. DevConf 2012
AVITO. Решардинг Redis без даунтайма. DevConf 2012AVITO. Решардинг Redis без даунтайма. DevConf 2012
AVITO. Решардинг Redis без даунтайма. DevConf 2012
 

Mehr von Ontico

Готовим тестовое окружение, или сколько тестовых инстансов вам нужно / Алекса...
Готовим тестовое окружение, или сколько тестовых инстансов вам нужно / Алекса...Готовим тестовое окружение, или сколько тестовых инстансов вам нужно / Алекса...
Готовим тестовое окружение, или сколько тестовых инстансов вам нужно / Алекса...
Ontico
 

Mehr von Ontico (20)

One-cloud — система управления дата-центром в Одноклассниках / Олег Анастасье...
One-cloud — система управления дата-центром в Одноклассниках / Олег Анастасье...One-cloud — система управления дата-центром в Одноклассниках / Олег Анастасье...
One-cloud — система управления дата-центром в Одноклассниках / Олег Анастасье...
 
Масштабируя DNS / Артем Гавриченков (Qrator Labs)
Масштабируя DNS / Артем Гавриченков (Qrator Labs)Масштабируя DNS / Артем Гавриченков (Qrator Labs)
Масштабируя DNS / Артем Гавриченков (Qrator Labs)
 
Создание BigData-платформы для ФГУП Почта России / Андрей Бащенко (Luxoft)
Создание BigData-платформы для ФГУП Почта России / Андрей Бащенко (Luxoft)Создание BigData-платформы для ФГУП Почта России / Андрей Бащенко (Luxoft)
Создание BigData-платформы для ФГУП Почта России / Андрей Бащенко (Luxoft)
 
Готовим тестовое окружение, или сколько тестовых инстансов вам нужно / Алекса...
Готовим тестовое окружение, или сколько тестовых инстансов вам нужно / Алекса...Готовим тестовое окружение, или сколько тестовых инстансов вам нужно / Алекса...
Готовим тестовое окружение, или сколько тестовых инстансов вам нужно / Алекса...
 
Новые технологии репликации данных в PostgreSQL / Александр Алексеев (Postgre...
Новые технологии репликации данных в PostgreSQL / Александр Алексеев (Postgre...Новые технологии репликации данных в PostgreSQL / Александр Алексеев (Postgre...
Новые технологии репликации данных в PostgreSQL / Александр Алексеев (Postgre...
 
PostgreSQL Configuration for Humans / Alvaro Hernandez (OnGres)
PostgreSQL Configuration for Humans / Alvaro Hernandez (OnGres)PostgreSQL Configuration for Humans / Alvaro Hernandez (OnGres)
PostgreSQL Configuration for Humans / Alvaro Hernandez (OnGres)
 
Inexpensive Datamasking for MySQL with ProxySQL — Data Anonymization for Deve...
Inexpensive Datamasking for MySQL with ProxySQL — Data Anonymization for Deve...Inexpensive Datamasking for MySQL with ProxySQL — Data Anonymization for Deve...
Inexpensive Datamasking for MySQL with ProxySQL — Data Anonymization for Deve...
 
Опыт разработки модуля межсетевого экранирования для MySQL / Олег Брославский...
Опыт разработки модуля межсетевого экранирования для MySQL / Олег Брославский...Опыт разработки модуля межсетевого экранирования для MySQL / Олег Брославский...
Опыт разработки модуля межсетевого экранирования для MySQL / Олег Брославский...
 
ProxySQL Use Case Scenarios / Alkin Tezuysal (Percona)
ProxySQL Use Case Scenarios / Alkin Tezuysal (Percona)ProxySQL Use Case Scenarios / Alkin Tezuysal (Percona)
ProxySQL Use Case Scenarios / Alkin Tezuysal (Percona)
 
MySQL Replication — Advanced Features / Петр Зайцев (Percona)
MySQL Replication — Advanced Features / Петр Зайцев (Percona)MySQL Replication — Advanced Features / Петр Зайцев (Percona)
MySQL Replication — Advanced Features / Петр Зайцев (Percona)
 
Внутренний open-source. Как разрабатывать мобильное приложение большим количе...
Внутренний open-source. Как разрабатывать мобильное приложение большим количе...Внутренний open-source. Как разрабатывать мобильное приложение большим количе...
Внутренний open-source. Как разрабатывать мобильное приложение большим количе...
 
Подробно о том, как Causal Consistency реализовано в MongoDB / Михаил Тюленев...
Подробно о том, как Causal Consistency реализовано в MongoDB / Михаил Тюленев...Подробно о том, как Causal Consistency реализовано в MongoDB / Михаил Тюленев...
Подробно о том, как Causal Consistency реализовано в MongoDB / Михаил Тюленев...
 
Балансировка на скорости проводов. Без ASIC, без ограничений. Решения NFWare ...
Балансировка на скорости проводов. Без ASIC, без ограничений. Решения NFWare ...Балансировка на скорости проводов. Без ASIC, без ограничений. Решения NFWare ...
Балансировка на скорости проводов. Без ASIC, без ограничений. Решения NFWare ...
 
Перехват трафика — мифы и реальность / Евгений Усков (Qrator Labs)
Перехват трафика — мифы и реальность / Евгений Усков (Qrator Labs)Перехват трафика — мифы и реальность / Евгений Усков (Qrator Labs)
Перехват трафика — мифы и реальность / Евгений Усков (Qrator Labs)
 
И тогда наверняка вдруг запляшут облака! / Алексей Сушков (ПЕТЕР-СЕРВИС)
И тогда наверняка вдруг запляшут облака! / Алексей Сушков (ПЕТЕР-СЕРВИС)И тогда наверняка вдруг запляшут облака! / Алексей Сушков (ПЕТЕР-СЕРВИС)
И тогда наверняка вдруг запляшут облака! / Алексей Сушков (ПЕТЕР-СЕРВИС)
 
Как мы заставили Druid работать в Одноклассниках / Юрий Невиницин (OK.RU)
Как мы заставили Druid работать в Одноклассниках / Юрий Невиницин (OK.RU)Как мы заставили Druid работать в Одноклассниках / Юрий Невиницин (OK.RU)
Как мы заставили Druid работать в Одноклассниках / Юрий Невиницин (OK.RU)
 
Разгоняем ASP.NET Core / Илья Вербицкий (WebStoating s.r.o.)
Разгоняем ASP.NET Core / Илья Вербицкий (WebStoating s.r.o.)Разгоняем ASP.NET Core / Илья Вербицкий (WebStoating s.r.o.)
Разгоняем ASP.NET Core / Илья Вербицкий (WebStoating s.r.o.)
 
100500 способов кэширования в Oracle Database или как достичь максимальной ск...
100500 способов кэширования в Oracle Database или как достичь максимальной ск...100500 способов кэширования в Oracle Database или как достичь максимальной ск...
100500 способов кэширования в Oracle Database или как достичь максимальной ск...
 
Apache Ignite Persistence: зачем Persistence для In-Memory, и как он работает...
Apache Ignite Persistence: зачем Persistence для In-Memory, и как он работает...Apache Ignite Persistence: зачем Persistence для In-Memory, и как он работает...
Apache Ignite Persistence: зачем Persistence для In-Memory, и как он работает...
 
Механизмы мониторинга баз данных: взгляд изнутри / Дмитрий Еманов (Firebird P...
Механизмы мониторинга баз данных: взгляд изнутри / Дмитрий Еманов (Firebird P...Механизмы мониторинга баз данных: взгляд изнутри / Дмитрий Еманов (Firebird P...
Механизмы мониторинга баз данных: взгляд изнутри / Дмитрий Еманов (Firebird P...
 

Разработка приложений для облаков / Андрей Кожокару (EPAM)