Все потоки
Поиск
Написать публикацию
Обновить
352.09

DevOps *

Методология разработки программного обеспечения

Сначала показывать
Порог рейтинга
Уровень сложности

10 мифов о Docker, которые пугают разработчиков

Время на прочтение10 мин
Количество просмотров46K

Источник: 'Nova typis transacta navigatio' (Linz: s.n., 1621), p.12 (British Library, G.7237).


Часто во время разговоров о Docker я слышу мнения, с которыми не совсем согласен.


«Docker по своей сути предназначен для крупных компаний»

«под OSx у него экспериментальная поддержка, под Windows работает еле-еле»

«Я не уверен, что смогу быстро развернуть его локально»

… и еще много всякого.

В этих утверждениях есть доля истины (см. ниже мифы 3 и 5), но она мала, и по большей части реальная картина получается искаженной.


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


Что ж, нетрудно догадаться, почему Docker окружен таким количеством мифов.


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


Давайте поговорим о самых распространенных мифах – тех, с которыми я сталкивался и в которые верил, – и попробуем найти в них истину, а также решения, если таковые имеются.

Читать дальше →

Установка и настройка Puppet + Foreman на Ubuntu 14.04 (пошаговое руководство)

Время на прочтение8 мин
Количество просмотров27K
image Доброго времени суток, жителям Хабра!

Когда число управляемых серверов достигает нескольких десятков, а то и сотен, приходится искать решение по автоматической настройке и управлению таким парком. Тут на помощь приходит Puppet. Почему Puppet? Puppet кроссплатформенный, имеет богатое сообщество, имеет множество готовых модулей (4800+), имеет Enterprise версии. Все эти плюсы не дают усомнится в мощи данного продукта. Но управлять из консоли таким «комбайном» не так просто. Потому для удобного управления и настройки Puppet был разработан Foreman. Далее установка и настройка этой связки на примере задачи управления SSH-ключами.
Читать дальше →

Почему мы уверены в том, что развернули

Время на прочтение6 мин
Количество просмотров14K
image
Часто бывает, когда что-то не работает. И никто не хочет, чтобы что-то не работало по его вине. В контексте больших инфраструктур и распределенных приложений ошибка конфигурации может быть фатальной.

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

Статья будет интересна командам, которые практикуют DevOps или SRE, ответственным Dev, и прочим хорошим людям.
Читать дальше →

Четыре ключевых Linux-навыка в 2017 году

Время на прочтение3 мин
Количество просмотров8.6K

Какие важные навыки вы обновите в новом году?


Перевод
Автор Шон Пауэрс (Shawn Powers)
Опубликовано 03 Января 2017




Иллюстрация: Internet Archive Book Images. Отредактировано Opensource.com. CC BY-SA 4.0

Одна из проблем на пути становления Linux-эксперта заключается в том, что определение того кто такой Linux-эксперт постоянно меняется. Когда я пришел в мир Linux, чтобы стать профессионалом вы должны были быть способны собственноручно собрать ядро. Да чего уж там, чтобы быть просто пользователем Linux на ноутбуке, вы тоже должны были собрать свое собственное ядро. В наши дни, компилирование своего ядра обычно является пустой тратой времени. Это не значит, что этот навык более не важен, но в мире открытого программного обеспечения мы развиваемся на основе достижений других, а дистрибутивы Linux уже обеспечивают нас ядрами ОС которые хорошо работают. Не всегда радикально, но требования к ИТ-профессионалам изменяются каждый год. Ниже приведены четыре ключевых навыка для Linux-профессионала в 2017 г.
Читать дальше →

Практики Continuous Delivery с Docker (обзор и видео)

Время на прочтение7 мин
Количество просмотров31K
Свой блог мы начнём с публикаций, созданных по мотивам последних выступлений нашего технического директора distol (Дмитрия Столярова). Все они состоялись в 2016 году на различных профессиональных мероприятиях и были посвящены теме DevOps и Docker. Одно видео, со встречи Docker Moscow в офисе Badoo, мы уже публиковали на сайте. Новые будут сопровождаться статьями, передающими суть докладов. Итак…

31 мая на конференции RootConf 2016, проходившей в рамках фестиваля «Российские интернет-технологии» (РИТ++ 2016), секция «Непрерывное развертывание и деплой» открылась докладом «Лучшие практики Continuous Delivery с Docker». В нём были обобщены и систематизированы лучшие практики построения процесса Continuous Delivery (CD) с использованием Docker и других Open Source-продуктов. С этими решениями мы работаем в production, что позволяет опираться на практический опыт.

Дмитрий Столяров (Флант) на RootConf 2016

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

Настройка репликации между PostgreSQL и PipelineDB

Время на прочтение6 мин
Количество просмотров4.1K
Данная статья может быть интересна тем, кто уже имеет поверхностное представление о видах и проблематике репликации внутри кластера PostgreSQL, а так же тем, кто решил использовать стриминговую СУБД PipelineDB в качестве реплики в подобном кластере.

