На прошлой неделе было объявлено о том, что отныне все новые сервисы Reddit запускаются в production на инфраструктуре, основанной на Kubernetes-кластерах. Эта значимая веха на пути миграции на K8s одного из популярнейших онлайн-ресурсов, и вот как к ней пришли…
Рубрика «devops» - 79
Истории успеха Kubernetes в production. Часть 10: Reddit
2019-02-26 в 8:40, admin, рубрики: devops, kubernetes, reddit, Блог компании Флант, истории успеха, системное администрированиеLoad Balancers для систем оркестрации
2019-02-24 в 17:44, admin, рубрики: devops, django, docker, haroxy, kubernetes, nomad, traefikК Load Balancers в системах оркестрации (Kubernetes, Nomad и других) предъявляется больше требований, чем просто балансировка загрузки. Во-первых, Load Balancer должен уметь читать каталог, со списком сервисов, на которые необходимо перенаправлять трафик (или, как вариант, давать возможность сервисам регистрироваться на включение их в трафик). Во-вторых, делать это динамически, т.к. системы оркестрации в любой момент могут увеличить или уменьшить количество реплик сервисов, или переместить их на другие адреса в сети. И, в-третьих, делать это без остановки трафика.
В сегодняшнем сообщении я опишу работу с двумя Load Balancers — Traefik и HAProxy. Эти Load Balancers имеют возможность работать с внушительным списком средств оркестрации. В примерах будет описана работа с системой оркестрации Nomad.
Читать полностью »
Паттерны и анти-паттерны CI-CD. Часть 2
2019-02-22 в 14:41, admin, рубрики: devops, автоматизация, Блог компании ОтусВсех с пятницей, друзья. Сегодня делимся с вами переводом второй части статьи «Паттерны и анти-паттерны CI/CD», первую часть которой можно прочитать здесь. Напомним, даная серия публикаций приурочена к запуску нового потока по курсу «DevOps практики и инструменты».
1.3 Паттерны и антипаттерны в тестировании
1.3.1 Автоматизация Тестирования
- Паттерн: Автоматизируйте проверку и валидацию программного обеспечения, включив тестирование юнитов, компонентов, емкости, функционала и развертывания.
- Анти-паттерны: Ручное тестирование юнитов, компонентов, развертывания и тд.
- Юнит- Автоматизация тестов без зависимостей.
- Компонент- Автоматизация тестов с зависимостями от других компонентов, баз данных и файловых систем.
- Развертывание- Автоматизация тестов для проверки успешности развертывания и настройки. Иногда это называют “smoke”-тестированием.
- Функционал- Автоматизация тестов для проверки поведения ПО с точки зрения пользователя.
- Емкость- Автоматизация тестирования нагрузки и производительности в условиях, близких к эксплуатационным.
Опыт построения инфраструктуры на микросервисной архитектуре
2019-02-22 в 11:30, admin, рубрики: devops, python, Анализ и проектирование систем, Кафка, микросервисы
За последний год публикаций о микросервисах стало так много, что рассказывать что это и зачем нужно было бы пустой тратой времени, так что дальнейшее изложение будет сконцентрировано на вопросе — каким способом бы реализовали эту архитектуру и почему именно так и с какими проблемами столкнулись.
У нас в небольшом банке были большие проблемы: 3 python монолита связанных чудовищным количеством синхронных RPC взаимодействий с большим объемом legacy. Что бы хотя бы отчасти решить все возникающие при этом проблемы было принято решение перейти на микросервисную архитектуру. Но прежде чем решиться на такой шаг нужно ответить на 3 основных вопроса:
- Как разбить монолит на микросервисы и какими критериями следует при этом руководствоваться.
- Каким образом микросервисы будут взаимодействовать?
- Как осуществлять мониторинг?
Собственно кратким ответам на эти вопросы и будет посвящена данная статья.
Большое интервью с создателем Jenkins, Kohsuke Kawaguchi
2019-02-22 в 10:36, admin, рубрики: devops, java, Jenkins, Блог компании JUG.ru Group, конференции, Серверное администрированиеПользуетесь ли вы Jenkins? Скорей всего да, потому что это самый популярный на сегодняшний день проект этого класса. Мне всегда интересно было пообщаться с кем-нибудь из разработчиков и задать пару жестких вопросов. Здесь же у нас не просто разработчик, а сам создатель Jenkins — Коске Кавагучи (Kohsuke Kawaguchi).
Как известно, Jenkins — это открытый проект с лицензией MIT. Совсем недавно прошла конференция FOSDEM — самая большая в мире конференция, посвященная свободному программному обеспечению. Бесплатная, открытая, с десятками спикеров со всех уголков мира. Это значит, что там можно встретить кого угодно — даже создателя Jenkins. Небольшим составом друзей и коллег по JUG.ru Group мы устроили туда внезапный десант и смогли записать с создателем Дженкинса хорошее интервью.
Итак, в нашей виртуальной студии Коске Кавагучи (который представится и всё подробно расскажет чуть ниже), Руслан Ахметзянов ARG89 из JUG.ru Group и Кирилл Толкачёв tolkkv из ЦИАН, наш неизменный докладчик, гуру Groovy, Gradle, Spring и стека технологий Netflix, которого вы можете знать по подкасту «Разбор Полётов».
Почему в Kubernetes так сложно с хранилищами?
2019-02-21 в 17:07, admin, рубрики: ceph, csi, devops, docker, k8s, Rook, storage, Блог компании Southbridge, Серверное администрирование, системное администрирование
Когда пришли оркестраторы контейнеров, вроде Kubernetes, подход к разработке и деплою приложений изменился кардинально. Появились микрослужбы, а для разработчика логика приложения больше не связана с инфраструктурой: создавай себе приложения и предлагай новые функции.
Kubernetes абстрагируется от физических компьютеров, которыми управляет. Только скажите ему, сколько надо памяти и вычислительной мощности, — и все получите. Ифраструктура? Не, не слыхали.
Управляя образами Docker, Kubernetes и приложения делает переносимыми. Разработав контейнерные приложения с Kubernetes, их можно деплоить хоть куда: в открытое облако, локально или в гибридную среду, — и при этом не менять код.
Мы любим Kubernetes за масштабируемость, переносимость и управляемость, но вот состояния он не хранит. А ведь у нас почти все приложения stateful, то есть им нужно внешнее хранилище.
KubeSail и его бесплатный Kubernetes-кластер для разработчиков
2019-02-21 в 7:57, admin, рубрики: devops, kubernetes, Блог компании Флант, облачные сервисы
В начале года появился новый веб-сервис KubeSail, созданный двумя американскими Kubernetes-энтузиастами, задавшимися целью «сделать преимущества Kubernetes более доступными для всех разработчиков». Для её достижения они предложили K8s-кластер в виде управляемой услуги (managed service), в рамках которой имеется бесплатный тарифный план.Читать полностью »
I’m going deeper underground, или о чем стоит знать, оптимизируя работу сетевого приложения
2019-02-20 в 10:06, admin, рубрики: devops, haproxy, linux, network, tuning, Серверная оптимизация, Сетевые технологииПриветствую, друзья!
В предыдущих двух статьях (раз, два) мы погружались в сложность выбора между технологиями и искали оптимальные настройки для нашего решения в Ostrovok.ru. Какую тему поднимем сегодня?
Каждый сервис должен работать на каком-то сервере, общаясь с железом посредством инструментов операционной системы. Этих инструментов великое множество, как и настроек для них. В большинстве случаев для их работы настроек по умолчанию будет более чем достаточно. В этой статье я хотел бы рассказать о тех случаях, когда стандартных настроек все-таки было недостаточно, и приходилось знакомиться с операционной системой чуть ближе – в нашем случае с Linux.
Второй митап по OpenStack в Mail.ru Group: 22 февраля
2019-02-19 в 8:38, admin, рубрики: devops, Infrastructure, openstack, Блог компании Mail.Ru Group, Облачные вычисления, облачные сервисы
Привет, друзья. В эту пятницу мы собираем в Mail.ru наш второй @OpenStack Meetup, на котором:
- Коллеги из Hystax на примере клиентского кейса покажут, какой нелёгкой бывает миграция виртуальных машин между облаками и гипервизорами;
- Mail.Ru Cloud Solutions поделятся опытом работы с OpenStack и Linux Storage Stack: о чём часто забывают, планируя хранилище?
- Canonical продолжат рассказывать про свой подход к моделированию инфраструктуры. В этот раз вы узнаете, каким образом MAAS и Juju позволяют в автоматизации упростить работу с серверами с большим количеством сетевых интерфейсов и L3-ориентированной сетевой топологией.
Встреча пройдёт 22 февраля (пятница) в 19:00 в московском офисе Mail.ru Group (Ленинградский проспект, д. 39, стр. 79).
Регистрация обязательна и закрывается 20 февраля в 23:59 (или раньше, если закончатся места).
Читать полностью »