Как стать автором
Обновить
-15
5.1
Александр Чекалин @achekalin

Пользователь

Отправить сообщение

Автоматизируем деплой в vCloud с помощью Terraform и cloud-init

Время на прочтение8 мин
Количество просмотров16K

Предыстория: выбирали сертифицированное облако для всякой там сертифицированной жизни. Остановились на кое-каком B2B-колоссе, руководство заключило договор, и отделу SRE пришлось работать с облаком на основе VMware vCloud Director. И, как подобает секте свидетелей Infrastructure as Code, хотелось поменьше сидеть в веб-морде облака и больше -- в конфигурациях какого-нибудь Ansible и Terraform.
Эта статья - плод нескольких вечеров девопсера и бог знает скольких дней и ночей CTO. По горячим следам, поэтому, возможно, она несколько скомканная. Тем не менее, если вы столкнулись с облаком на основе vCloud - будет интересно.

Читать далее
Всего голосов 9: ↑9 и ↓0+9
Комментарии8

MyBee — FreeBSD ОС и гипервизор bhyve как частное облако

Время на прочтение10 мин
Количество просмотров16K

В этой статье будет описано применение ОС FreeBSD в качестве платформы для запуска облачных гостевых ОС с использованием простого API на примере дистрибутива MyBee и тот DevOPS, который мне по нраву.

Читать далее
Всего голосов 18: ↑17 и ↓1+16
Комментарии9

MyBee — FreeBSD OS and hypervisor bhyve as private cloud

Время на прочтение10 мин
Количество просмотров10K

This article is aimed to describe FreeBSD OS as a platform to launch cloud guest OSes with simple API capabilities, using MyBee and DevOPS I really like!

Dive in!
Всего голосов 1: ↑1 и ↓0+1
Комментарии0

Шпаргалка по метрикам производительности cURL: как измерить задержку сервера

Время на прочтение8 мин
Количество просмотров21K


Эту шпаргалку я написал в первую очередь, потому что был несколько озадачен, когда в течение более, чем 10 минут пытался найти в Google значение time_pretransfer. Попробуйте сами, я подожду. Это настоящая загадка!
Читать дальше →
Всего голосов 56: ↑55 и ↓1+54
Комментарии5

Как успешно подготовиться и сдать экзамен AWS Solutions Architect Associate SAA-C02

Время на прочтение5 мин
Количество просмотров12K

Всем привет!

 Меня зовут Сергей Яворский. Я работаю в EPAM Systems около 5 лет. Я хотел бы поделиться своим опытом в получении сертификатов AWS. На данный момент у меня их три, в этом посте я хочу рассказать о своем процессе участия в программе сертификации AWS Solution Architect Associate SAA-C02 в рамках AWS Global Certification Program от EPAM.

 Сначала хотел бы немного пояснить, зачем мне это понадобилось. У меня было две цели:

Читать далее
Всего голосов 11: ↑11 и ↓0+11
Комментарии3

Сетевая безопасность — IPS с использованием BGP

Время на прочтение4 мин
Количество просмотров4.5K

В вопросах именно сетевой безопасности функционально выделяются два компонента:

IDS - Intrusion Detection System, система обнаружения вторжений.

IPS - Intrusion Prevention System, система предотвращения вторжений, компонент, блокирующий злоумышленнику сетевой доступ к атакуемому приложения. Реализована эта система может быть как встроенная в приложение функция, настраиваемый пакетный фильтр на хосте, как фаерволл на периметре защищаемого сегмента сети или же обычный сетевой маршрутизатор с BGP. Вот про этот вариант сегодня и поговорим.

Читать далее
Всего голосов 4: ↑4 и ↓0+4
Комментарии2

Веб-скрейпинг на PHP

Время на прочтение10 мин
Количество просмотров16K


Термин web scraping означает извлечение информации из веб-страниц в интернете. Его ещё называют web crawling или web data extraction.

PHP широко используется в качестве серверного скриптового языка для создания динамических сайтов и веб-приложений. И на нём можно написать веб-скрейпер. Но поскольку мы не хотим изобретать колесо, можно воспользоваться готовыми open-source библиотеками для веб-скрейпинга. Кстати, мы также написали отличную статью про веб-скрейпинг с помощью Node.js и с помощью Python, почитайте. А здесь мы обсудим разные инструменты и сервисы, которые можно использовать с PHP для скрейпинга веб-страниц: Guzzle, Goutte, Simple HTML DOM, Headless-браузер Symfony Panther.
Читать дальше →
Всего голосов 18: ↑17 и ↓1+16
Комментарии6

Kubernetes как сервис — изучение рынка

Время на прочтение11 мин
Количество просмотров7.9K

Привет, Хабр! Как и многие другие, в прошлом году мне пришлось внезапно мигрировать из тесного привычного офиса к себе домой. Я и раньше работал из дома, когда была такая нужда. Но чтобы несколько месяцев подряд — такое со мной случилось впервые. Появилось свободное время, которое я сначала не знал, куда девать. Но потом приспособился, начав изучать вещи, до которых раньше не доходили руки.

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

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

