Автоматизация инфраструктуры в GCP с Deployment Manager

deployment manager

Даже не знаю, как так получилось, но даже регулярно пересекаясь с Google Cloud Platform последние два года, я абсолютно упустил тот факт, что в GCP есть свой собственный инструмент для автоматизации развёртывания инфраструктуры: создания виртуальных машин, аккаунтов, сетей и прочего. Но он реально есть! В главном меню даже есть ссылка.
Инструмент называется Deployment Manager и он может автоматически создать практически всё, что есть Google Cloud. Прямо с одной команды. Так как DM разрабатывал Гугл, то у первого весьма извилистая кривая обучения, не всегда свежая документация, и иногда неочевидные логика. Но штука работает. Так как до этого я в основном автоматизировал развёртывание приложений от хоста и вверх — через всякие VagrantAnsibledocker-compose или kubectl, по посмотреть, как делать первую половину задачи — от хоста и вниз, — будет весьма интересно.

Читать далее Автоматизация инфраструктуры в GCP с Deployment Manager

Как канадская полиция решает бытовые конфликты

police

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

Новые технические посты и летающие роботы

смена парадигмы

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

Но почти сразу же статьи ушли в совсем уж неожиданное направление: микро-сервисы, распределённые приложения и  DevOps. Иногда случались какие-то пересечения с тем, что я делаю на работе, но в основном я просто натыкался на какое-нибудь интересное слово или концепцию, разбирался, о чём это вообще, а потом писал блог пост. Распределённые приложения и то, что их окружает, стали хобби, а на хобби не жалко убить пару-тройку часов, которые иначе были бы потрачены на сон. Читать далее Новые технические посты и летающие роботы

Про неожиданный карьерный поворот

карьерный поворот

А тем временем моя затянувшаяся эпопея с печалью от текущей работы и непонятным поиском новой, кажется, разрешилась. Для этого всего-то потребовалось пособеседоваться ещё в двух местах. Эти два места настолько разные, то я, пожалуй, расскажу и про то, и про другое. Читать далее Про неожиданный карьерный поворот

Краткое введение в helm

helm пакетный менеджерЧто-то я давно ничего не писал о Kubernetes. А ведь в нём куча всего интересного происходит. Вот, например, посмотрели мы в прошлый раз как создавать k8s объекты через YAML конфигурацию, и было то хорошо. Но неудобно. Файлов же может быть много, копировать их туда-сюда тоже то ещё удовольствие. А если использовать менеджер пакетов helm, то как бы всё приятно сразу становится. Читать далее Краткое введение в helm

Марш-бросок по канадским Великим озерам — финал

День третий и последний. Понедельник.

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

cottage-outside

Хотя домик и находился в глуши, внутри всё было на уровне и с традиционным североамериканским изобилием. Телевизор рядом с печкой, Wi-Fi среди ёлок, полноценная кухня с диваном и тостером, и конечно же кондиционер. Читать далее Марш-бросок по канадским Великим озерам — финал

Сказ о .NET Core и ошибке его package downgrade

vimdiffЗа последние шесть или около того недель Майкрософт, конечно, отличились: выпустили целую кучу версий .NET Core 2.1 SDK (Preview 2, Release Candidate 1, Early Access, RTM), которые мы все и попробовали. Так как всё происходило в спешке, к выходу финальной версии мой кластер CI серверов выглядел как зоопарк. Там были RC1 сервера, выглядевшие как Early Access. EA сервера, пытающиеся быть похожими на RTM. Ну как и не упомянуть тот единственный RTM сервер, который старался быть похожим на всех. Ну а что, бывает.

Проблемы начались тогда, когда я попытался разгрести этот бардак и поудалять пререлизные машины, поубирать P2, RC1 и EA SDK теги с релизных веток, ну и выкатить свежие билд-сервера с новейшим и стабильным .NET Core SDK 2.1 на них. Ну и ничего, естественно, на них не скомпилировалось.

Читать далее Сказ о .NET Core и ошибке его package downgrade

Марш-бросок по канадским Великим озерам — 2

День второй. Воскресенье.

Второй день

Утро в Оуэн Саунд

Мотель knights inn

Переночевав в Оуэн Саунд, я, наконец, понял, что совсем не люблю мотели. Вообще. В Финиксе на это была уважительная причина — Супер-8 был засран по самую крышу, но здешний Knights Inn оказался вполне ничего и… всё равно не торт. Ну неуютно и всё тут. Читать далее Марш-бросок по канадским Великим озерам — 2

Service mesh, работающий через iptables

Воображаемое распределённое приложение подключённое к service mesh
Воображаемое распределённое приложение, подключённое к service mesh

В общем, в прошлый раз я упомянул, что другой, совместимый с Kubernetes сервис меш — Conduit, работает по иному принципу. В отличие от Linkerd, он не устанавливает прокси на каждую машину и не заставляет клиентов общаться с ним, задав переменную окружения http_proxy. Этот кадр мало того, что подключает клиентские сервисы к мешу по-одному, так ещё и совсем другим способом. Мне нравятся такие идеи, ставящие всё с ног на голову, так что я решил разобрать Conduit на части и посмотреть, что же там у него внутри. Читать далее Service mesh, работающий через iptables

Марш-бросок по канадским Великим озерам — 1

Маршрут по канадским великим озерам

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

Я решил съездить в ещё какое-нибудь приключение. За целых три дня выходных можно ведь объездить раза в полтора больше, чем за аризоновские два. Было бы здорово, конечно, поисследовать Ньюфаундленд, но с ним в конце мая получалась такая дурацкая логистика и за такие безумные деньги, что я остановился на чём-нибудь поближе и по-домашнее. Читать далее Марш-бросок по канадским Великим озерам — 1