Как стать автором
Обновить
221.33

DevOps *

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

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

Ежегодная конференция разработчиков и пользователей свободного программного обеспечения OSDN Conference

Время на прочтение1 мин
Количество просмотров2.1K
Команда FlyElephant приглашает всех 17 сентября в Киев принять участие в OSDN Conference 14.0 — ежегодной конференции разработчиков и пользователей свободного программного обеспечения.

Основной темой мероприятия традиционно является практическое применение решений с открытым исходным кодом, включая облачные вычисления, DevOps, интернет вещей (IoT) и многое другое. К участию приглашаются все, заинтересованные в создании и использовании свободного ПО.

Актуальный список докладов доступен на сайте конференции. Участие в конференции — бесплатное.

Место проведения конференции — «Нивки Холл» по адресу пр. Победы, 84.

Зарегистрироваться или предложить свой доклад можно на сайте osdn.org.ua.
Всего голосов 17: ↑15 и ↓2+13
Комментарии0

Gitlab-CI

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



Всем привет.
У нас не так много задач, которым необходим полноценный CI. Некоторое время мы использовали в качестве CI-сервиса Jenkins. Там всё довольно очевидно, он прост и гибок в настройке, имеет кучу плагинов, но пару раз мы столкнулись с OOM-убийцами агентов на слабых машинах и решили рассмотреть в качестве CI-сервиса Gitlab CI, потому что мы любим эксперименты и тем более в комментариях к нашей прошлой статье задавали такой вопрос.
Читать дальше →
Всего голосов 26: ↑25 и ↓1+24
Комментарии15

Мгновенный запуск почти любой OS под Linux используя libvirt + qemu

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

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


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


  • Ubuntu
  • Debian
  • CentOS 6/7 + atomic
  • Fedora + atomic
  • CoreOS

Частично:



Публикации поспособствовал коллега, который случайно увидел, как я тестирую код. А теперь о преимуществах перед Vagrant. Первое преимущество — время. Например, три виртуальные машины создаются всего за 20-30 секунд.


image
Читать дальше →
Всего голосов 17: ↑14 и ↓3+11
Комментарии5

Docker: гибкая сеть без NAT на все случаи жизни

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

Время на месте не стоит, и у горячо любимого всеми Docker от версии к версии появляется новый функционал. Случается так, что когда читаешь Changelog для новой версии, видишь там то, что может пригодиться и сделать какие-то вещи лучше, чем есть на данный момент.

Так дело обстояло и в моем случае. Хочу заметить, что многие задачи, которые приходится делать, я делаю по принципу keep it simple. То есть почти всегда, если для решения задачи можно использовать простые инструменты и шаги, я выберу этот путь. Я понимаю, что простой или сложный шаг или инструмент — оценка субъективная, но т.к. работаем мы в команде, то вот такие критерии могут подходить при выборе инструментов:

  • используется ли инструмент в инфраструктуре?
  • если требуется что-то новое, то нельзя ли использовать то, что уже есть?
  • насколько сильно обслуживание (обновление, перезапуск) сервиса будет отличаться от остальных сервисов?
  • <...>

В этой статье речь пойдет о сетевом аспекте Docker. Расскажу обо всем по порядку, но хочу заметить, что на этот раз я не буду говорить «мы используем сеть хоста, всячески избегая применения NAT».
Читать дальше →
Всего голосов 35: ↑35 и ↓0+35
Комментарии31

Истории

Управление контейнерами с LXD

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

Продолжаем наш цикл статей о контейнеризации. Если первые две статьи (1 и 2) были посвящены теории, то сегодня мы поговорим о вполне конкретном инструменте и об особенностях его практического использования. Предметом нашего рассмотрения будет LXD (сокращение от Linux Container Daemon), созданный канадцем Стефаном Грабе из компании Canonical.
Читать дальше →
Всего голосов 28: ↑28 и ↓0+28
Комментарии21

SysV, Upstart, systemd в роли ассортимента граблей Debian/Ubuntu

Время на прочтение5 мин
Количество просмотров36K
Знаете, чем я сейчас занимаюсь? Пишу стартовые скрипты для systemd, и это меня бесит.

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

С другой стороны, «было» — это условность. Все мы часто находимся в относительном неведении относительно того, как устроена наша операционная система. А однажды увидев код /usr/sbin/service ты уже не можешь развидеть его. Так же как и пользоваться этим инструментом.

Наверное, нужно вернуться обратно. Чтобы понять, как мы оказались в такой заднице со смесью SysV и systemd, приправленной Upstart.

TL; DR: автор ноет по поводу зоопарка из SysV, Upstart и systemd в современных дистрибутивах Debian/Ubuntu.
Читать дальше →
Всего голосов 49: ↑44 и ↓5+39
Комментарии170

Хранение конфига ssh в ansible проекте и решение проблемы с туннелями при использовании относительного пути

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