Читать далее
Всего голосов 27: ↑25 и ↓2+23
Комментарии10

Как мы работаем с логами (сбор логов с сервера, возможность визуализации данных при помощи Graylog)

Время на прочтение10 мин
Количество просмотров53K

Привет! Это вторая часть статьи, в которой мы будем разбирать практическое применение платформы Graylog.

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

В частности, разберем настройку сбора логов с сервера и возможность визуализировать полученные данные.

Читать далее
Всего голосов 3: ↑3 и ↓0+3
Комментарии6

Безотказный Zabbix: миграция с асинхронной на групповую репликацию

Время на прочтение11 мин
Количество просмотров5.3K

Всем привет!

Жил был Zabbix с MySQL асинхронной репликацией. И всё бы ничего, но иногда приходилось переключать основной хост и делалось это запуском всяческих Ansible плейбуков, да и при отказе одного из дата центров нужно было проделывать некоторые ручные действия по переключению Secondary реплик на нового мастера. А хотелось чего-то из коробки, отказоустойчивого, и чтобы всё само.

Читать далее
Всего голосов 6: ↑6 и ↓0+6
Комментарии2

Различия индексов MySql, кластеризация, хранение данных в MyIsam и InnoDb

Время на прочтение5 мин
Количество просмотров25K

Как устроены индексы в MySql, чем отличается индексирование в двух наиболее популярных движках MyISAM и InnoDb, чем первичные ключи отличаются от простого индекса, что такое кластерные индексы и покрывающие индексы, как с помощью них можно ускорить запросы. Вот как мне кажется наиболее интересные темы которые раскрою в этой статье. Тут же постараюсь подробно раскрыть тему с позиции того как работает этот механизм внутри. Буквально на пальцах и с позиции абстракций а не конкретики. В общем чтоб было минимум текста и максимум понятно.

Читать далее
Всего голосов 8: ↑8 и ↓0+8
Комментарии3

1 CPU 1 Гб – а я хочу мониторинг, как у больших дядей

Время на прочтение14 мин
Количество просмотров54K


Я обожаю читать на хабре статьи про то, как устроены системы больших интернет-компаний. Кластеры SQL-серверов, монг и редисов. Тут у нас кластер ELK собирает трейсинг, там – сборка логов, здесь балансер выдает входящим запросам traceID и можно отслеживать, как запрос ходит по всем нашим микросервисам. Класс. Но, допустим, у вас совсем маленький проект и вы можете себе позволить лишь VPS минимальной конфигурации. Реально ли на ней сделать мониторинг не хуже, чем у больших проектов? Я решил – надо попробовать.
Читать дальше →
Всего голосов 82: ↑80 и ↓2+78
Комментарии82

Настраиваем отказоустойчивость Pi-Hole в связке с Mikrotik

Время на прочтение6 мин
Количество просмотров39K

В прошлой статье мы внедрили домашний сервер DoH с использованием Pi-Hole, чем не только пофильтровали большое количество рекламы, но и инкапсулировали наши DNS-запросы в HTTPS, что вывело их из поля фильтрации запросов оператором связи.

Всем замечательно это решение, но у него есть один нюанс. Если вдруг у нас закончились деньги на счету у оператора связи или по каким-то другим причинам пропал канал связи до внешнего мира, мы даже не сможем пополнить счет, чтобы восстановить сервис, потому что не будет работать DNS. Или, например, если наш Pi-Hole по каким-то причинам перестал работать - вот вроде и вся сеть работает, и гугл пингуется, а пока не пропишешь другой DNS-сервер - не будет счастья. А если вы еще в этот момент заняты чем-то другим и не можете приступить к восстановлению незамедлительно - домашние негодуют, портят радостное существование своими жалобами и даже котики, чуя общую нервозность, стремятся нагадить вам в тапки.

Огорчать котиков - дело последнее, поэтому в этой статье я опишу, как вы можете внедрить автоматическое переключение с использования Pi-Hole на использование операторских (как, впрочем, и любых других) DNS при проблемах на Pi-Hole.

Читать далее
Всего голосов 16: ↑16 и ↓0+16
Комментарии19

Ubuntu 16.04: Получаем обновления безопасности после окончания основной поддержки

Время на прочтение1 мин
Количество просмотров12K

В апреле 2021 у операционной системы Ubuntu 16.04 закончилась стадия основной поддержки https://wiki.ubuntu.com/Releases и тем самым обозначило прекращение выхода обновлений для неё.

Данный релиз был выпущен в апреле 2016 года и поддерживался до апреля 2021 года.

Однако, пользователи Ubuntu 16.04 могут получить патчи безопасности для своей системы до апреля 2024 года.

Для этого используется подключение к программе Ubuntu Advantage и на один аккаунт можно добавить 3 машины (бесплатно для персонального использования) получив ключ. Все что необходимо для этого - это Ubuntu One аккаунт.

Для коммерческого использования предлагается платная подписка, цены варьируют от $25 за desktop, $75 за виртуальный сервер и $225 за физический сервер в год и выше, более дорогие цены подразумевают не только обновления, но и получение технической поддержки через тикеты и по телефону.

