Pull to refresh
2
0
Александр Харкевич @kharkevich

Systems Engineer

Send message

Уменьшение размера docker образа с spring boot приложением

Reading time4 min
Views17K

Добрый день.


Недавно передо мной встала задача запуска spring boot 2 приложения в kubernetes кластере используя docker образ. Эта проблема не является новой, достаточно быстро я нашел примеры в гугле и запаковал свое приложение. Я был очень удивлен не найдя alpine образ для jdk11 и надеялся что slim будет достаточно небольшим, но момент отправки образа на docker registry я обратил внимание что его размер составлял почти 422 мегабайт. Под катом описание того как я уменьшил docker образ с моим spring boot и java 11 до 144 мегабайт.


Читать дальше →
Total votes 11: ↑11 and ↓0+11
Comments13

Steal: кто крадёт у виртуалок процессорное время

Reading time11 min
Views20K


Привет! Хочу рассказать простым языком о механике возникновения steal внутри виртуальных машин и о некоторых неочевидных артефактах, которые нам удалось выяснить при его исследовании, в которое мне пришлось погрузиться как техдиру облачной платформы Mail.ru Cloud Solutions. Платформа работает на KVM.

CPU steal time — это время, в течение которого виртуальная машина не получает ресурсы процессора для своего выполнения. Это время считается только в гостевых операционных системах в средах виртуализации. Причины, куда деваются эти самые выделенные ресурсы, как и в жизни, весьма туманны. Но мы решили разобраться, даже поставили целый ряд экспериментов. Не то чтобы мы теперь всё знаем о steal, но кое-что интересное сейчас расскажем.
Читать дальше →
Total votes 60: ↑59 and ↓1+58
Comments8

Обзор и сравнение контроллеров Ingress для Kubernetes

Reading time9 min
Views37K


При запуске кластера Kubernetes для конкретного приложения следует понимать, какие требования представляет к этому ресурсу само приложение, бизнес и разработчики. При наличии этой информации можно приступать к принятию архитектурного решения и, в частности, к выбору конкретного Ingress-контроллера, коих на сегодняшний день уже большое количество. Чтобы составить базовое представление об имеющихся вариантах без необходимости изучать множество статей/документации и т.п., мы и подготовили этот обзор, включив в него основные (production ready) Ingress-контроллеры.

Надеемся, что он поможет коллегам в выборе архитектурного решения — по крайней мере, станет отправной точкой для получения более подробной информации и практических экспериментов. Предварительно мы изучили другие подобные материалы в сети и, как ни странно, не обнаружили ни одного более-менее полного, а главное — структурированного — обзора. Итак, заполним же этот пробел!
Читать дальше →
Total votes 47: ↑46 and ↓1+45
Comments19

300 потрясающих бесплатных сервисов

Reading time11 min
Views1.6M


Автор оригинальной статьи Ali Mese добавил ещё 100 новых бесплатных сервисов. Все 400 потрясающих сервисов доступны здесь. И еще подборку +500 инструментов от 10 марта 2017 г. смотрите здесь.



A. Бесплатные Веб-Сайты + Логотипы + Хостинг + Выставление Счета

  • HTML5 UP: Адаптивные шаблоны HTML5 и CSS3.
  • Bootswatch: Бесплатные темы для Bootstrap.
  • Templated: Коллекция 845 бесплатных шаблонов CSS и HTML5.
  • Wordpress.org | Wordpress.com: Бесплатное создание веб-сайта.
  • Strikingly.com Domain: Конструктор веб-сайтов.
  • Logaster: Онлайн генератор логотипов и элементов фирменного стиля (new).
  • Withoomph: Мгновенное создание логотипов (англ.).
  • Hipster Logo Generator: Генератор хипстерских логотипов.
  • Squarespace Free Logo: Можно скачать бесплатную версию в маленьком разрешении.
  • Invoice to me: Бесплатный генератор счета.
  • Free Invoice Generator: Альтернативный бесплатный генератор счета.
  • Slimvoice: Невероятно простой счет.

