Почему вам еще рано в облако (Станислав Богатырев, Николай Двас)
1. Почему вам еще рано в облако
Станислав Богатырев,
Николай Двас (Clodo)
2. О чем доклад?
• Веб-проект и облако: как правильно положить
одно в другое;
• Облачные buzzwords: scalability, reliability and
availability come true;
• Chef,knife, fog, git – для чего все это облакам и их
клиентам;
• Как это все используем мы и наши клиенты.
Станислав Богатырев, Николай Двас, Clodo
3. Кто мы такие?
• Мы – облачный хостинг;
• У нас есть клиенты – довольные, и недовольные;
• Мы стараемся превращать недовольных в довольных;
• Один из нас – маркетолог, второй – сисадмин. Мы пришли
к взаимопониманию, и спешим этим поделиться.
Станислав Богатырев, Николай Двас, Clodo
4. Почему мы тут?
• Маркетологи сформировали набор ожиданий от
облаков;
• Клиенты в облака приходят, а чуда все не
происходит;
• Маркетологи врали? Это невозможно. Они просто
забыли договориться с администраторами.
Станислав Богатырев, Николай Двас, Clodo
5. Веб-проект в разрезе
NGINX PHP-FPM MySQL
Железный (виртуальный) сервер
Static (on
memcached Sphinx
FS)
Станислав Богатырев, Николай Двас, Clodo
7. Buzzword # 1 - Scalability
• Не может солдат два мешка
брюквы съесть!
• Конкуренция за одинаковые ресурсы;
• Софт плохо просит добавки;
• 2x2 – иногда больше, а иногда – гораздо
меньше, чем 4.
Станислав Богатырев, Николай Двас, Clodo
9. Scalability + Reliability (но совсем
не идеал)
Load balance Dynamic
cluster content cluster
Database
Load balance App server
``` cluster
Load balance App server DB ```
server
App server DB server
Клиент App server
Cloud Storage
Cloud Storage (back-end)
(front-end)
storage
cache
storage
```
cache
storage
cache
storage
Станислав Богатырев, Николай Двас, Clodo
12. Buzzword # 4 – Cost Reduction
• Ресурсы в облаке значительно дороже, чем
на своем железе;
• Выносить в облако следует переменную
часть и то, что не реализовано у себя
(живые примеры: «Битрикс» на железе;
статика – в облаке).
Станислав Богатырев, Николай Двас, Clodo
13. Облако провайдера / облако
клиента Linux
Linux
Apache
Mysql Linux
Client code Nginx Linux
Deploy(git,…): Client Django
RoR
Live image: Clodo
Chef: Clodo / DIY
Станислав Богатырев, Николай Двас, Clodo
14. Cloud
Пример проекта
Storage
FE BE DB
LB
FE BE DB Backoffice Client
Client SEARCH
MAIL DC
DB
LB …
DB
DC
Станислав Богатырев, Николай Двас, Clodo