В одном из последних обновлений Ubuntu 16.04 в систему устанавливается утилита ua с помощью которой происходит подключение к сервису

Для подключения к программе получения обновлений необходимо войти в свой аккаунт, получить токен и выполнить команду

sudo ua attach ваш_токен

Проверить статус подключения можно командой

sudo ua status

Тем самым вы будете получать обновления еще три года до апреля 2024. Также следует отметить, что если вы являетесь Ubuntu community member, то вы сможете подключить к сервису до 50 машин.

Следует отметить, что для релизов, которые еще актуальны (ubuntu 18.04, 20.04) существует сервис livepatch и с его помощью возможно получение и установка патчей безопасности ядра без перезагрузки системы. Условия использования сервиса такие же - 3 машины бесплатно (и до 50 машин для community members).

Читать далее
Всего голосов 10: ↑10 и ↓0+10
Комментарии9

Запуск Linux с виртуального диска vmdk на реальном железе и VirtualBox

Время на прочтение3 мин
Количество просмотров10K

Возникла необходимость обеспечить работу Linux как на виртуальной машине (VirtualBox), так и на реальном железе. После долгих поисков и попыток запускать Linux с виртуального диска формата VHD, по примеру Windows, которые либо слишком сложны, либо не работают, я пришел к достаточно простому способу сделать это. Правда не из дисков в формате VHD, а из образа раздела диска в формате VMDK.

Читать дальше →
Всего голосов 9: ↑9 и ↓0+9
Комментарии11

Подготовка шаблона vApp тестовой среды VMware vCenter + ESXi

Время на прочтение14 мин
Количество просмотров9.9K

Перед вами пошаговое руководство по подготовке шаблона vApp для VMware Cloud Director, включающего в себя vCenter Server Appliance и 3 гипервизора ESXi, с целью снижения временных затрат на развёртывании тестовой инфраструктуры VMware. Осторожно, много скриншотов.

Читать далее
Всего голосов 13: ↑13 и ↓0+13
Комментарии0

Как не оконфузиться при выборе автоматического выключателя

Время на прочтение10 мин
Количество просмотров151K

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

Читать далее
Всего голосов 114: ↑114 и ↓0+114
Комментарии218

Телеграм бот для поддержки своими руками

Время на прочтение6 мин
Количество просмотров91K

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

Проблем много, а решение одно: сделать Телеграм бот, который будет работать посредником между вашими пользователями/клиентами и вашей командой поддержки.

Я расскажу, как запустить такого бота бесплатно в 1 клик, и поделюсь кодом.

Читать далее
Всего голосов 22: ↑22 и ↓0+22
Комментарии33

Используем MongoDB вместо memcached: быть или не быть?

Время на прочтение5 мин
Количество просмотров15K
На тему «использование MongoDB вместо memcached» гуглится немало историй успеха. Такое ощущение, что есть широкий класс задач, для которых идея работает неплохо: прежде всего это проекты, где интенсивно используется тэгирование кэша. Но если вы попробуете, то заметите, что в MongoDB не хватает функции удаления из кэша записей, которые читаются реже всего (LRU — Least Recently Used). Как поддерживать размер кэша в разумных рамках? LRU — это, кстати, «конек» memcached; вы можете писать в memcached, не задумываясь о том, что ваш кэш переполнится; но как же быть с MongoDB?

Раздумывая над этим, я написал на Python небольшую утилиту CacheLRUd (выложена на GitHub). Это демон для поддержки LRU-удаления записей в различных СУБД (в первую очередь, конечно, в MongoDB). Ферма таких демонов (по одному на каждой MongoDB-реплике) следит за размером коллекции, периодически удаляя записи, к которым доступ на чтение производится реже всего. Отслеживание фактов чтения той или иной записи кэша происходит децентрализовано (без единой точки отказа) по протоколу, основанному на UDP (почему так? потому что «наивный» вариант — писать из приложения в мастер-базу MongoDB при каждой операции чтения — плохая идея, особенно если мастер-база окажется в другом датацентре). Читайте подробности чуть ниже.

Но зачем?
Читать дальше →
Всего голосов 22: ↑19 и ↓3+16
Комментарии27

Как написать «нанимающее» резюме для разработчика

Время на прочтение9 мин
Количество просмотров13K

Привратники

Ваше резюме будут читать 3 типа людей:

HR или рекрутер

Первый человек, который видит ваше резюме, и скорее всего не технарь. У него есть только один вопрос:

Надо ли показать резюме этого человека техническому специалисту?

Как он это определяет? Для этого ему надо понять, есть ли у этого кандидата нужные навыки. Но HR не является программистом, поэтому ваш разговор может закончиться так:

Простите, но вы нам не подходите. Нам нужен человек с опытом JavaScript, а я вижу что вы программировали только на Angular JS и jQuery.

Читать далее
Всего голосов 16: ↑13 и ↓3+10
Комментарии11

Информация

В рейтинге
766-й
Откуда
Калининград (Кенигсберг), Калининградская обл., Россия
Дата рождения
Зарегистрирован
Активность