life in the cloud

52
Основи The APP Проблеми и решения Живот в облака Някои истории Ресурси Q/A Life in the Cloud Историите на системният администратор Владимир Витков 2015.09.12 / Questers Beer’n’Code Life in the Cloud Владимир Витков

Upload: zeridon

Post on 15-Jan-2017

610 views

Category:

Technology


0 download

TRANSCRIPT

Page 1: Life In the cloud

Основи The APP Проблеми и решения Живот в облака Някои истории Ресурси Q/A

Life in the CloudИсториите на системният администратор

Владимир Витков

2015.09.12 / Questers Beer’n’Code

Life in the Cloud Владимир Витков

Page 2: Life In the cloud

Cloud услугите навлизат все повече и повече и всички твърдятче ще ви помогнат да си вършите по-бързо и по-ефективноработата. Че ще намалят разходите ви и ще увеличатбезгранично капацитета.

Дали е така или не ще определим накрая. А между временно щепокажем плюсове, минуси, грешки и голяма част от работатакоято Системният администратор ще не ще трябва да свърши зада се случат облачните неща. Ако имате чадър . . . забравете го.В облака не вали, там е буря.

Page 3: Life In the cloud

Основи The APP Проблеми и решения Живот в облака Някои истории Ресурси Q/A

Кой е пред вас

• Владимир• Системен Администратор• Привърженик на FOSS но не и зеалот• Експериментатор• Относително приятен човек за разговор*

Life in the Cloud Владимир Витков

Page 4: Life In the cloud

За мен накратко

Page 5: Life In the cloud

Основи The APP Проблеми и решения Живот в облака Някои истории Ресурси Q/A

Основи

Life in the Cloud Владимир Витков

Page 6: Life In the cloud

Основи The APP Проблеми и решения Живот в облака Някои истории Ресурси Q/A

Що е това Cloud

• Хостинг - изберете си доставчик• Инфраструктура под наем (IaaS) - Amazon / Rackspace• Платформа под наем (PaaS) - Engine Yard / Heroku• Софтуер под наем (SaaS) - Office365 / Pingdom

Life in the Cloud Владимир Витков

Page 7: Life In the cloud

Хостинг - класически познат като уеб хостинг. Ресурси заотдалечено ползване.

IaaS - виртуални машини с които може да правите каквотоискате. Доста работа, държат се като обикновенни сървъри.

PaaS - платформа, която може да прави неща. Качвате си кода(с инструкции) и той работи.

SaaS - Приложения под наем.

Page 8: Life In the cloud

Основи The APP Проблеми и решения Живот в облака Някои истории Ресурси Q/A

Къде и как се използва

• Обработка на данни• Допълнителен капацитет• Намаляне на капиталовите разходи

Life in the Cloud Владимир Витков

Page 9: Life In the cloud

Някои примери за употреба и стратегии за ефективноизползване. Сезонни натоварвания са особенно добър пример.

Page 10: Life In the cloud

Основи The APP Проблеми и решения Живот в облака Някои истории Ресурси Q/A

Предимства и недостатъци

• Там е и е винаги наличен• Лесно се експериментира• Няма (голяма) нужда от Системен администратор• Като супермаркет е• Забравят се неща• Свързаността спира• Дори и в облака се случва да спре тока

Life in the Cloud Владимир Витков

Page 11: Life In the cloud

Налично място за експерименти, винаги има място, винаги можеповече.

Но се плаща и обикновенно няма големи гаранции за наличност(SLA). Проблем е че е като супермаркет. Ниски цени, голямизбор и това сътветно води до големи сметки в различнимоменти.

Зависите от всички доставчици по трасето а и не е нечувано дастане беля.

Page 12: Life In the cloud

Основи The APP Проблеми и решения Живот в облака Някои истории Ресурси Q/A

The APP

Life in the Cloud Владимир Витков

Page 13: Life In the cloud