Ansible — прекрасное средство управления серверами. Совместно с git он позволяет перейти в парадигму deploy as code со всеми вытекающими отсюда прелестями, такими как ревью кода, мердж (пулл) реквесты изменений и тому подобное. Особенно это актуально если над этим работает команда, а не единственный человек.


В этом свете становится очевидно удобным хранить настройки подключения к управляемым хостам прямо в этом же репозитории, помимо файла inventory/hosts (его вообще лучше вынести в какой-нибудь сервис вроде CMDBuild или похожие). То есть, если на хосте поменялся скажем порт подключения или IP адрес, остальные члены команды должны это получить при следующем подтягивании изменений из репозитория, а не вносили каждый изменения в свой файл ~/.ssh/config.


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

Читать дальше →
Всего голосов 14: ↑14 и ↓0+14
Комментарии5

Место, где создается будущее Интернета

Время на прочтение4 мин
Количество просмотров11K
image

Прошла неделя с моей второй поездки на IETF, мысли и эмоции немного улеглись, и я решил поделиться своими впечатлениями об IETF.
Читать дальше →
Всего голосов 19: ↑18 и ↓1+17
Комментарии1

15 вещей, которые вы должны знать об Ansible

Время на прочтение9 мин
Количество просмотров77K
Предлагаю читателям «Хабрахабра» перевод опубликованной на codeheaven.io статьи «15 Things You Should Know About Ansible» за авторством Marlon Bernardes.

В последнее время я много работал с Ansible и решил поделиться некоторыми вещами, которые выучил по пути. Ниже вы найдете список из 15 вещей, которые, как я думаю, вы должны знать об Ansible. Что-то пропустил? Просто оставьте комментарий и поделитесь вашими личными советами.
Читать дальше →
Всего голосов 56: ↑55 и ↓1+54
Комментарии11

Как не хранить секреты где придётся, или зачем нам Hashicorp Vault

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

Vault header 


Задайте себе вопрос — как правильно хранить пароль от базы данных, которая используется вашим сервисом? В отдельном репозитории с секретами? В репозитории приложения? В системе деплоя (Jenkins, Teamcity, etc)? В системе управления конфигурациями? Только на личном компьютере? Только на серверах, на которых работает ваш сервис? В некоем хранилище секретов?
Зачем об этом думать? Чтобы минимизировать риски безопасности вашей инфраструктуры.
Начнём исследование вопроса с определения требований к хранению секретов.


Читать дальше →
Всего голосов 42: ↑42 и ↓0+42
Комментарии14

Запуск сценариев автоматизации sparrow на удаленных серверах с помощью инструменатрия SparrowDO/SparrowUP

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

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


До недавнего времени запуск подобных сценариев был ограничен консольным клиентом ( sparrow или sparrowdo ), сегодня я бы хотел презентовать пилотный проект по автоматической установке и запуску sparrow сценариев на удаленных серверах посредством централизованного web сервиса — SparrowUP.


Читать дальше →
Всего голосов 11: ↑11 и ↓0+11
Комментарии2

Ansible-container: новый шаг в управление контейнерами

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


Недавно разработчики Ansible анонсировали новый проект Ansible Container. Проект нас очень сильно заинтриговал, и мы решили рассмотреть его поближе.
Ansible уже давно стал незаменимым инструментом в вопросах создания, сборки, деплоя образов docker-контейнеров и самих docker-контейнеров, благодаря соответствующему модулю.
Ранее для провиженинга docker-контейнеров с помощью Ansible необходим был запущенный в контейнере sshd, но в версии 2.1 в Ansible был добавлен Docker connection plugin, благодаря которому стало возможно запускать плейбуки не только на физических/виртуальных машинах, но и внутри docker-контейнеров и отпала необходимость использования sshd внутри docker-контейнера.

Читать дальше →
Всего голосов 22: ↑21 и ↓1+20
Комментарии13

Мониторинг проектов с помощью месенджера на примере Nagios и Telegram, с разбором факапов из жизни Highload 24x7

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


Что будет под катом:

  • Базовые настройки Nagios в связке с Telegram.
  • Общая концепция нашего с коллегами мониторинга проектов.
  • Разбор граблей, на которые мы успели наступить при работе с этой системой.

Наша статья будет полезна для тех, кто:

  • Недоволен информативностью своего текущего мониторинга.
  • Испытывает ежедневную боль ниже спины с оповещениями о проблемах.

Читать дальше →
Всего голосов 23: ↑20 и ↓3+17
Комментарии30

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

27 августа – 7 октября
Премия digital-кейсов «Проксима»
МоскваОнлайн
19 сентября
CDI Conf 2024
Москва
20 – 22 сентября
BCI Hack Moscow
Москва
24 сентября
Конференция Fin.Bot 2024
МоскваОнлайн
25 сентября
Конференция Yandex Scale 2024
МоскваОнлайн
28 – 29 сентября
Конференция E-CODE
МоскваОнлайн
28 сентября – 5 октября
О! Хакатон
Онлайн
30 сентября – 1 октября
Конференция фронтенд-разработчиков FrontendConf 2024
МоскваОнлайн
3 – 18 октября
Kokoc Hackathon 2024
Онлайн

