Рубрика «devops» - 80

От монолитов к микросервисам: опыт «М.Видео-Эльдорадо» и «МегаФона» - 1

25 апреля мы в Mail.ru Group провели конференцию про облака и вокруг — mailto:CLOUD. Несколько хайлайтов:

  • На одной сцене собрались основные российские провайдеры — про специфику нашего облачного рынка и своих сервисов говорили Mail.ru Cloud Solutions, #CloudMTS, SberCloud, Selectel, «Ростелеком — ЦОД» и «Яндекс.Облако»;
  • Коллеги из «Битрикс24» рассказали, как они пришли к мультиклауду;
  • «Леруа Мерлен», «Открытие», Burger King и Schneider Electric предоставили интересный взгляд со стороны потребителей облаков — какие задачи их бизнес ставит перед IT и какие технологии, в том числе облачные, видятся им наиболее перспективными.

Все видео с конференции mailto:CLOUD можно посмотреть по ссылке, а здесь можно почитать, как прошла дискуссия про микросервисы. Своими — успешными — кейсами избавления от монолитов поделились Александр Деулин, руководитель центра исследования и разработки бизнес-систем «МегаФона», и Сергей Сергеев, директор по информационным технологиям группы «М.Видео-Эльдорадо». Также обсудили близкие вопросы IT-стратегии, процессов и даже HR.
Читать полностью »

Логирование в распределенном php-приложении - 1

В статье пойдет речь о том, какую пользу оказывает логирование. Расскажу о логах по PSR. Добавлю немного личных рекомендаций по работе с уровнем, сообщением и контекстом логируемого события. Будет приведен пример, как можно организовать логирование и мониторинг с помощью ELK в приложении, написанном на Laravel и запущенном через Docker на нескольких инстансах. Распишу важное правило системы оповещения. Приведу пример скрипта, который поднимает одной командой весь стек мониторинга.

Читать полностью »

image
Когда сайтов становится чуть больше чем один, а ресурсов одного сервера хватает с лихвой, встает вопрос как не переплачивать и упаковать все в одну виртуальную машину самого привлекательного сервиса, с учетом того, что когда-нибудь наши приложения разрастутся в масштабную распределенную сеть — мы обязаны заложить зернышко highload.

Читать полностью »

Kubernetes 1.15: обзор основных новшеств - 1

В понедельник должен был официально состояться (но пока этого не случилось) очередной релиз Kubernetes — 1.15. По сложившейся для нашего блога традиции, рассказываем о наиболее значимых изменениях в новой версии.

Информация, использованная для подготовки этого материала, взята из таблицы Kubernetes enhancements tracking, CHANGELOG-1.15 и сооветствующих issues, pull requests, а также Kubernetes Enhancement Proposals (KEP). Поскольку на следующей неделе пройдет конференция KubeCon в Шанхае, у этого релиза был сокращённый 11-недельный цикл (вместо 12 недель), что на количество значимых изменений, впрочем, заметно не повлияло. Итак, поехали!..Читать полностью »

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

Изложенный здесь подход, с примером конкретной реализации, имеет низкий порог вхождения. Технически, уже завтра вы можете начать работать по-новому.
Читать полностью »

Доброго времени суток, уважаемые читатели!

Сегодня DevOps находится на волне успеха. Практически на любой конференции, посвященной автоматизации, можно услышать от спикера мол “мы внедрили DevOps и тут и там, применили это и то, вести проекты стало значительно проще и т. д. и т. п.”. И это похвально. Но, как правило, внедрение DevOps во многих компаниях заканчивается на этапе автоматизации IT Operations, и очень мало кто говорит о внедрении DevOps непосредственно в сам процесс разработки.

Мне бы хотелось исправить это маленькое недоразумение. DevOps в разработку может прийти через формализацию кодовой базы, например, при написании GUI для REST API.

В этой статье хотелось бы поделиться с вами решением нестандартного кейса, с которым столкнулась наша компания – нам довелось автоматизировать формирование интерфейса веб-приложения. Я вам расскажу о том, как мы пришли к данной задачей и что использовали для ее решения. Мы не считаем, что наш подход является единственно верным, но нам он очень даже нравится.

