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

Разбор: ООМ на узле Kubernetes - 1

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

Случай первый

Суббота, 15 июня 2019 г., 17:12

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

Инфраструктура — это то, от чего зависит работа и прибыль IT-бизнеса. Все процессы, которые происходят с кодом от компьютера разработчика и до продакшена, зависят от бесперебойной работы серверов, ПО, внешних сервисов. Если инфраструктура не работает как надо, бизнес теряет прибыль.

Стартапы не особо уделяют внимание инфраструктуре — надо продукт пилить, пока деньги инвесторов не кончились. В больших компаниях уже не до нее — у нас тут тысячи задач, работать надо.

До понимания, что инфраструктура IT-компании это тоже продукт, что у нее есть цель, что надо считать затраты и отслеживать метрики, дело часто не доходит.

Знаете ли вы сколько стоит ваша инфраструктура: серверы, ПО, внешние сервисы? Как вы считаете затраты на нее, по каким метрикам? Сколько вы потеряете, если что-то упадет или не будет бэкапа? Ответы на эти вопросы знает Артём Науменко (@entsu) из Skyeng. Он работал как в компаниях с двумя разработчиками в штате, так и в корпорациях с тысячей сотрудников. Сейчас руководит инфраструктурой в Skyeng и, одновременно, СТО детского обучения Skyeng. Артем расскажет как в компании строят инфраструктуру, как зарабатывают на ней деньги и какие ошибки не стоит допускать.
Читать полностью »

Я должен признаться. Я ненавижу docker. Всей своей душой. Это самая ужасная софтина, которую я видел за последние 10 лет.

С одной стороны, я очень уважаю одноименную компанию. Ребята из Docker Inc. реально популяризировали контейнеризацию. Теперь о ней не знает только ленивый. С другой стороны, ничего принципиально нового они не изобрели — контейнеризация на момент, когда Docker "выстрелил", уже существовала более 30 лет (начиная от cgroups, вспомним еще jails и zones, ну, и наконец-то — namespaces & cgroups).

Круто, что docker реально ускоряет разработку во множество раз. Если вести ее правильно, то даже без потери в качестве. В любом случае, docker здесь, от него не деться и приходится им пользоваться.

Но почему у меня этот продукт с логотипом кита вызывает столь разнообразные эмоции? Ниже я перечислю те моменты, от которых бомбит. Возможно, что читатель будет не согласен или, напротив, найдет какие-то вещи, о которых не знал и сочтет интересными.

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

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

Несколько дней назад индийский энтузиаст представил своё детище kubelive как попытку «повторно изобрести kubectl, сделав утилиту более реактивной и интерактивной». Этот анонс с большим энтузиазмом встретили на Reddit.

Kubelive — CLI-утилита, полностью написанная на JavaScript (Node.js) и использующая в своей работе клиентскую библиотеку для Kubernetes, реализованную на TypeScript (@kubernetes/client-node). Основное предназначение нового инструмента — отображать сведения о кластере и его ресурсах в реальном времени, предлагая для этого понятный (консольный) интерфейс.Читать полностью »

Picture 9

This is a second article, which focuses on usage of the PVS-Studio analyzer in cloud CI-systems. This time we'll consider the platform Azure DevOps — a cloud CICD solution from Microsoft. We'll be analyzing the ShareX project.
Читать полностью »

Перекрестная репликация между PostgreSQL и MySQL - 1
Я в общих чертах расскажу о перекрестной репликации между PostgreSQL и MySQL, а еще о методах настройки перекрестной репликации между этими двумя серверами базы данных. Обычно базы данных в перекрестной репликации называются однородными, и это удобный метод перехода с одного сервера реляционной СУБД на другой.

Базы данных PostgreSQL и MySQL принято считать реляционными, но с дополнительными расширениями они предлагают возможности NoSQL. Здесь мы обсудим репликацию между PostgreSQL и MySQL, с точки зрения реляционных СУБД.

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

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

Обзор Kubecost для экономии средств на Kubernetes в облаках - 1

В настоящее время всё больше компаний переводят свою инфраструктуру с железных серверов и собственных виртуалок в облака. Такое решение легко объяснить: нет необходимости заботиться о железе, кластер легко конфигурируется множеством различных способов… а самое главное — имеющиеся технологии (вроде Kubernetes) позволяют просто масштабировать вычислительные мощности в зависимости от нагрузки.

Всегда важен и финансовый аспект. Инструмент, речь о котором пойдет в этой статье, призван способствовать сокращению бюджетов при использовании облачной инфраструктуры с Kubernetes.Читать полностью »

Лучшие практики для контейнеров Kubernetes: проверки работоспособности - 1
TL;DR

  • Чтобы добиться высокой наблюдаемости контейнеров и микросервисов, журналов и первичных метрик мало.
  • Для более быстрого восстановления и повышения отказоустойчивости приложения должны применять Принцип высокой наблюдаемости (HOP, High Observability Principle).
  • На уровне приложение для НОР требуется: должное журналирование, тщательный мониторинг, проверки работоспособности и трассировки производительности/переходов.
  • В качестве элемента НОР используйте проверки readinessProbe и livenessProbe Kubernetes.Читать полностью »

Держи багОбщаясь с людьми на конференциях и в комментариях к статьям, мы сталкиваемся со следующим возражением: статический анализ сокращает время на нахождение ошибок, но отнимает время у программистов, что нивелирует пользу от его использования и даже наоборот тормозит процесс разработки. Давайте разберём это возражение и покажем, что оно беспочвенно.
Читать полностью »

bugTalking to people at conferences and in comments to articles, we face the following objection: static analysis reduces the time to detect errors, but takes up programmers' time, which negates the benefits of using it and even slows down the development process. Let's get this objection straightened out and try to show that it's groundless.
Читать полностью »


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