Месяц на новой работе

Вид на офис сзади
Вид на офис сзади

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

Python шаблоны в гугловом Deployment Manager

Вот допустим у меня есть файл конфигурации для гуглового Deployment Manager, который создаёт виртуальную машину из убунтового образа, даёт ей временную внешнюю айпишку и отправляет в облако. Ну примерно такой:

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

Но нет, Deployment Manager поддерживает Jinja и Python шаблоны, так что копипасты можно избежать. Давайте смотреть как это делается, например, на Питоне. Читать далее Python шаблоны в гугловом Deployment Manager

Про поход в канадский поход

Турка с кофе

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

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

Далее последует слабо структурированный набор впечатлений об этом теперь уже необычном действе.

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

Автоматизация инфраструктуры в 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

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