Читать дальше →
Total votes 341: ↑325 and ↓16+309
Comments107

Ликбез по запуску Istio

Reading time9 min
Views48K


Istio Service Mesh


Мы в Namely уже год как юзаем Istio. Он тогда только-только вышел. У нас здорово упала производительность в кластере Kubernetes, мы хотели распределенную трассировку и взяли Istio, чтобы запустить Jaeger и разобраться. Service mesh так здорово вписалась в нашу инфраструктуру, что мы решили вложиться в этот инструмент.


Пришлось помучиться, но мы изучили его вдоль и поперек. Это первый пост из серии, где я расскажу, как Istio интегрируется с Kubernetes и что мы узнали о его работе. Иногда будем забредать в технические дебри, но не сильно далеко. Дальше будут еще посты.

Читать дальше →
Total votes 19: ↑19 and ↓0+19
Comments1

WearMouse, аэромышь для часов Wear OS

Reading time4 min
Views7.5K
Здравствуй, Хабр! Хочу предложить вашему вниманию немного магии для часов на Wear OS.

Некоторое время назад, незадолго до выпуска Android 9.0, был представлен новый публичный API, позволяющий использовать устройства на Android в качестве Bluetooth-устройств ввода (мышь, клавиатура, геймпад, и т.д.), и вот я создал простое приложение, которое демонстрирует один из способов использования этого API. (Спойлер: это работает не только на девятом андроиде.)

Вы уже могли догадаться из названия, что делает это приложение: по сути, это обыкновенная аэромышь, совместимая с любыми устройствами на Windows, OSX, Linux (включая Raspbian), Chrome OS, Android (включая Android TV), при условии наличия приёмника Bluetooth; не требуются ни root-права, ни «серверное» приложение.
Читать дальше →
Total votes 18: ↑17 and ↓1+16
Comments12

TiKV — распределённая база данных key-value для cloud native

Reading time5 min
Views8K


28 августа организация CNCF (Cloud Native Computing Foundation), стоящая за Kubernetes, Prometheus и другими Open Source-проектами для современных облачных приложений, объявила о принятии нового продукта в свою «песочницу» — TiKV.

Эта распределённая, транзакционная база данных типа ключ-значение зародилась как дополнение к TiDB — распределённой СУБД, которая предлагает возможности OLTP и OLAP и обеспечивает совместимость с протоколом MySQL… Но давайте обо всём по порядку.
Читать дальше →
Total votes 21: ↑21 and ↓0+21
Comments9

Использование Ansible, Terraform, Docker, Consul, Nomad в облаках (Алексей Вахов, Учи.ру)

Reading time10 min
Views15K

Эта статья расшифровка видеодоклада Алексея Вахова из Учи.ру «Облака в облаках»


Учи.ру — онлайн-платформа для школьного образования, более 2 миллионов школьников, регулярно решают у нас интерактивные занятия. Все наши проекты хостятся полностью в публичных облаках, 100% приложений работают в контейнерах, начиная от самых маленьких, для внутреннего пользования, и заканчивая крупными продакшенами на 1k+ запросов в секунду. Так получилось, что у нас 15 изолированных докер-кластеров (не Kubernetes, sic!) в пяти облачных провайдерах. Полторы сотни пользовательских приложений, количество которых постоянно растет.


Я буду рассказывать очень конкретные вещи: как мы переходили на контейнеры, как управляемся с инфраструктурой, проблемы с которыми столкнулись, что заработало, а что нет.


В процессе доклада мы обсудим:


  • Мотивацию выбора технологий и особенности бизнеса
  • Инструменты: Ansible, Terraform, Docker, Github Flow, Consul, Nomad, Prometheus, Shaman — web-интерфейс для Nomad.
  • Использовании федерации кластеров для управления распределенной инфраструктурой
  • NoOps выкатки, тестовые окружения, схемы приложения (практически все изменения девелоперы делают самостоятельно)
  • Занимательные истории из практики


Кому интересно, прошу под кат.

Total votes 18: ↑17 and ↓1+16
Comments3

