Pull to refresh
0
@SAMFILIread⁠-⁠only

User

Send message

Простой способ установки Talos Linux на любую машину и у любого провайдера

Level of difficultyEasy
Reading time8 min
Reach and readers12K

Обычно Talos Linux предоставляется в виде набора готовых образов под различные системы. 

Стандартный метод установки предполагает, что вы возьмёте подготовленный образ под конкретное облако или гипервизор и просто создадите из него виртуальную машину. Если же говорить о физических серверах, то предполагается, что для загрузки образа Talos Linux и последующей установки вы будете использовать ISO или PXE.

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

Читать далее

Продвинутый CI/CD или как реализовать динамические Feature стенды

Level of difficultyMedium
Reading time19 min
Reach and readers10K

Многие разработчики стремятся протестировать свои изменения перед развертыванием в стабильные среды: prod, dev или staging. Первое, что приходит на ум — написание тестов. Однако, как показывает практика, времени на создание качественных тестов часто не хватает. В таких случаях логичное решение — настройка деплоя для отдельных веток. Хотя эта идея кажется простой, ее реализация связана с рядом сложностей:

Читать далее

Сам себе мобильный интернет. Запускаем базовую станцию стандарта 4G LTE

Level of difficultyHard
Reading time13 min
Reach and readers153K
Приветствую всех!

Я уже не раз рассказывал про то, как в домашних условиях поднять сотовые сети разных стандартов. Но всё же все они были уже весьма древними. Самое время замахнуться на кое-что поинтереснее — LTE.



Итак, в сегодняшней статье поговорим о том, что детально в нашем сообществе не описывал практически никто — о том, как запустить базовую станцию самого нового из поддерживаемых большинством телефонов этой страны стандартов. Поговорим об особенностях её работы и о трудностях, с которыми, возможно, придётся столкнуться при запуске. Традиционно будет много интересного.
Читать дальше →

17 запретов для бизнеса в соцсетях в 2025 году: объясняю, как не спустить выручку на штрафы

Level of difficultyMedium
Reading time9 min
Reach and readers14K

«Зашли в соцсети, чтобы делиться экспертностью и привлекать новых клиентов, а по итогу погрязли в штрафах и разбирательствах...» – итоги  2024 для бизнеса, который очень-очень хотел, но не знал, как работать в социальных сетях, не нарушая законов. Полагаю, десятки юрлиц могут поделиться такими же результатами уходящего года, и это грустно.

Публикации, за которые вас точно оштрафуют

Успеть получить туристическую визу в Китай в 2024 году

Level of difficultyEasy
Reading time8 min
Reach and readers7.1K

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

Если вам тоже нравятся квесты и вы тоже хотите сделать всё самостоятельно - эта статья для вас.

Читать далее

Как собрать клон Yamaha DX7 за 10$

Level of difficultyEasy
Reading time4 min
Reach and readers41K

В этой статье я расскажу как и из каких компонентов можно самостоятельно изготовить клон знаменитого синтезатора Yamaha DX7.

Статья рассчитана в основном на новичков и энтузиастов ретро музыкальных инструментов. Чуда не ждите :)

Около 10 лет назад в моей коллекции был этот синтезатор, но при переезде мне пришлось продать многие из своих инструментов.

Теперь предо мной стоит задача восстановить свою коллекцию. И при этом за минимальный бюджет.

Читать далее

Управление секретами Kubernetes с Sealed Secrets и Helm: GitOps way

Level of difficultyMedium
Reading time5 min
Reach and readers9.8K

В этой статье рассмотрим, как можно организовать простое управление секретами для приложений в Kubernetes при использовании GitOps-подхода. Храним секреты в git безопасно и управляем ими из Helm-чарта приложения.

Читать далее

Создание собственного API на Python (FastAPI): структура проекта, SQLAlchemy PostgreSQL, миграции и первые модели таблиц

Level of difficultyMedium
Reading time21 min
Reach and readers112K