Основи The APP Проблеми и решения Живот в облака Някои истории Ресурси Q/A

Имаме идея

• Единична машина• Всичко заедно

Life in the Cloud Владимир Витков

Page 14: Life In the cloud

Блестяща идея, нахвърляне на гол скелет, разработване натестово приложение. Всичко това се случва обикновенно на еднамашина (често на разработчика). В тази фаза обикновенно нямаголеми идеи и предвиждане на трафик и разпределенаархитектура. Целият процес е насочен към the thing. Вашатадобва и велика идея.

Page 15: Life In the cloud

Основи The APP Проблеми и решения Живот в облака Някои истории Ресурси Q/A

Production Ready

Life in the Cloud Владимир Витков

Page 16: Life In the cloud

Основи The APP Проблеми и решения Живот в облака Някои истории Ресурси Q/A

Production Ready

• Разделяне на компоненти• Web/App/DB

Life in the Cloud Владимир Витков

Page 17: Life In the cloud

Приложението вече е голямо, изтествано и следва подготовка занормална употреба. Разделят се отделните компоненти, избиратсе размери на машини, преценява се трафика и други.

Ползи от Cloud - лесна подмяна на размера, лесна промяна наброя машини

Обикновенно се ползва 3 tier архитектура с балансъри междунивата.

Page 18: Life In the cloud

Основи The APP Проблеми и решения Живот в облака Някои истории Ресурси Q/A

Now the traffic comes

Life in the Cloud Владимир Витков

Page 19: Life In the cloud

Основи The APP Проблеми и решения Живот в облака Някои истории Ресурси Q/A

Now the traffic comes

• Много Frontend-и• Много Application сървъри• Master/Slave(s) за базата• Oh *BEEEP* the traffic keeps comming

Life in the Cloud Владимир Витков

Page 20: Life In the cloud

С нарастване на популярността се увеличава броят на машини,автоматизират се някои задачи. Идва момент в който трафика енеудържим и администраторите с рудиментарна автоматизациязапочват да изнемогват.

Започват да се мислят решения за автоматично скалиране навсяко ниво от архитектурата

Page 21: Life In the cloud

Основи The APP Проблеми и решения Живот в облака Някои истории Ресурси Q/A

Проблеми и решения

Life in the Cloud Владимир Витков

Page 22: Life In the cloud

Основи The APP Проблеми и решения Живот в облака Някои истории Ресурси Q/A

Прости компоненти

• Тръгват по-бързо• Искат по-малко ресурси• По-Лесни са за управление• По-Лесно се търсят грешки в тях

Life in the Cloud Владимир Витков

Page 23: Life In the cloud

Малките компоненти са по-пъргави, и по лесни за управление.Компонент за сваляне на файлове по адрес, компонент заместене по правила. Това че компонента е малък не значи четрябва да изпълнява само една дейност. Напълно нормално е даизпълнява няколко отделни дейности стига те да са логичноорганизирани.

Page 24: Life In the cloud

Основи The APP Проблеми и решения Живот в облака Някои истории Ресурси Q/A

Прости компоненти (2)

• Зависят един от друг• Повече неща за управление• Повече усилие за съвместимост• Системата става трудна за управление

Life in the Cloud Владимир Витков

Page 25: Life In the cloud

Но за сметка на това са по-голям брой и управлението им катоцяло довежда до нови проблеми. Enter DevOps.

Page 26: Life In the cloud

Основи The APP Проблеми и решения Живот в облака Някои истории Ресурси Q/A

Решения

• Опашки• Твърди API-та• Developers, Developers, Developers• Кеширане

Life in the Cloud Владимир Витков

Page 27: Life In the cloud

Рано или късно се стига до няколко стандартни решения.

Използване на малки компоненти, всеки компонент има твърдодефинирано (и стабилно) API, използване на опашки заразделяне на компонентите и свободен растеж, кеширане,централизирано съхранение на параметри/конфигурации насистемата и други.

