Андрей Квапил: «Уже несколько лет мы делаем в Kubernetes то, что только сейчас готовится к production-ready»

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


Андрей Квапил (kvaps) — Solutions Architect в компании Флант. Путь в ИТ он начал с подработки эникейщиком во время учебы в школе. А сейчас создает платформы для автоматического управления инфраструктурой, участвует в open-source-сообществе, пишет статьи и выступает на конференциях. Поговорили с Андреем о его карьере в ИТ, переезде в Чехию и выступлениях на конференциях.

Андрей — один из спикеров VK Kubernetes Conference, которая пройдет 9 декабря 2021 года. 

— Начнем издалека. Ты помнишь, когда впервые начал интересоваться ИТ?


— Первый компьютер в нашей семье появился у деда — он работал профессором в МГУ. Это был Pentium 1133 Mhz с 32 Мбайт памяти, еще с кнопкой Turbo. Мои старшие братья часто играли на нем в Larry, а мне не разрешали. Но меня тогда интересовал не сугубо развратный подтекст игры, а то, насколько широко она использует возможности компьютера. Звуковых карт тогда еще не было, но музыка проигрывалась через спикер. Мне это показалось крутым: компьютер играет музыку, ничего себе!

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

Развлекаться и проводить время за компьютером хотелось, и не мне одному. Однажды я заметил, как моя сестра копалась в системных файлах и нашла много интересного: картинки, видеоролики, системные звуки. Для меня это было большим открытием. Я начал повторять за ней — изучать, что еще можно найти, и таким образом познавать недра Windows. Позже я рисовал скины для Winamp, Light Alloy, QIP и других программ, но тяга к изучению компьютеров и систем появилась у меня именно в этот момент.

— Какой была твоя первая работа в ИТ?


— Я начал работать в 12 лет, когда еще учился в школе. Устроился курьером в офис, где работала мама. Но мою тягу к компьютерам быстро заметили, и я начал подрабатывать эникейщиком.

В компании было несколько серверов, в основном все на Windows. Но была и одна загадочная для меня машина, на которой крутилась Gentoo. Большую часть времени на ней была запущена консоль, но минимальный GUI тоже был: XWM и XScreenSaver с его глючными заставками. В компании работал матерый сисадмин, он рассказывал мне про Gentoo, и для меня это было чем-то странным и завораживающим, но пока недоступным.

Спустя время этот матерый админ покинул компанию, а я понял, что хочу админить не только Windows-серверы, но и Linux. Как раз подвернулась задача — поднять почтовый сервер. На тот момент я еще ничего не знал ни про Postfix, ни про Exim, а решил использовать проприетарный Kerio Connect. Установить его не составило особого труда, но вот настроить роутинг и пробросить порты в iptables для меня оказалось не совсем простой задачей. 

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

— Ты где-то обучался администрированию, Linux и другим технологиям?



Андрей Квапил на DevOps Conf 2021 рассказывает про GitOps

— Нет. Все произошло само собой. Я поступил в колледж, учился на оператора ЭВМ — это был трехлетний курс о том, как заполнять таблички в Excel, базы данных в Microsoft Access, и программировать в Visual Basic. Мне это не было интересно, да и к тому времени я уже и так много знал.

Потом поступил в Московский институт радиотехники, электроники и автоматики. Мне нравилось учиться, но предметы по специальности мне были неинтересны — я знал гораздо больше некоторых преподавателей. На одном занятии произошел забавный случай. Преподаватель начал показывать прошивку DD-WRT, а затем сказал: «А вообще, это вам лучше Андрей расскажет», и показал на меня.

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

— Хорошо, давай перейдем к работе. Можешь рассказать о своем пути от эникейщика до Cloud-архитектора и DevOps-инженера?


— На тот момент я админил Windows-серверы и занимался сетью. Я хотел быть Linux-админом, хотя практически ничего не знал о Linux.

Пробовал найти новую работу, но с небольшим опытом в Linux меня не брали на полноценного Linux-админа. Спустя время устроился в системный интегратор ЛанКей, так как они предлагали возможность бесплатно получать сертификаты Microsoft, которыми я надеялся прокачать свое резюме. 

Но вместо этого я пошел на аутстаффинг в компанию Konica Minolta. Аутстаффинг — это когда компания предоставляет своих специалистов другой фирме as a service. То есть я был трудоустроен в ЛанКее, но по факту работал в Konica Minolta. В основном поддерживал уже существующую Windows-инфраструктуру и занимался текучкой. Например, подготавливал ОС и заливал ее на компьютеры, устанавливал обновления, решал проблемы пользователей.

