Краткое введение в Docker Swarm mode

docker swarmDocker — прекрасен. С ним можно упаковать приложение по контейнерам, забросить их на случайный хост, и всё будет просто работать. Но на одном хосте особо не отмасштабируешься. Да и если хост прикажет долго жить, всё приложение отправится на тот свет вместе с ним. Конечно, для масштабирования можно завести сразу несколько хостов, объединить их при помощи overlay сети, так что и места больше будет, и возможность для контейнеров общаться останется.

Но опять же, как всем этим управлять? Хосты всё ещё могут отмирать. Как быстро определить, какой именно? Какие контейнеры на нём были? Куда теперь их переносить?

Начиная с версии 1.12.0 Docker может работать в режиме Swarm («Рой». В старых версиях был просто Docker Swarm, но тот работал по-другому), и потому способен решать все эти проблемы самостоятельно. Читать далее Краткое введение в Docker Swarm mode

Про поход к канадским окулистам

Prof. Farnsworth

Лет через семь после начала работы программистом я выяснил для себя удивительную вещь: программирование — оно вредное. Особенно для глаз. То есть слухи про это до меня и раньше доходили, но ведь все эти сказки про болезни, старость и, в перспективе, смерть — они же всегда о других людях, так ведь? Но походу оказалось, что законы природы и оптики едины для всех, так что со временем один глаз от постоянного смотрения в монитор заметно сел.

Читать далее Про поход к канадским окулистам

Создаём образ для виртуальной машины с Packer

packer logoКак правило, создавать виртуальную машину с нуля — не совсем разумно. Всё-таки процесс долгий. Например, создание с нуля одного билд-сервера в моём мини-зоопарке занимает 40 минут. Это включает в себя установку пары-тройки SDK, всех доступных обновлений и сертификатов. Но в реальности, чтобы добавить новый, полностью сконфигурированный сервер в кластер, мне нужно минуты три. Как же так?

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

Так уж исторически сложилось, что мы пользуемся своим, домашним инструментом для подготовки образов, но во вселенной есть и бесплатные и open source. Например, Packer. Читать далее Создаём образ для виртуальной машины с Packer

Моя прогрессирующая интернет паранойя

шляпа из фольги

Кажется, я старею. Молодёжь с газонов ещё не гоняю, но стал очень осторожничать в этих ваших интернетах и сильно привередничать, думая, принимать ли очередное «пользовательское соглашение». Читать далее Моя прогрессирующая интернет паранойя

Vagrant для автоматизации Windows хостов

Vagrant Windows

Использовать Vagrant для создания Consul кластера на линуксовых машинах было, конечно, здорово. Но как быть с виндовыми машинами? Всё-таки больше половины разработчиков разрабатывают в Windows. Так что смотреть, как кто-то создаёт пачки линуксовых VM,  — прикольно, но бесполезно.

Но есть хорошие новости: Vagrant поддерживает и Windows. Давно поддерживает. Конфигурация детища Майкрософт практически ничем не отличается от конфигурации пингвинов, но есть, как и во всём, связанным с Windows, некоторые нюансы. Читать далее Vagrant для автоматизации Windows хостов

Канадское электронное правительство и не только

hall of justice

А у нас опять начался и даже почти закончился сезон уплаты налогов. Так как я уже бывалый, то в этот раз подавать декларацию можно исключительно электронно: вбиваю цифры на одном сайте, даю ему 20 баксов, и он отправляет NETFILE прямиком в налоговую. Романтика.

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

Создаём Consul кластер в Vagrant

Vagrant logo

Для двух последних постов про Consul мне пришлось делать простую, но при этом нудную вещь: создавать Консул-кластер руками. Все три виртуальные машины. Дважды. То есть нужно было создать три VM, на каждую скачать Consul, распаковать, узнать IP адрес, скопировать файл настроек… В общем, скука.

С другой стороны, создание контейнеров в Docker — без пяти минут маленьких виртуальных машин — полностью автоматизировано. Есть Dockerfile для конфигурации одного контейнера, есть docker-compose для целой стайки. В общем, красота. Вот бы существовало что-нибудь похожее для конфигурации хостов целиком. Читать далее Создаём Consul кластер в Vagrant

Белорусский паспорт как повод для найма

Паспорт

Присылают мне HR недавно письмо: “Слушай, а ты слыхал что-нибудь о Белорусском Государственном Университете Информатики и Радиоэлектроники?”. С трудом сдерживая внезапный патриотический порыв и гордость за alma mater, я как можно сдержаннее отписался: “Cлышал. Это конвейер по штамповке программистов. Хороших программистов.”

Ответил и ответил. Проходит пара недель и снова приходит письмо от них же: “Слушай, твой земляк из Минска хочет к нам устроиться. Вот его письмо и резюме, пособеседуй пожалуйста”. Странно, до этого мне кандидатов не доверяли. Ну хорошо. Читаю письмо. Читать далее Белорусский паспорт как повод для найма

Проверка состояния сервисов в Consul

Consul logoВ прошлом посте мы создали небольшой Consul кластер с четырьмя сервисами в нём: двумя web сервисами и двумя db. Но так как мы не сказали Консулу, как мониторить их состояние, Консул-агенты абсолютно упустили из виду тот факт, что ни одного сервиса на самом деле не существует. Сегодня мы посмотрим, как это можно было бы исправить: как добавить проверки состояния сервисов, и как эти проверки влияют на способность сервисы обнаружить.

Читать далее Проверка состояния сервисов в Consul

Взрослый взгляд на свои детские сказки

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

Ребёнок жест оценил, и привезённое «Чудесное путешествие Нильса с дикими гусями» я ему перечитывал раз 5 подряд. Но история немного о другом. Окунаясь в детскую ностальгию, я стал замечать в своих сказках какие-то вещи, на которые не обращал внимания раньше. Пугающие вещи.

Читать далее Взрослый взгляд на свои детские сказки

Размышления об эмиграции, жизни, и вообще