Pull to refresh
0
0
Дмитрий @s1idern0de

Системный администратор

Send message

Wireshark — подробное руководство по началу использования

Level of difficulty Medium
Reading time 8 min
Views 142K

Wireshark – это широко распространённый инструмент для захвата и анализа сетевого трафика, который активно используется как для образовательных целей, так и для устранения неполадок на компьютере или в сети. Wireshark работает практически со всеми протоколами модели OSI, обладает понятным для обычного пользователя интерфейсом и удобной системой фильтрации данных. Помимо всего этого, программа является кроссплатформенной и поддерживает следующие операционные системы: Windows, Linux, Mac OS X, Solaris, FreeBSD, NetBSD, OpenBSD.

Читать далее
Total votes 41: ↑39 and ↓2 +37
Comments 21

Зачем рассказывать про контейнеризацию в 2023 году

Level of difficulty Medium
Reading time 13 min
Views 22K
image
Техножрец DevOps бережно описывает документацию по проекту

Опытные специалисты с характерным оттенком глаз могут справедливо возмутиться, что это всё уже давным-давно разжёвано и вообще RTFM. И будут отчасти правы. Тем не менее приходят новые специалисты, которые не застали бесплатную рассылку дисков с Ubuntu и вдумчивую компиляцию ОС с нуля.

Каждая новая технология поначалу держится на энтузиастах, которые её полностью понимают. Например, первые пользователи радио знали почти всё про радиосвязь, могли на коленке собрать детекторный приёмник и ловить радио «Маяк» на металлическую вешалку и моток проводов. Первые пользователи GNU/Linux знали всё про ядро и ключевые принципы работы. По крайней мере, вариант «поправил и скомпилировал драйвера для модема, чтобы настроить сеть» был не самым редким. Текущие пользователи обычно не сталкивались с основами, так как начали щупать технологию уже после снижения порога входа.

Те же процессы идут не только в среде потребителей технологий, но и среди инженеров. С одной стороны, узкая специализация совершенно нормальна, с другой — мы рискуем получить аналог культа Галактического Духа на Анакреоне из цикла романов «Основание» Азимова. Техножрецы выполняют сложные ритуалы, ядерные реакторы пайплайны работают. Ровно до тех пор, пока всё не сломается к чертям на низком уровне, а чинить будет некому.

Так происходит и с контейнеризацией. Я всё чаще встречаю на собеседованиях devops-инженеров, которые знают, как пользоваться Docker и Podman, пишут Dockerfile, но теряются, когда спрашиваешь про namespaces, и начинают плавать при вопросе: «А зачем, чем RPM хуже?» Все собирают контейнеры, и я собираю. Таков Путь. Не всегда, кстати, оптимальный.
Читать дальше →
Total votes 59: ↑59 and ↓0 +59
Comments 13

Vagrant в РФ

Level of difficulty Easy
Reading time 2 min
Views 9.3K

Для работы с виртуальными машинами( тестирования Ansible, кластеров и
т.п.) компанией HashiCorp был создан отличный инструмент под названием
Vagrant. Но в прошлом году эта компания заблокировала доступ к своим ресурсам из России, а следовательно пользоваться этим инструментом стало почти невозможно. Для решения этой проблемы был создан публичный репозиторий.

Читать далее
Total votes 16: ↑13 and ↓3 +10
Comments 1

Родительский helm chart для проектов + werf

Level of difficulty Easy
Reading time 6 min
Views 3.9K

Имеем микросервисную архитектуру в k8s, где крутятся и деплоятся сервисы на пхп, го, js ... Под каждый микросервис создается отдельный репозиторий, который содержит помимо исходников кода набор кубернетис ресурсов (deployment, configMap, Secret, Job...)

Читать далее
Total votes 15: ↑15 and ↓0 +15
Comments 5

Поднимаем Kubernetes с нуля

Level of difficulty Medium
Reading time 10 min
Views 44K

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

Читать далее
Total votes 36: ↑33 and ↓3 +30
Comments 55

Учим домашний сервер Linux засыпать при простое и просыпаться по запросу

Reading time 13 min
Views 13K
Всё началось с, казалось бы, обыденного изменения в моём домашнем сервере для хостинга бэкапов Time Machine: я хотел, чтобы он уходил в сон, когда находился в состоянии простоя, и пробуждался при необходимости. Уход в сон при простое — кажется, в Windows эта функция встроена с Windows 98? Насколько сложно будет это настроить на современной версии Ubuntu?

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


Читать дальше →
Total votes 25: ↑25 and ↓0 +25
Comments 22

K8s кластер в Oracle Cloud для Always Free аккаунтов

Reading time 6 min
Views 9.8K