Основни водещи трябва да са разработчиците, но това не винагие така. Често се налага администратори с опит да насочватпроцеса.

Page 28: Life In the cloud

Основи The APP Проблеми и решения Живот в облака Някои истории Ресурси Q/A

Живот в облака

Life in the Cloud Владимир Витков

Page 29: Life In the cloud

Основи The APP Проблеми и решения Живот в облака Някои истории Ресурси Q/A

DO’s

• Никога не вярвайте на Sales/Marketing• Бекъпи• Стратегия за възстановяване (DR)• Не се заключвайте• Сървърът не е незаменим

Life in the Cloud Владимир Витков

Page 30: Life In the cloud

Облакът е динамично животно без край. Маркетинга винаги щеви залива с информация която е не напълно вярна. Никога аманикога никога не пропускайте архивните копия. Измислете си иследвайте стратегия за бизнес стабилност и възстановяване(DR/BC). Сървърите са евтини и ефимерни, не ги мислетепрекалено.

Page 31: Life In the cloud

Основи The APP Проблеми и решения Живот в облака Някои истории Ресурси Q/A

DO’s (2)

• Дискът може да изчезне*• Имате си място за игра• SWAP considered harmfull*• Test, Test, Test• Backup, Backup, Backup

Life in the Cloud Владимир Витков

Page 32: Life In the cloud

Както и в реалните машини така и във виртуалните могат даимат проблеми, дисковете се чупят, и не са перманентни (освенако не си ги направите такива).

Всеки един доставчик на клауд услуги има безплатни опции. Даограничени са но ги има. Тествайте на тях. Ако имате локалнидискове, ползвайте ги разумно.

Page 33: Life In the cloud

Основи The APP Проблеми и решения Живот в облака Някои истории Ресурси Q/A

DONT’s• Не разчитайте до безкрайност• Сървърите са бетон• Мрежата е супер ЯКА• Те си имат няколко захранвания• Не прекалявайте с дизайна

Life in the Cloud Владимир Витков

Page 34: Life In the cloud

Сървърите са ефимерни, и безкрайно ненадеждни. Във всякаедна система има проблеми. Много и различни проблеми. Акопрекалявате с ранния дизайн ще имате проблеми. Процеса евинаги итеративен и няма смисъл да се втурвате от самотоначало.

Page 35: Life In the cloud

Основи The APP Проблеми и решения Живот в облака Някои истории Ресурси Q/A

DONT’s (2)

• Не забравяйте неизползвани ресурси• Липсващ мониторинг• Шумен мониторинг• Не следете всичко лично• Не игнорирайте възможностите които имате

Life in the Cloud Владимир Витков

Page 36: Life In the cloud

Облака е готин, облака ни позволява да правим какво ли не, ноне ни плаща сметките. По-точно прави ги големи ако сменевнимателни.

Мониторинг - без него не може, с него не става.Конфигурирайте го правилно за да си нямате проблеми.

Възползвайте се от всичко което ви дава облака, но не зависетеот него. Измислете си процедури и начини да реализиратевсичко и сами.

Page 37: Life In the cloud

Основи The APP Проблеми и решения Живот в облака Някои истории Ресурси Q/A

Някои истории

Life in the Cloud Владимир Витков

Page 38: Life In the cloud

Основи The APP Проблеми и решения Живот в облака Някои истории Ресурси Q/A

Аз само рестартирах машината

• Без процедура• Без инструменти• На ръка• Без архиви• Проста билд машина (лесно)

Life in the Cloud Владимир Витков

Page 39: Life In the cloud

Основи The APP Проблеми и решения Живот в облака Някои истории Ресурси Q/A

Трябва ми бекъпа на dev12

• Статистика от 10TB логове• За вчера• Elastic Map Reduce• 24 hours data upload• 10 hours data parsing

Life in the Cloud Владимир Витков

Page 40: Life In the cloud