Приветствую всех, друзья! Наша последняя статья по созданию собственного API на FastAPI вызвала огромный интерес, и за это я искренне благодарен.

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

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

Сегодня мы займемся интеграцией асинхронной SQLAlchemy в наше FastAPI‑приложение. Для упрощения навигации и понимания кода я предложу структуру проекта, которую сам использую в каждом FastAPI‑приложении.

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

Читать далее

Установка MS SQL Server на Linux

Level of difficultyEasy
Reading time8 min
Reach and readers53K

В этой статье я научу вас устанавливать Microsoft SQL Server 2022 на Linux и мы развернем тестовую базу данных от Microsoft в операционной системе Linux.

Мы будем использовать пакетным менеджером Yum для Linux дистрибутивов: RedHat (RHEL), CentOS, Scientific Linux и DPKG (Debian Package) – система управления пакетами в Debian и дистрибутивах на его основе, например Ubuntu и набирающем популярность Astra Linux, в связи с импортозамещением. Поэтому команды я приведу для обоих пакетных менеджеров. Так же рассмотрим универсальный способ запуска через Docker.

Microsoft SQL Server — система управления реляционными базами данных (СУБД), разработанная корпорацией Microsoft. Основной используемый язык запросов (диалект SQL) — Transact-SQL (T-SQL).

Для взаимодействия с СУБД MS SQL Server используются 2 основных способа:
1. Служебная программа sqlcmd
2. Microsoft SQL Server Management Studio (SSMS)

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

Читать далее

Управляем обновлением AWS Autoscaling Group: гармония Terraform и Ansible

Level of difficultyMedium
Reading time7 min
Reach and readers3.1K

В мире DevOps, где автоматизация играет ключевую роль, управление ресурсами и процессами обновления инфраструктуры в облаке является критически важной задачей. Во многих современных проектах, особенно тех, что развертываются в облачной среде AWS, используется механизм Auto Scaling Groups (ASG) с целью достижения трех основных задач: балансировки нагрузки, повышения надежности сервиса и оптимизации стоимости эксплуатации.

Представьте себе: вы работаете в компании, развертывающей свои приложения на ресурсах Amazon. Ваши приложения важны, поскольку они обслуживают тысячи пользователей ежедневно. Для этого часто используется механизм Auto Scaling Groups (ASG) с целью достижения трех основных задач: балансировки нагрузки, повышения надежности сервиса и оптимизации стоимости эксплуатации.

И чтобы ускорить процесс развертывания и упростить управление конфигурацией, вы используете предварительно подготовленные AMI образы. Эти образы создаются с помощью инструментов типа HashiCorp Packer (или других аналогичных) и содержат все необходимое для того, чтобы ваше приложение стартовало быстро и без сбоев. Для разворачивания самой инфраструктуры вы используете Terraform, который стал стандартом de facto во многих крупных компаниях, управляющих облачными ресурсами и использующими подход IaC (Infrastructure as Code).

К сожалению, ресурсы Terraform (например тот же aws_autoscaling_group) не позволяют отслеживать прогресс и успешность выполнения операции обновления ASG в рамках instance refresh, а могут лишь запустить его. Если какие-то другие части инфраструктуры (например, обновления сертификатов или dns-записей) каким-то образом зависят от состояния и версии запущенных инстансов, то желательно проконтролировать завершение процесса обновления для получения корректного состояния инфраструктуры после завершения работы terraform.

Чтобы решить данную проблему, вводим в игру Ansible...

Ansible...

Как автоматизировать рутину с помощью ChatGPT в SEO-проекте и сделать рост трафика на 149%?

Level of difficultyEasy
Reading time4 min
Reach and readers6.1K

До появления ChatGPT труд SEO-специалиста на 90% состоял из рутины, после появления - на 50%. Хотите также? Я расскажу вам, как автоматизировать свою работу при помощи ИИ; а также какие задачи “делегировать” и какие инструменты можно использовать.

Читать далее

