Тази година Plesk реши да изпрати няколко души на KubeCon — най-значимото събитие за Kubernetes в света. В Русия няма конференции, специализирани по тази тема. Разбира се, говори се за K8s и всички го желаят, но толкова много компании, които го прилагат, не се събират на едно място никъде другаде. Аз бях един от участниците, тъй като работя по платформа, основана на Kubernetes.
За организацията
Мащабите на конференцията са внушителни: 7000 участници, огромен изложбен център. Преходът от една зала в друга отнемаше 5-7 минути. По едно и също време се провеждаха 30 доклада на различни теми. Имаше огромно количество компании със свои щандове, на които разиграваха много добри и няколко отлични награди, а също така раздаваха сувенири като тениски, химикалки и други приятни неща. Всичкото общуване беше на английски език, но не срещнах никакви затруднения. Ако това е единственият фактор, който ви спира да ходите на международни конференции, смело отидете. Английският в ИТ е по-прост от обикновения английски благодарение на множеството познати думи, които всеки ден пишете и четете в кода и документацията. Не срещнах и проблеми при възприемането на докладите. В ума ми беше натрупана много информация. Привечер приличах на сървър, на който е било използвано препълване на буфера, и информацията поттичеше право в подсъзнанието ми.
За докладите
Искам да споделя накратко за докладите, които ми харесаха най-много и бих ги препоръчал за观看.
Тази презентация ми направи силно впечатление, тъй като подчерта сериозната болка. Имаме много разпръснати услуги, които се поддържат и развиват от различни хора в екипа. Следваме подходи, основани на инфраструктурата като код, но има някои неразрешени проблеми. Има хранилище с код на Ansible, но текущото състояние и инвентаризацията се съхраняват на машината на разработчика, стартиращ скрипта, където са и креденциалите. Част от информацията може да се намери в Confluence, но не винаги е очевидно къде. Няма място, където просто да натиснеш бутон и всичко да стане добре. Предлага се да се направи описание и да се добави в хранилището не само кодът, но и инструментите за разгръщане. Да се опише къде да се вземат състоянията и креденциалите, да се изпълнява make Install и да се наслаждава на резултата. Искам повече ред в услугите, ще следя релизите на CNAB, ще ги използвам и прилагам, ще убеждавам. Добро ръководство за оформяне на Readme в хранилището.
Има много информация относно проблемите при написването на оператори. Считам, че презентацията е задължителна за гледане за тези, които планират да напишат собствен оператор за Kubernetes. В нея са взети под внимание всички фактори като статуси, управление на боклука, конкурентност и всичко останало. Много съдържателно. Чудесна беше цитата от кода на постоянните обеми на Kubernetes:
K8s счита интеграцията за сложност в полза на простотата на реализиране.
Тази презентация подробно разкрива един от основните архитектурни елементи на кластера — контролния интерфейс, а именно набор от контролери. Описва се тяхната роля и архитектура, основни принципи за създаване на собствен контролер на базата на вече съществуващи.
От най-оригиналните моменти — препоръка да не се прикриват проблемните ситуации зад коректното поведение на контролера, а да се изменя поведението по някакъв начин, за да се сигнализира на системата за възникнали проблеми.
Много интересен опит, много информация с рецепти за това, какво трябва да се вземе под внимание, когато имате наистина висока натовареност. Към Kubernetes те влязоха добре, поддържат 50 клъстера. Разказаха за всички аспекти на извличането на максимална производителност. Препоръчвам да се гледа презентацията, преди да се вземат каквито и да било технически решения за клъстери.
Доклад, след който осъзнах, че Loki определено трябва да бъде опитан за логове в кластера и вероятно ще се остане с него. Същността е: Elastic е тежък. Grafana искаше да разработи леко, мащабируемо решение, подходящо за дебъгване на проблеми. Решението се оказа елегантно: Loki извлича мета информация от Kubernetes (етикети, като в Prometheus) и по тях разпределя логовете. Така можете да изберете парчета от логовете по услуга, да намерите конкретния под, да изберете конкретно време, да филтрирате по код на грешка. Тези филтри работят без пълнотекстово търсене. Постепенно стеснявайки кръга на търсене, можете да стигнете до конкретната нужна грешка. В края все пак се задейства търсенето, но тъй като кръгът е стеснен, скоростта е достатъчна без индексиране. При натискане на нея се зарежда контекст — няколко реда преди и няколко реда лог след. Така то изглежда като търсене на файл с логове и греп по него, но е малко по-удобно и в същия интерфейс, където са метриките. Умее да брои броя на вхожденията на търсенето. Самите търсения наподобяват езика на Prometheus и изглеждат прости. Докладчикът обърна внимание на това, че решението не е много подходящо за аналитика. Настоятелно препоръчвам на всички, които се нуждаят от логове, да погледнат, много лесно представяне.
Много ясно са показани процесите на канареечния и синьо-зеления деплой. Препоръчвам да се види докладът на тези, които все още не са се запознали с това. Докладчиците представят решението под формата на разширение за перспективна CI-CD система ARGO. Английският език на докладчика от Русия е по-лесен за слушане от речта на останалите докладчици.
Един от най-трудните аспекти на управлението на кластер остава настройката на сигурността, особено правото на достъп до ресурсите. Вградени примитиви на K8s позволяват да настроите авторизацията така, както искате. Как безболезнено да поддържате тях в актуално състояние? Как да разберете какво става с правата на достъп и да отладите създадените роли? В този доклад е представен не само преглед на няколко инструмента за отладка на авторизацията в K8s, но и са посочени общи препоръки за изграждане на прости и ефективни политики.
Други доклади
Не бих препоръчал. Някои бяха капитански, а други обратно много сложни. Препоръчвам да влезете в този плейлист и да погледнете всичко, което е обозначено като keynote. Това ще ви позволи да обхванете индустрията около Cloud Native Apps в широка перспектива, а после е добре да натиснете ctrl+f и да търсите по интересуващи ви ключови думи, компании, продукти и подходи.
Ето линк към плейлист с доклади, обърнете внимание на него
Относно щандовете на компаниите
На щанда на Haproxy ми подариха тениска за сина. Съмнявам се, че заради това ще заменя Nginx с haproxy в продукция, но те ми запомниха най-силно. Кой знае какво ще направят новите собственици с Nginx.
На щанда на IBM през всичките три дни проведоха кратки доклади и привлякоха хора, разигравайки Oculus Go, слушалки Beats и квадрокоптер. Трябваше да прекарате 30 минути на щанда. Два пъти за три дни опитвах късмета — не спечелих. Кратки доклади имаше и при VMWare, и при Microsoft.
На щанда на Ubuntu направих това, което явно направиха всички — снимка с Шаттлворт. Общителен мъж, зарадва се, когато научи, че я ползвам от 8.04 и че сървърът с него е работил 10 години без dist upgrade без нито един прекъсване (въпреки че без интернет достъп).
Ubuntu разработва своя MicroK8s — Бърз, Лек, Водещ разработчик на Kubernetes
Не успях да подмина уморения Дмитрий Столяров, поговорихме за трудните дни на инженерите, поддържащи Kubernetes. Четенето на докладите ще делегира на колегите си, но подготвя някакъв нов формат на представяне на материалите. Призоваваше да се абонирате за канала на Фланта в youtube.
IBM, Cisco, Microsoft и VMWare инвестираха много пари в щандовете. По-скромни щандове имаше при опен сорс колегите. Общувах на щанда с представители на Grafana, убедиха ме — необходимо е да опитам Loki. Изглежда, че пълнотекстовото търсене в системата за логиране е нужно само за аналитика, а за решаване на проблеми достатъчно е да използвате системи от нивото на Loki. Общувах с разработчиците на Prometheus. Те не планират да правят дългосрочно хранилище за метрики и да намаляват данни. Препоръчват да се гледа cortex и thanos като средство за решение. Имаше много щандове, необходима беше цял ден, за да обиколя всички. Десет решения за мониторинг като услуга. Пет секюрити услуги. Пет перформънс услуги. Десет UI за Kubernetes. Много, които предлагат k8s като услуга. Всички искат своя дял от пазара.
Amazon и Google наели дрвја со вештачка трева на покривот, поставија лежалки. Amazon делеше шолји и сервираше лимонада, а на штандот зборуваа за иновациите во работата со spot инстанците. Google делеше колачиња со логото на Kubernetes и направи одлична фотозона, а на штандот фаќаше голема enterprise риба.
За Барселона
Заславен сум во Барселона. Бев таму втор пат, прв пат во 2012 година на панорамска екскурзија. Тоа е неверојатно, но многу факти се вратија во меморијата, можев многу да кажам на моите колеги, бев мини водич. Чист морски воздух моментално ми ја ослободи алергијата. Вкусни морски плодови, паеља, сангрија. Многу топла, сончева архитектура. Ниска градба, многу зеленила. За овие три дена пешачевме околу 50 километри, низ овој град сакам да прошетам повторно и повторно. Сето тоа по предавањата, навечер.
Што главно научив
Многу сум среќен што имав можност да посетам оваа конференција. Таа ги расредуваше работите кои до сега не беа организирани. Инспирираше, направи некои работи очигледни.
Црвената нишка помина низ мислата: Kubernetes не е конечна точка, туку алатка. Платформа за создавање платформи.
А главната задача на целата активност: да собирате и стартувате скалливи апликации
Основните правци врз кои работи заедницата се кристализираа. Приближно, како што во свое време се појавија 12 фактори за апликации, се појави список на тоа што и како да се направи за инфраструктурата во целина. Ако сакате, може да се нарече тоа трендови:
- Динамички средини
- Јавни, хибридни и приватни облаци
- Контејнери
- Service mesh
- Микросервиси
- Неопходна инфраструктура
- Декларативен API
Овие техники овозможуваат изградба на системи со следниве карактеристики:
- Заштитени од загуба на податоци
- Еластични (прилагодување под оптоварување)
- Управливи
- Набљудувани (три столба: мониторинг, логирање, трасење)
- Коишто можат да носат сериозни промени често и предвидливо безбедно.
CNCF избира најдобрите проекти (мали список) и поддржува вакви работи:
- Разумна автоматизација
- Отворен код
- Слобода во изборот на добавувачи на услуги
Kubernetes е сложен. Идеологически и по части е прост, но в цялостен план е сложен. Никой не показа решения all-in-one. На пазара на k8s като услуга и на целия останал пазар е дикият запад: поддръжката се предлага както за 50$, така и за 1000$ на месец. Всеки се задълбочава в някаква част и копае в нея. Някои в мониторинга и таблата за управление, други в производителността, а трети в сигурността.
K8S, всичко тепърва започва!
Източник: habr.com