Спустя время из российского подразделения Konica Minolta ушел штатный ИТ-менеджер. Они долго не могли найти нового, и поэтому мне стали прилетать и более сложные задачи вроде переустановки и настройки продакшен-серверов. Благодаря этому я многому научился в плане устройства систем и их взаимодействия. Даже смог внедрить Linux там, где это было оправдано: поднял Apache для хостинга лендингов, за что получил прозвище Linux fanboy. 

Но все равно у меня не было настоящей работы с Linux, а мне очень хотелось. Дома экспериментировал с Proxmox, Zentyal и прочим, но все это было just for fun.

Когда набрался больше опыта, начал искать работу целенаправленно как Linux-администратор. Устроился в системный интегратор Crosslab. Мы предоставляли клиентам инфраструктурные решения, построенные преимущественно на свободных технологиях. А вообще, много чем занимались: закупали серверы, протягивали сеть, настраивали телефонию. 

Как раз в Crosslab я получил основной опыт работы с Linux. Начиналось все с настройки Proxmox, Kolab Groupware, Owncloud, Asterisk, а позже появились и более интересные задачки.

Например, большинство наших пользователей работали не локально, а на удаленном сервере. И хотя на их локальных компьютерах использовалась преимущественно Ubuntu, настраивать и поддерживать операционную систему в актуальном состоянии было неудобно. 

Мы хотели внедрить Thinstation, он позволял собрать единый образ системы со всем необходимым и раздавать его на клиентские машины по PXE. Но позже я наткнулся на проект LTSP — и это была просто бомба. LTSP позволял настроить один сервер, который использовался для загрузки всех рабочих станций в офисе. Обновлять и вносить изменения в такой сервер было очень просто, и я взял этот проект себе на вооружение.

Позднее появилась еще одна интересная задача. Нужно было организовать некоторое подобие VDI — то есть сделать так, чтобы при подключении пользователя к серверу для него создавалась отдельная виртуальная машина из шаблона. А после того как пользователь поработал в этой машине и сохранил все на удаленную шару, виртуальная машина уничтожалась. Я использовал для этого OpenNebula, потому что она реализует облачный паттерн, легко кастомизируется и отлично подходит для такой задачи.

Обо всех интересных кейсах я старался писать на Хабр. Цель этих статей — не заявить о себе, а рассказать сообществу об интересных open-source-проектах и их применении в реальной жизни. Также это помогло мне лучше структурировать материал у себя в голове. Кто-то пишет в блокнотик — я пишу статьи на Хабр.

Забавно, что статьи с Хабра иногда переводят на английский сервисы, зарабатывающие на рекламе, причем с помощью грубого машинного перевода. Так перевели несколько моих статей, и на одну из них наткнулись ребята из WEDOS. Они как раз искали решение для своего дата-центра и собирались полностью переходить на виртуализацию. И предложили мне развернуть для них отказоустойчивый кластер OpenNebula с Ceph по разовому контракту.

Была загвоздка: систему нужно было установить на блейд-серверах без iLO и возможности подключить внешний ISO. То есть единственный возможный вариант установить систему — раздать установочный образ по PXE.

Самое забавное, что по ошибке я почти сразу потерял доступ к PXE-серверу. К счастью, у меня остался доступ к шасси, в котором работали и другие тестовые серверы. Пришлось взломать один из них, чтобы раздать загрузочный образ с него. Сейчас вспоминаем эту ситуацию со смехом.
Источник: https://habr.com/ru/company/vk/blog/590935/


Интересные статьи

Интересные статьи

Kubernetes API развиваются и периодически обновляются. Когда готов улучшенный API на замену старому, старый удаляют. См. политику Kubernetes по удалению API.Скоро будет у...
TLDR: кому перестановки делают больнее — меряем свёрткой графов. Выгорание на рабочем месте повстречал ещё в начале своей карьеры — и с тех пор живо интересуюсь этим вопросом. Представьте обста...
Привет, Хабр! Представляю вашему вниманию перевод статьи «How to use multiple programming languages without losing your mind» автора Bart Copeland. Сопливое нытьё про FSF и Red HatКароч, тема ...
27 мая в главном зале конференции DevOpsConf 2019, проходящей в рамках фестиваля РИТ++ 2019, в рамках секции «Непрерывная поставка», прозвучал доклад «werf — наш инструмент для CI/CD в Kubernetes...
Салют, хабровчане! Перевод следующей статьи подготовлен специально для студентов курса «Инфраструктурная платформа на основе Kubernetes», занятия по которому стартуют уже завтра. Начнем. А...