Эффективная разработка и сопровождение Ansible-ролей

Reading time11 min
Views22K
Ansible — система, которая решает различные задачи автоматизации, включая конфигурирование, резервное копирование и деплой проектов. Систему приятно использовать для написания сценариев автоматизации от простого окружения до крупного проекта. В сценариях важную роль играют playbooks и роли — структурированные playbooks.

Ansible не волшебная таблетка, и помогает только на первых порах. Когда проект растет, становится сложно поддерживать разросшееся количество ролей. Помогает решить проблему механизм непрерывной поставки для ролей.

Как раз об этом расшифровка доклада Александра Харкевича на DevOps Conf Russia. В докладе: разработка Ansible-ролей через CI, механизм разработки публичных ролей и публичных ролей с тестовыми прогонами в приватной инфраструктуре. А еще в докладе нет вывода.


Total votes 19: ↑19 and ↓0+19
Comments9

LVEE — самая неформальная и душевная ИТ-тусовка

Reading time6 min
Views4.5K

О событии


Под Минском завершилась ежегодная конференция LVEE 2018 (Linux Vacation/Eastern Europe), организованная белорусской группой пользователей Linux еще в 2005 году. В мероприятии принимали участие более сотни людей из 7 стран, а программу составили 23 доклада, лайтнинги, воркшоп, круглый стол, живое демо и традиционная вечерняя программа неформальной части с шашлыками и свободными дискуссиями.


Читать больше
Total votes 24: ↑22 and ↓2+20
Comments2

Открытый вебинар «Инфраструктура как код»

Reading time1 min
Views3.2K
И снова здравствуйте!

Представляем вам открытый урок курса «DevOps практики и инструменты» на тему «Инфраструктура как код». Игорь Курочкин, преподаватель курса, на пример этой практики рассказывает как можно улучшить взаимодействие команд, ускорить процесс поставки ПО и снизить количество ошибок и показывает основные практики и инструменты для разработки инфраструктурного кода.


Если есть вопросы и комментарии можете оставить их тут или зайти на день открытых дверей и пообщаться с преподавателями курса там.
Total votes 9: ↑9 and ↓0+9
Comments3

Клуб анонимных любителей DevOps

Reading time6 min
Views7.1K
Каждый вторник по вечерам собирается клуб анонимных любителей DevOps. Наши задачи намного амбициознее, чем просто поделиться своей проблемой и, возможно, получить совсет. Мы обсуждаем все тренды отрасли, чтобы на конференции и секции по DevOps самим было бы приятно прийти.

С июля мы работаем над DevOpsConf Russia, профессиональной конференцией по интеграции процессов разработки, тестирования и эксплуатации, которая выросла из RootConf и пройдет 1 и 2 октября в Москве, в Инфопространстве.

Сегодня я расскажу вам, как мы это делаем, какие доклады стараемся отбирать, о чем просим докладчиков.


Читать дальше →
Total votes 39: ↑38 and ↓1+37
Comments3

HAProxy как LoadBalanсer для RDP фермы. Надежное решение за 0$

Reading time8 min
Views35K
Совершенно случайно, в пассивном поиске альтернативы устаревшему 2X-LoadBalancer и тяжелому, непонятному Remote Connection Broker от MS наткнулся на HAProxy и его умению проксировать RDP трафик. В выдачах поисковиков практически не выдается haproxy в качестве прокси для RDP. Сейчас вдруг пачками стал выдавать. Вместе с тем, коммерческие продукты с таким же функционалом, такие как упоминались выше, стоят приличных денег.

В общем, мне показалось, что это может быть кому-то интересным. Поэтому я решил осветить это решение. Плюс, в конце продемонстрирую гибкость использования HAProxy, которой нет у именитых конкурентов.
Читать дальше →
Total votes 20: ↑20 and ↓0+20
Comments32

Как я использую git

Reading time6 min
Views91K

Intro


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


  • git add <path>
  • git commit
  • git checkout <path/branch>
  • git checkout -b <new branch>