Основи The APP Проблеми и решения Живот в облака Някои истории Ресурси Q/A

AWS Total Zone failure

• Once upon a time there was AWS eu-west-1a• It is no more• Sleep . . . for someone else• Let the pain flow trough me

Life in the Cloud Владимир Витков

Page 41: Life In the cloud

Основи The APP Проблеми и решения Живот в облака Някои истории Ресурси Q/A

AWS Power failure

• Инцидент• 600 VM Dead• Mass watchdog failure and disconnect• Аварийно възстановяване на капацитет• Последващи проблеми с разчистването• Oh they are phoenixes (with no mind)

Life in the Cloud Владимир Витков

Page 42: Life In the cloud

Основи The APP Проблеми и решения Живот в облака Някои истории Ресурси Q/A

AWS Network Failure

• Хмм нещо прецъка• 200+ машини изчезнаха• Този път бяхме подготвени• 45 мин полуавтоматично възстановяване• Инфраструкрурни промени

Life in the Cloud Владимир Витков

Page 43: Life In the cloud

Основи The APP Проблеми и решения Живот в облака Някои истории Ресурси Q/A

Blizzard Planning failure

• 1 Mil players in 1 yer• Nope - 3 months• Reactive panic mode• Large scale production refactoring

Life in the Cloud Владимир Витков

Page 44: Life In the cloud

Основи The APP Проблеми и решения Живот в облака Някои истории Ресурси Q/A

Parse 12 mil CV

• Комерсиален Продукт• Perl/XML/C• Heavy as shit• Пусни повече . . . Затлачване• Автоматизирано скалиране• Profit

Life in the Cloud Владимир Витков

Page 45: Life In the cloud

Основи The APP Проблеми и решения Живот в облака Някои истории Ресурси Q/A

Кракване на пароли

• g1/i1/hi1• Клъстер• Почти без пари• Elcomsoft• WPA Cracking

Life in the Cloud Владимир Витков

Page 46: Life In the cloud

Основи The APP Проблеми и решения Живот в облака Някои истории Ресурси Q/A

Правене на пакети

• As easy as a pie*• Процедури• Автоматизация• wanna-build/buildd• Clean Room• Култура

Life in the Cloud Владимир Витков

Page 47: Life In the cloud

Основи The APP Проблеми и решения Живот в облака Някои истории Ресурси Q/A

Тестове/Компилиране

• Cloud is nice• 10 машини ще направят тестовете по-бързо• Jenkins/Hudson master + on demand slaves• Dev is happy• Accounting is happy• There are no builders (Yeah price is too high)

Life in the Cloud Владимир Витков

Page 48: Life In the cloud

Основи The APP Проблеми и решения Живот в облака Някои истории Ресурси Q/A

Ресурси

Life in the Cloud Владимир Витков

Page 49: Life In the cloud

Основи The APP Проблеми и решения Живот в облака Някои истории Ресурси Q/A

Благодарности

• AWS• Nik• Линукс За Българи - http://www.linux-bg.org• Questers - https://www.questers.com• Някой който със сигурност съм забравил

Life in the Cloud Владимир Витков

Page 50: Life In the cloud

Основи The APP Проблеми и решения Живот в облака Някои истории Ресурси Q/A

Връзки

• Slides: http://is.gd/beerncode_slides• http://www.linux-bg.org• http://goo.gl/A6m8OC• https://aws.amazon.com/message/2329B7/• http://youtu.be/xyPzTywUBsQ

Life in the Cloud Владимир Витков

Page 51: Life In the cloud

Основи The APP Проблеми и решения Живот в облака Някои истории Ресурси Q/A

Q/A

Life in the Cloud Владимир Витков

Page 52: Life In the cloud

Основи The APP Проблеми и решения Живот в облака Някои истории Ресурси Q/A

Контакти

• Владимир Витков• [email protected]• http://www.getoto.net/me/

Life in the Cloud Владимир Витков