«Пепси. Пейджер. MTV». Создадим домашнюю пейджинговую сеть в 2023

Level of difficultyEasy
Reading time17 min
Reach and readers24K

Я it-шник, и иногда мне бывает скучно. Мы окунемся с вами в прошлое и создадим домашнюю пейджинговую сеть в 2023 году. Научимся отправлять и получать сообщения на пейджер.

Читать далее

Viem & Wagmi — новая замена ethers

Level of difficultyHard
Reading time12 min
Reach and readers7.2K

Привет! Сегодня мы рассмотрим относительно новую библиотеку для интеграции с web3 - viem. Мы постараемся понять, способна ли эта библиотека заменить ethers и какие преимущества она предлагает.

Читать далее

Шпаргалка по SQL (postgres), которая выручает меня на собесах

Level of difficultyEasy
Reading time8 min
Reach and readers291K

Привет, Хабр!

Я решил посвятить свою первую статью SQL. Вопросы, рассмотренные ниже мне задавали на собеседованиях на позицию python-разработчика. Естественно отвечать правильно получалось не всегда, а если точнее то чаще не правильно, однако проведя N часов в рефлексии я составил перечень ответов, которыми пользуюсь до сих пор.

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

Читать далее

GUI для Git: подборка популярных решений

Level of difficultyEasy
Reading time7 min
Reach and readers156K

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

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

Читать далее

3X-UI: Shadowsocks-2022 & XRay (XTLS) сервер с простой настройкой и приятным интерфейсом

Level of difficultyEasy
Reading time13 min
Reach and readers782K

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

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

Поэтому сегодня мы поговорим об установке и использовании графической панели 3X-UI для сервера X-Ray с поддержкой всего того, что умеет X-Ray: Shadowsocks-2022, VLESS с XTLS и т.д.

Читать далее

Блокируем посетителей сайтов по IP

Level of difficultyEasy
Reading time5 min
Reach and readers10K

Привет! Сегодня хотим поделиться простым способом защиты от L7 DDoS-атак.  Есть и другие варианты, но описанный в статье — лёгкий и быстрый.

Читать далее

Управление инфраструктурой с помощью terragrunt (terraform) и gitlab ci

Level of difficultyMedium
Reading time6 min
Reach and readers29K

В этом посте:


  • Использование terraform модулей
  • Организуем структуру каталогов с terraform модулями для terragrunt согласно вашей инфраструктуре
  • Создание/Обновление/Удаление инфраструктуры одной terragrunt командой
  • Настройка в gitlab ci для запуска и сохранения terraform lock и state в gitlab
  • Бекап terraform state из gitlab
Читать дальше →

Назад в прошлое: как быстро восстановить MySQL на точку во времени

Level of difficultyMedium
Reading time8 min
Reach and readers10K

Point in Time Recovery (PiTR) — это восстановление базы данных на какой‑то конкретный момент времени (с точностью до секунд или до конкретной транзакции).

PiTR невероятно полезен для восстановления базы данных после того, как «случилось непоправимое». Если достаточно точно выбрать точку на которую восстанавливать базу, то можно восстановить базу данных практически без потери данных.

В этой статье мы рассмотрим классический PiTR и еще два способа путешествовать во времени быстрее, и уменьшить количество операций, которые надо выполнять руками.

Читать далее

Собеседование Senior DevOps Engineer: вопросы

Level of difficultyEasy
Reading time6 min
Reach and readers53K

Вы когда-нибудь задумывались о том, какие вопросы задают DevOps инженеру на собеседовании? Да, есть вполне обоснованное мнение, что таких инженеров в принципе быть не может (или все инженеры команды являются проводниками методологии DevOps), но все же на рынке хватает вакансий «DevOps Engiineer» разных уровней. Сегодня мы рассмотрим вопросы DevOps инженерам высшего (без пипл менеджмента) уровня – Senior.

Читать далее

Information

Rating
Does not participate
Registered
Activity