На хабре уже не раз писали про бесплатные вычислительные ресурсы (ARM, 4 CPU, 24ГБ), которые можно развернуть в Oracle Cloud. После регистрации вы получаете $300 и 30 дней триального аккаунта, когда для развёртывания доступны все виды ресурсов. Когда эти 30 дней заканчиваются, аккаунт получает статус Always Free, и количество доступных ресурсов значительно урезается. Чтобы снова получить доступ к ним ко всем, можно сделать upgrade своего аккаунта до Pay-as-You-Go. Это односторонняя операция, переход обратно на Always Free невозможен, и после такого перехода нужно аккуратно следить и и контролировать траты. Тем не менее, Pay-as-You-Go аккаунты также могут бесплатно использовать Always Free ресурсы.

Oracle Cloud предоставляет возможность managed развёртывания K8s кластера (в документации он называется OKE – Oracle Container Engine for Kubernetes), однако он недоступен для Always Free аккаунтов.

Чтобы обойти это ограничение, используем подход полностью ручного выделения облачных ресурсов (сети, виртуальных машин) и установки необходимых компонентов. На выходе получим кластер с четырьмя узлами (один control-plane и три worker'а) с установленным K8s'ом, балансировщиком нагрузки, публичным IP адресом и (бонусом) бесплатным доменом. Воспроизводимые Terraform скрипты (и readme по их использованию) опубликованы на github'е.

Читать далее
Total votes 6: ↑5 and ↓1 +4
Comments 10

Дружим chatGPT 3.5 с выдачей Google в Telegram боте

Reading time 8 min
Views 3.5K

Использование искусственного интеллекта в интернет-поиске становится все более распространенным. Давайте рассмотрим создание Telegram бота, который позволит вам искать ответ в выдаче Google без необходимости заходить на сайты. ChatGPT 3.5 проводит анализ текста сайтов в выдачи Google и формирует чёткий и лаконичный ответ на запрос пользователя.

Читать далее
Total votes 2: ↑1 and ↓1 0
Comments 0

Способы подготовки манифестов для Kubernetes

Level of difficulty Easy
Reading time 6 min
Views 7.2K

Когда последний раз вы подходили к вашему выгоревшему девопсу, по отцовски хлопали его по плечу и говорили — «Мне нравится твой пайплайн»?

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

Читать далее
Total votes 6: ↑5 and ↓1 +4
Comments 1

Через реки, через лес прямо к PowerDNS

Level of difficulty Hard
Reading time 43 min
Views 20K

Всем привет! Меня зовут Максим, я руководитель одной из групп эксплуатации инфраструктурных сервисов в Ozon. Наша команда занимается поддержкой и развитием нескольких базовых сервисов компании, одним из которых, по историческим причинам, является сервис разрешения доменных имен (DNS).

В Ozon много различных сервисов и систем. Они общаются друг с другом и внешним миром по доменным именам. DNS — центральное звено, без которого не обходится почти ни одна инфраструктура. Понятно, что когда DNS отдаёт некорректные данные, то это неприятно, когда таймаутит — плохо, когда прилёг — очень плохо, когда прилёг надолго — в принципе, можно расходиться. Значит, одна из основных задач команды инфраструктуры — обеспечить сервисам надёжное и, желательно, быстрое разрешение доменных имён. Об этом мы и поговорим. Также затронем вопросы управления ресурсными записями, жизнь в Multi DC-среде, обслуживание DNS, кеширование, журналирование запросов и возможные проблемы.

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

Читать далее
Total votes 77: ↑77 and ↓0 +77
Comments 8

Архитектура Hashicorp Vault

Level of difficulty Medium
Reading time 3 min
Views 6.7K

В данной статье описал схему маршрутизации и получения данных в hashicorp vault(это зашифированное хранилище секретов с доступом по политикам). Возможно будет полезно тем, кто думает над архитектурой сервера или слоем(‑ми) доступа к данным.

Читать далее
Total votes 8: ↑6 and ↓2 +4
Comments 0

Terraform: от незнания к best practices

Level of difficulty Medium
Reading time 47 min
Views 25K

Всем привет! Меня зовут Виктор, я DevOps‑инженер компании Nixys, которая помогает другим компаниям внедрять в их IT‑решения передовые практики DevOps, MLOps и DevSecOps.

Сегодня я приглашаю вас вместе со мной пройти путь «от незнания к best practices» в работе с Terraform. Этот материал подготовлен для серии наших одноименных видеороликов на YouTube, но мы решили дополнить его и предложить вам более детальное описание процесса в этой статье.

Не забывайте следить за нашими обновлениями на YouTube, Habr и подписывайтесь на наш Telegram‑канал DevOps FM — мы всегда рады новым друзьям. Начнём?

Читать далее
Total votes 17: ↑16 and ↓1 +15
Comments 7

Гибридный Kubernetes-кластер из bare metal и динамически подключаемых облачных виртуальных машин

Level of difficulty Hard
Reading time 5 min
Views 4.1K

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

Мы решили сделать гибридный кластер Kubernetes на базе существующего bare-metal-кластера, чтобы на лету заказывать узлы у облачного провайдера, когда в основном кластере заканчиваются ресурсы; разворачивать на этих узлах нужные окружения для тестов; сворачивать окружения после выхода изменений в production и отключать узлы. Для этого мы воспользовались модулем cloud-provider-openstack, который входит в состав Kubernetes-платформы Deckhouse.

Читать далее
Total votes 33: ↑33 and ↓0 +33
Comments 0

Визуальные карты сетей кластеров K8s для оценки их производительности

Reading time 8 min
Views 7.1K

Создание производительных сервисов и систем — основа любого бизнеса. Ежедневно появляются кучи новых технологий, которые обещают дать возможности, позволяющие превзойти ваши бенчмарки производительности. Однако продакшен-среды — это хаотичные системы, мониторинг и поддержка которых требует большой доли ресурсов.

Хотя Kubernetes при выборе системы управления контейнерами является стандартом «де факто», многим организациям не удаётся её реализовать. Растущие организации в процессе увеличения масштабов своих сервисов ненамеренно вносят в систему усложнения. Критически важно понимать, как настраивать инфраструктуру и как кластеры могут работать и взаимодействовать между собой.

Основная часть инфраструктуры упорядочивается в виде сети систем, обменивающихся данными и разделяющих рабочие нагрузки. Очень удобна возможность визуального наблюдения за соединением систем и выявления влияющих на них факторов. Создание карты сети при помощи эффективного инструмента визуализации и контроля является обязательной задачей для мониторинга и поддержки сервисов.
Читать дальше →
Total votes 33: ↑33 and ↓0 +33
Comments 1

Жизнь после Docker: как команда VK Cloud переходила на CRI-O

Reading time 7 min
Views 18K


Kubernetes прекратил поддержку Docker и отказался от dockershim — прокладки между kubelet и Docker, которая позволяет последнему работать с CRI. В итоге разработчики столкнулись с необходимостью использования новых, совместимых с CRI, движков для запуска контейнеров. Из числа общеизвестных таких два — containerd и CRI-O.

Меня зовут Александр Чадин, я руководитель команды разработки в VK Cloud. Расскажу, как мы искали замену Docker для сервиса Cloud Containers, на что ориентировались при выборе нового движка, как внедряли новое решение и с какими подводными камнями при этом столкнулись. 
Читать дальше →
Total votes 38: ↑38 and ↓0 +38
Comments 9

Краткое руководство как готовить SNMPv3

Reading time 7 min
Views 9.6K

Настройка v3-пользователя на агенте сервера для штатного линуксового snmpd (пакет net-snmp). Out of scope: snmp traps и пользователи с правом запиcи (rw).

Третья версия протокола позволяет передавать пакеты в зашифрованном виде, что даёт возможность безопасно передавать телеметрию через публичные сети без риска раскрытия как аутентификационной информации (аналог community), так и шифруя сам поток данных симметричным алгоритмом с общим ключём.

Пожалуй, я хочу разобраться →
Total votes 28: ↑28 and ↓0 +28
Comments 0

Усиливаем защиту доступа к Kubernetes API

Reading time 19 min
Views 5.7K

В кластере Kubernetes control plane управляет нодами, ноды — pod’ами, pod'ы — контейнерами, контейнеры — приложениями. А кто управляет control plane?

Kubernetes предоставляет API для комплексного управления всем кластером Kubernetes. Получается, что, в первую очередь, мы должны защитить доступ к Kubernetes API. Даже в свежих рекомендациях агентства нацбезопасности США по защите Kubernetes нам велят использовать надёжную аутентификацию и авторизацию, чтобы ограничить пользовательский и административный доступ и сократить поверхность атаки.

В этой статье мы поговорим о том, как защитить доступ к API в кластере Kubernetes. Даже если вы используете управляемые сервисы Kubernetes, например AWS EKS или GCP Kubernetes Engine, будет полезно узнать, как устроен контроль доступа, чтобы планировать общую безопасность в Kubernetes .

Читать далее
Total votes 10: ↑10 and ↓0 +10
Comments 0

Телеграм бот на Python, для напоминаний о реквестах на BitBucket

Reading time 6 min
Views 6.1K

Бот - для работы с репозиторием проекта в BitBucket.

Приветствую любителей ботов :-) Позвольте представить вашему вниманию бота для работы с репозиторием проекта в BitBucket.

Краткое описание моих скромных трудов.

Посмотреть подробнее
Total votes 5: ↑5 and ↓0 +5
Comments 0

Универсальный VPN с WireGuard, MikroTik и Keenetic

Reading time 7 min
Views 47K

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

Читать далее
Total votes 10: ↑10 and ↓0 +10
Comments 39

Первая попытка gitlab-ci на фронте

Reading time 4 min
Views 8.3K

Эта статья о сценарии развертывания фронта, через инструменты Gitlab-CI.


Я использую GitLab-CI, а носителем исполнения скриптов GitLab Runner (об этом позже) пусть будет простой дроплет от DO

Читать дальше →
Total votes 10: ↑2 and ↓8 -6
Comments 0

Information

Rating
Does not participate
Location
Нижний Новгород, Нижегородская обл., Россия
Date of birth
Registered
Activity