PipelineDB — одна из реализаций ныне набирающих популярность стриминговых СУБД. О преимуществах стриминговых СУБД в различных кейсах Вы можете без труда прочитать сегодня на множестве ресурсов. Очень просто принцип их работы визуализирован на сайте www.pipelinedb.com в разделе “How It Works”.

Конкретно PipelineDB это форк PostgreSQL с дополнительной функциональностью, позволяющей хранить только агрегированные данные, рассчитывая дельту из поступающего стрима (отсюда и название этого типа СУБД) на лету. Эти данные хранятся в специальных объектах PipelineDB, называемых continuous views. Сам же стрим в простейшем случае формируется из обычных таблиц, хранимых в этой же БД. Использование данного инструмента позволяет нам избавиться от необходимости создания и поддержки ETL-слоя при подготовке данных для систем отчетности, и может сэкономить Вам кучу времени и нервов. Но я полагаю, что раз Вы это читаете, то Вы уже что-то знаете об этом в объеме достаточном для появления интереса к описываемым здесь событиям.

Мы рассмотрим кейс, в котором на продуктовой среде у нас уже работает СУБД PostgreSQL версии 9.4+, а нам нужно получить ее риалтайм (ну или практически риалтайм) реплику для того, чтобы разгрузить основную базу от множественных и тяжелых SELECT-запросов, получаемых от, например, систем отчетности, DWH или наших витрин данных. И после изучения вопроса Вы можете решить, что именно стриминговая СУБД очень хорошо подходит для такой задачи.
Читать дальше →

Кластер PostgreSQL высокой надежности на базе Patroni, Haproxy, Keepalived

Время на прочтение25 мин
Количество просмотров135K
Привет, Хабр! Встала передо мной недавно задача: настроить максимально надежный кластер серверов PostgreSQL версии 9.6.

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

Планируя кластер я проштудировал много статей, как из основной документации к PostgreSQL, так и различных howto, в том числе с Хабра, и пробовал настроить стандартный кластер с RepMgr, эксперементировал с pgpool.

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

В итоге где-то (уже не вспомню точно где) нашел ссылку на прекрасный проект Zalando Patroni, и все заверте…
Читать дальше →

Состояние сетевой безопасности в 2016 году, подробный отчёт Qrator Labs и Wallarm

Время на прочтение7 мин
Количество просмотров8.9K


«Хабраэффект» наоборот — атаки на Хабрахабр за год (сверху) и на Гиктаймс (снизу). В феврале 2017 на Гиктаймс была нейтрализована атака в 17,5 Гбит/с.



Как компания, чьей основной деятельностью является нейтрализация DDoS, в прошлом году мы наблюдали несколько изменений в отрасли.

Инциденты, связанные с атаками типа «отказ в обслуживании» вновь на слуху — но теперь грамотно выполненные атаки уже угрожают доступности целых регионов. На проблему вновь нужно обращать повышенное внимание — словно мы вернулись на 5—7 лет назад в прошлое.

До прошлого года могло казаться, что проблема DDoS уже достаточно хорошо решена.

Но мощность атак и их сложность в минувшем году выросли радикально. В прошлом даже мощные атаки в 100—300 Гбит/с не вызывали особой «головной боли». Сложные типы атак на протоколы прикладного уровня случались редко.

А в 2016 году мир впервые увидел атаки в 1 Тбит/с, и атаки на L7 стали куда более распространёнными.

Automount afuse

Время на прочтение3 мин
Количество просмотров14K
Я хотел рассказать про своё открытие afuse — автомонтирование файловых систем по требованию, автоматически. Разве не здорово просто сделать:

ls /mnt/remote/web.example.com/var/lib/www/

И сразу увидеть файлы web-сервера, никак не устанавливая с ним соединение специально? Я этим пользуюсь уже давно, а главное:

  • Это работает из любого источника: Не важно, делаете вы указанный вывод в консоли, сохранили ссылку в MC или переходите из favorites вашего любимого менеджера такого как nautilus или dolphin
  • Вы можете переходить на любой хост, куда у вас есть доступ по ключам (настроить запрос пароля тоже можно, но это не интересно)
  • Вы можете запросто указать под каким пользователем входить на сервер, используя @:

    cd /mnt/remote/apache@web.example.com/var/lib/www/
    
Читать дальше →

SmartMonitoring — мониторинг бизнес-логики в Одноклассниках

Время на прочтение10 мин
Количество просмотров14K


Сейчас у нас в Одноклассниках есть четыре географически распределённых дата-центра, 11 тыс. серверов, более 1 тыс. сетевых устройств, 180 сервисов. Под сервисами мы понимаем фото, видео, музыку, ленту и т. д. Ежедневно сайт посещают десятки миллионов уникальных пользователей. И за всем этим хозяйством необходимо следить, чем и занимаются:

  • команда инженеров, которая устанавливает оборудование, меняет диски, решает hardware-инциденты;
  • команда мониторинга, которая как раз ищет эти инциденты и отдаёт в работу другим командам;
  • сетевые администраторы, они работают с сетью, настраивают оборудование;
  • системные администраторы, они администрируют и настраивают портал;
  • разработчики.