И дополнительно:


  • git push/pull
  • git merge <branch>
  • git rebase master (а что, можно еще и на другие ветки ребейзить? О_о)

В принципе, я и сейчас во многом так считаю, но со временем волей-неволей начинаешь узнавать интересные трюки.

Читать дальше →
Total votes 117: ↑106 and ↓11+95
Comments195

Самодельные домашние батареи на 30-100 кВтч делают из аккумуляторов выброшенных ноутбуков

Reading time3 min
Views122K


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

Вторая версия Powerwall хранит до 13,5 кВтч, чего должно хватить на несколько часов (стандартная мощность 5 кВт, а в пике 7 кВт). Проблема лишь в том, что оригинальная версия от Tesla стоит аж $5500 (плюс $700 за сопутствующее оборудование, итого $6200, плюс работы по установке стоят от $800 до $2000) — очень дорого. DIY-мейкеры решили эту проблему с помощью бэушных батареек, которые лежат бесплатно в выброшенных ноутбуках.

Своими руками можно собрать блок с лучшими характеристиками, чем у Tesla (например, на 30-100 кВтч) — и намного дешевле.
Читать дальше →
Total votes 38: ↑34 and ↓4+30
Comments106

Виртуальные твари и места их обитания: прошлое и настоящее TTY в Linux

Reading time14 min
Views67K
Ubuntu интегрирована в Windows 10 Redstone, Visual Studio 2017 обзавелась поддержкой разработки под Linux – даже Microsoft сдает позиции в пользу растущего числа сторонников Торвальдса, а ты всё еще не знаешь тайны виртуального терминала в современных дистрибутивах?

Хочешь исправить этот пробел и открываешь исходный код? TTY, MASTER, SLAVE, N_TTY, VT, PTS, PTMX… Нагромождение понятий, виртуальных устройств и беспорядочная магия? Всё это складывается в довольно логичную картину, если вспомнить, с чего всё началось…
Читать дальше →
Total votes 59: ↑56 and ↓3+53
Comments27

Тюнинг сетевого стека Linux для ленивых

Reading time5 min
Views92K

Сетевой стек Linux по умолчанию замечательно работает на десктопах. На серверах с нагрузкой чуть выше средней уже приходится разбираться как всё нужно правильно настраивать. На моей текущей работе этим приходится заниматься едва ли не в промышленных масштабах, так что без автоматизации никуда – объяснять каждому коллеге что и как устроено долго, а заставлять людей читать ≈300 страниц английского текста, перемешанного с кодом на C… Можно и нужно, но результаты будут не через час и не через день. Поэтому я попробовал накидать набор утилит для тюнинга сетевого стека и руководство по их использованию, не уходящее в специфические детали определённых задач, которое при этом остаётся достаточно компактным для того, чтобы его можно было прочитать меньше чем за час и вынести из него хоть какую-то пользу.

Читать дальше →
Total votes 94: ↑94 and ↓0+94
Comments45

ENTRYPOINT vs CMD: назад к основам

Reading time6 min
Views294K

Construction


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

Читать дальше →
Total votes 28: ↑27 and ↓1+26
Comments17

Ansible и telnet: когда нельзя, но очень хочется

Reading time3 min
Views20K

Telnet is a obviously a very insecure protocol, completely insecure in fact, and we strongly want to discourage usage. We would likely refuse the pull request, to be honest — it is just asking for a world of hurt should MITM possibilities arise.
— Michael DeHaan, создатель Ansible

Абсолютно согласен. Эм, а как мне быть, когда у меня 20 тысяч legacy свитчей, которые перезагружаются/зависают из-за подключения по SSH, а часть оборудования его вообще не поддерживает?
Прошу под кат.
UPD: гайд устарел, потому что в версии 2.5 выпустили отдельный модуль telnet
docs.ansible.com/ansible/latest/modules/telnet_module.html


Читать дальше →
Total votes 15: ↑15 and ↓0+15
Comments11
1
23 ...

Information

Rating
Does not participate
Location
Гомель, Гомельская обл., Беларусь
Date of birth
Registered
Activity