Надеюсь данный материал будет вам интересен и полезен.

Ну что ж, начнем!
Читать полностью »

KubeCon EU 2019: 10 ключевых выводов - 1

Мы с ребятами из Datawire недавно вернулись с потрясающих конференций KubeCon и CloudNativeCon в Барселоне. Мы участвовали в 6 выступлениях на KubeCon, раздали на своем стенде кучу классных (без ложной скромности) футболок, пообщались с десятками людей и посетили крутые выступления. На KubeCon EU было столько всего интересного, что я решил написать пост с ключевыми итогами.

И вот какие выводы я сделал (не в порядке важности):

  1. Многоплатформенность и гибридное облако (все еще) популярны.
  2. Объединение технологий набирает обороты.
  3. Анонс Service Mesh Interface (SMI): следите за новостями.
  4. (Туманное?) будущее Istio.
  5. Политика как код поднимается по стеку.
  6. Облачный DevEx по-прежнему не обходится без проблем.
  7. Компании (все еще) на начальных этапах внедрения технологий.
  8. Локальный Kubernetes реален (но заковырист).
  9. Считайте кластеры стадом.
  10. Успех Kubernetes по-прежнему зависит от сообществ.Читать полностью »

6 небольших советов, чтобы подготовить NodeJS к высоким нагрузкам - 1

Сервис с распознаванием лиц «Look-A-Like» обслуживал тысячи пользователей одновременно

Разработка на NodeJS в качестве хобби — сплошное удовольствие, но когда речь о продакшене для множества пользователей, есть пара вещей, которые стоит знать, чтобы избежать долгого отклика и сбоев.

В рамках работы в MyHeritage мы разработали сервис doppelgänger для Евровидения 2019 года, с помощью которого, загрузив селфи, можно узнать на кого из участников конкурса вы похожи больше всего.

Помимо логики распознавания лиц, приложение имело крайне ясное требование: оно должно было обслуживать десятки тысяч одновременных пользователей, ведь Евровидение смотрят миллионы людей по всему миру.

Читать полностью »

@Kubernetes Meetup #3 в Mail.ru Group: 21 июня - 1

С февральского Love Kubernetes прошла, нам кажется, вечность. Немного скрасило разлуку только то, что мы успели войти в Cloud Native Computing Foundation, сертифицировать наш дистрибутив Kubernetes по Certified Kubernetes Conformance Program, а ещё запустить в сервисе Mail.ru Cloud Containers свою реализацию Kubernetes Cluster Autoscaler.

Пришло время для третьего @Kubernetes Meetup! Вкратце:

  • Газпромбанк расскажет, как они используют Kubernetes в своём R&D для управления OpenStack;
  • Mail.ru Cloud Solutions — как масштабировать приложения в K8S с помощью скейлеров и как готовили свою реализацию Kubernetes Cluster Autoscaler;
  • а агентство Wunderman Thompson — как Kubernetes помогает им оптимизировать подход к разработке и почему в DevOps больше Dev, чем Ops.

Встреча пройдет 21 июня (пятница) в 18:30 в московском офисе Mail.ru Group (Ленинградский проспект, д. 39, стр. 79). Регистрация обязательна и закрывается 20 июня в 11:59 утра (или раньше, если закончатся места).
Читать полностью »

Слёрм: гусеница превратилась в бабочку - 1

<TL;DR>

  1. Слёрм действительно позволяет войти в тему Kubernetes или подтянуть свои знания.
  2. Участники довольны. Тех, кто ничего нового не узнал или не решил свои задачи, считанные единицы. Безусловным манибеком первого дня («Если вы чувствуете, что Слёрм вам не подходит, мы вернем полную цену билета») воспользовался всего один человек, обосновав тем, что переоценил свои силы.
  3. Следующий Слёрм пройдет в начале сентября в Питере. Selectel, наш бессменный спонсор, предоставляет не только облако для стендов, но и свой конференц-зал.
  4. Мы повторяем базовый Слёрм (9-11 сентября) и представляем новую программу: Слёрм DevOps (4-6 сентября).

Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js