Мы сами устанавливаем и настраиваем наши серверы, но так как их очень много, то неизбежно, что каждый день что-то ломается. И наша самая главная задача в таком случае — увидеть поломку быстрее пользователей. Поэтому за работу всего портала отвечает целая команда мониторинга. Они просматривают графики, ищут в них аномалии, заводят инциденты, распределяют «автоинциденты», которые создаются при помощи связки Zabbix + JIRA. Мы не просто мониторим бизнес-логику, но и автоматически её анализируем. Подробнее об этом я и расскажу далее.
Читать дальше →

Использование GlusterFS с кластером Docker swarm

Время на прочтение5 мин
Количество просмотров20K

В этой статье я описал создание в AWS состоящего из трех нод кластера Docker Swarm и подключение к нему общего для всех нод реплицируемого тома GlusterFS.

Читать дальше →

Powershell и кирилица в консольных приложениях (updated)

Время на прочтение6 мин
Количество просмотров155K
В процессе разработки очень часто возникает необходимость запустить из powershell скрипта консольное приложение. Что может быть проще?

#test.ps1
& $PSScriptRoot\ConsoleApp.exe


Читать дальше →

Gitlab «лежит», база уничтожена (восстанавливается)

Время на прочтение1 мин
Количество просмотров84K
image Вчера, 31 января, сервис Gitlab случайно уничтожил свою продакшн базу данных (сами гит-репозитории не пострадали).

Дело было примерно так.
Читать дальше →

Ближайшие события

Powershell и глубина стека

Время на прочтение6 мин
Количество просмотров8.2K
Как разработчик, я часто разрабатываю скрипты развертывания. В одном из проектов передо мной возникла задача автоматизировать развертывание проекта, которое состояло из нескольких десятков заданий, с возможностью настраивать состав разворачиваемых на стенд компонентов.
Читать дальше →

Обзор архитектуры и подсистем деплоя и мониторинга. Как инженеры делают систему прозрачной для разработки

Время на прочтение17 мин
Количество просмотров13K


Константин Никифоров ( melazyk )


Доклад будет про всякие секретные и не очень штуки, которые такая большая компания, как Mail.Ru, использует в мониторинге и для деплоя, и для управления конфигурацией.

Меня зовут Константин Никифоров, я являюсь руководителем группы системных администраторов в компании Mail.Ru. Наша группа занимается обслуживанием проектов target.my.com, рекламными системами Mail.Ru и проектом top.mail.ru. Все три наших проекта достаточно специфичные, потому что мы не обладаем никаким юзер контентом, мы в основном паразитируем на вас, как пользователях, и особенность наша заключается в том, что у нас очень большие PPS на фронтах, что не у многих проектов есть. Т.е. у таких проектов, как Одноклассники, как ВКонтакте, это понятно, потому что они просто огромные, у более мелких проектов такого нет. А мы размещаемся на всех вышеперечисленных и на всех страницах Mail.Ru, поэтому наш PPS еще больше, чем у этих проектов.

Как мы Redis Cluster готовили

Время на прочтение5 мин
Количество просмотров60K


В мире опен сорс есть огромное количество технологий, подходов, паттернов, тулзов и аппов, которые юзает очень много компаний. Как превратить используемое ПО или технологию в конкурентное преимущество? Предлагаю рассмотреть на примере Redis Cluster — как мы прокладывали наш путь.
Читать дальше →

Настраиваем приватный Docker-репозиторий

Время на прочтение3 мин
Количество просмотров93K

Docker одна из горячих тем в разработке. Большинство новых проектов строится именно на Docker. Как минимум, он отлично зарекомендовал себя для распространения ПО, например, наша система поиска по документам Ambar устанавливается с помощью docker-compose.


В начале работы над Ambar мы использовали публичный docker-репозиторий, но с ростом проекта и появлением enterprise версии мы задумались над созданием собственного приватного репозитория. В данной статье мы поделимся своим опытом развертывания селф-хостед репозитория: пошагово опишем весь процесс, попытаемся обойти все подводные камни.

Читать дальше →

Повышаем безопасность контейнеров Docker

Время на прочтение6 мин
Количество просмотров13K


— Сударь, каким образом вас взломали?
— Не образом, а контейнером.
Старинный анекдот

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

Читать дальше →

Как установить доверительные отношения между компьютером и основным доменом

Время на прочтение3 мин
Количество просмотров26K
Здравствуйте Уважаемые читатели Хабрахабра! В просторах интернета каждый из нас может найти много отдельных статей о не прохождении аутентификации компьютера через домен-контроллер, если точнее сказать, компьютер подключенный к домену теряет связь с ним.

Итак, приступим к изучению этой проблемы.
Читать дальше →

Sparrow плагины и Ansible модули — сравнительный анализ

Время на прочтение13 мин
Количество просмотров5K

Введение


Ansible модули и sparrow плагины представляют собой строительные блоки для решения простейших задач из области configuration management и автоматизации деплоя. Ansible модули пользуются в более высокоуровневых сценариях — плейбуках, написанных на языке YAML, в то время как sparrow плгагины аналогичным образом встраиваются в sparrowdo сценарии написанные на языке Perl6.


Данная статья — вольный авторский перевод собственного оригинала с английского.


Читать дальше →

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