Анонс публичной бета-версии NGINX Amplify

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


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

Узнать больше и увидеть NGINX Amplify в действии можно записавшись на онлайн вебинар, который пройдет 13 июля в 20:00 по московскому времени.

Также, вы можете начать бесплатно использовать NGINX Amplify прямо сейчас, пройдя регистрацию.
Подробности
Всего голосов 26: ↑23 и ↓3+20
Комментарии64

CodingFuture + Puppet. Часть II: доступ и стандартное окружение (cfauth + cfsystem)

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

Вариант развёртывания Linux систем на базе Puppet 4. Часть II: доступ и стандартное окружение (cfauth + cfsystem)


Вкратце:


  1. cfauth — настраивает сервис SSH, админскую учётную запись, sudo, пароль суперпользователя
  2. cfsystem — настройка: APT, временной зоны, отправки системных писем, синхронизация времени, расширенный список стандартных пакетов
  3. Все модули интегрированы с модулем сетевого фильтра cfnetwork и не требуют дополнительных настроек

Читать дальше →
Всего голосов 12: ↑11 и ↓1+10
Комментарии0

CodingFuture + Puppet. Часть I: сеть и сетевой фильтр (cfnetwork + cffirehol)

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

Вкратце:


  1. cfnetworkPuppet API для полной настройки сети и фильтра через ресурсы Puppet. Идеально дружит с Hiera и потенциально другими "data providers" в концепции Puppet.
  2. cffirehol — "meta-provider" конкретной реализации настройки фильтра для cfnetwork на базе замечательного генератора FireHOL
  3. Пока поддерживаются только Debian 8+ (Jessie и выше) и Ubuntu 14.04+ (Trusty и выше)

Читать дальше →
Всего голосов 8: ↑8 и ↓0+8
Комментарии0

Решение проблемы идентичности сред в DevOps методологии

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

Сегодня многие говорят о DevOps как о методологии, которая помогает разрушить «железный занавес» между IT отделом, QA и программистами и создать некий общий механизм, помогающий делать продукты быстрее и качественнее. Основная задача, которая встает перед DevOps разработчиком — это добиться максимальной автоматизации развертывания development. testing, production сред и переходов между ними. Соответственно одна из основных проблем в данном случае — это соблюсти полную идентичность сред разработки, тестирования и эксплуатации. Под катом приведу пример практического решения данной задачи, которое я использовал в нескольких компаниях в ходе интеграции DevOps методологии.
Читать дальше →
Всего голосов 4: ↑4 и ↓0+4
Комментарии20

Впечатления от конференции DevOpsDays 2013 Mountain View

Время на прочтение7 мин
Количество просмотров5.1K
Конференция закончилась всего несколько часов назад, поэтому в голове еще небольшой сумбур от количества и качества полученной информации. Надеюсь, написав этот пост у меня получиться разобраться в собственных мыслях. Сначала будут общие впечатления, затем кратко пробегусь по докладам и закончу мыслями на тему того, о чем говорили на конференции, благо таких мыслей накопилось по ходу прилично. Хотите узнать, о чем сейчас говорят в мире DevOps? Тогда вам под кат. И да, пост будет длинным, но в конце будет бонус-сюрприз).
Читать дальше →
Всего голосов 20: ↑19 и ↓1+18
Комментарии1

12 антипаттернов DevOps

Время на прочтение6 мин
Количество просмотров16K
От переводчика. Продолжая серию переводов про DevOps, в этот раз хочется поговорить о том, как делать НЕ надо. Мы сталкивались с этим, каждый раз, когда приходит что-то новое, например agile. Возникают культы карго, слышаться речи, что мы особенные и у нас все не так и так далее. Так давайте же попробуем избежать этого в случае DevOps.

Итак, вы хотите стать DevOps? Хорошо, но прежде чем начать, давайте взглянем на некоторые вещи, которые вы не должны делать.

В старые добрые времена, мы просто называли их «плохие идеи», но появилась дипломатия и политкорректность, ушел «мозговой штурм» и появился «idea shower», а вместе с ним и слово «анти-паттерны».

Если «паттерн» это правильный путь, то по своей сути «анти-паттерн» является неправильным — и поэтому, чтобы не дать вам пойти неверным путем, мы составили этот список (с небольшой помощью DevOps сообщества).
Читать дальше →
Всего голосов 19: ↑5 и ↓14-9
Комментарии18

11 важных вещей, которые нужно знать про DevOps — часть вторая

Время на прочтение6 мин
Количество просмотров12K
(Продолжение перевода, первая часть здесь)

8. Как Infosec и QA интегрируются в поток работ DevOps?

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

Примером риска, связанного с недостаточно проверенным процессом развертывания, является известная проблема Dropbox в 2011, когда аутентификация была отключена на четыре часа, что позволило неавторизованным пользователям получить доступ ко всем хранимым данным.
Читать дальше →
Рейтинг0
Комментарии0

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

Работа

DevOps инженер
50 вакансий