Pull to refresh
3
0
Антон @vader666

User

Send message

TeamCity: настраиваем CI/CD в вашей команде

Reading time15 min
Views90K

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

TeamCity — пожалуй, один из самых популярных CI/CD-серверов, который используют разработчики по всему миру. В этой статье я расскажу про базовые концепции, на которых он построен, и на примерах покажу, как можно настроить CI/CD в вашей команде.

Читать далее
Total votes 24: ↑23 and ↓1+22
Comments26

Умный дом с котом: мой опыт автоматизации домашней рутины

Level of difficultyEasy
Reading time11 min
Views19K

Как автоматизировать дом, чтобы кошачий лоток отправлял в «Телеграм» сообщения, что его пора почистить, а на экране ТВ появлялось сообщение, что ванная комната освободилась. Об этом рассказал наш комьюнити‑менеджер Игорь Губайдуллин, инженер с 20-летним опытом работы. Умный дом стал его хобби пять лет назад — началось всё с робких шагов по освоению Apple HomeKit, а закончилось выделенным сервером умного дома с Home Assistant на борту.

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

Доступная система видеонаблюдения с охраной на дачу за 60 минут

Reading time24 min
Views88K

Речь пойдет о сборке, настройке и запуске охранной системы с датчиками, камерой, хранением видеозаписей на удаленном домашнем NAS, встроенным UPS, web-интерфейсом и оповещением через Telegram.

Чтобы быть предельно кратким, оформил статью в стилистике hackster.io. Информация рассчитана на читателей с опытом работы с одноплатным компьютером Raspberry и пониманием принципов работы VPN.

Читать далее
Total votes 128: ↑125 and ↓3+122
Comments163

Логи из docker compose / docker swarm в Grafana / Loki быстро и просто

Level of difficultyMedium
Reading time19 min
Views19K

Хочу показать как развернуть готовый и полностью работающий стек мониторинга Grafana + Loki + Prometheus + Pushgateway + Promtail за пару минут (в прямом смысле этого слова), без необходимости устанавливать на машину дополнительное ПО (плагины docker и плагины логирования) и собирать логи со всех контейнеров машины (или сразу со всех нод, в случае с swarm).

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

Знакомимся с Access Logs и фильтрами в Envoy и Istio service mesh

Reading time11 min
Views4.1K

Не у всех есть необходимость в тонкой настройке access logging в Envoy, но если она всё-таки возникает, то могут понадобиться примеры, которых почему-то не очень много в документации. Поэтому мы сделали перевод статьи, где вы можете познакомиться с Envoy, узнать, как включить журнал доступа (access log) Envoy в Istio, и научиться настраивать фильтры.

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

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

Локальные нейросети. Аналог ChatGPT-3.5 на домашнем ПК: OpenChat 7B превосходящая 70B, DeepSeek для кода уровня ChatGPT

Reading time8 min
Views79K

Есть много локальных аналогов ChatGPT, но им не хватает качества, даже 65B модели не могут конкурировать хотя бы с ChatGPT-3.5. И здесь я хочу рассказать про 2 открытые модели, которые всё-таки могут составить такую конкуренцию.

Речь пойдет о OpenChat 7B и DeepSeek Coder. Обе модели за счет размера быстры, можно запускать на CPU, можно запускать локально, можно частично ускорять на GPU (перенося часть слоев на GPU, на сколько хватит видеопамяти) и для такого типа моделей есть графический удобный интерфейс.

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

UPD: Добавлена информация для запуска на Windows с ускорением на AMD.

Читать далее
Total votes 107: ↑105 and ↓2+103
Comments87

Clickhouse, Grafana и 3000 графиков. Как построить систему быстрых дашбордов

Reading time17 min
Views28K

Меня зовут Валя Борисов, и я — аналитик в команде Ozon. Задача нашей команды — создавать инструменты для мониторинга и анализа скорости. 

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

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

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

Мой опыт перевода Grafana под управление Terraform или что делать если надоело тыкать на кнопки в GUI

Level of difficultyMedium
Reading time21 min
Views5.5K

Вам сказали развернуть систему мониторинга, вы выбрали связку Prometheus + Grafana. Развернули Grafana на своих серверах (VM/Docker/Kubernetes) и подключили Data Source Prometheus (а возможно вам еще сказали развернуть логирование и вы используете Grafana Loki) и далее по гайдам из ютуба начали создавать свои дашборды и настраивать алерты.

Все работает идеально, но в один момент вы начинаете думать о том, чтобы хранить созданные сущности Grafana в коде, чтобы их можно было легко восстановить в случае потери данных или же развернуть при создании новой среды (dev/prod). Экспортировать дашборды не составит труда, это можно сделать и через GUI, но как же источники данных, политики уведомлении, contact points и сами алерты?

Знакомая история? Возможно, что нет. А у меня да!

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

Настраиваем отказоустойчивый Keycloak с Infinispan в Kubernetes

Reading time11 min
Views20K

В этой статье мы поделимся опытом развертывания в кластере Kubernetes устойчивой и масштабируемой инсталляции популярного решения для обеспечения «единого входа» (SSO) — Keycloak в связке с Infinispan (для кэширования пользовательских метаданных).

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

Создание масштабируемой и высокодоступной системы Postgres с помощью Patroni 3.0 и Citus

Reading time16 min
Views8.8K

Citus — это расширение для PostgreSQL, которое обеспечивает масштабируемость PostgreSQL за счет прозрачного распределения и/или репликации таблиц на одном или нескольких узлах PostgreSQL. Citus можно использовать как на облачной платформе Azure, так и на собственных серверах, поскольку расширение базы данных Citus имеет полностью открытый исходный код.

Читать далее
Total votes 18: ↑17 and ↓1+16
Comments0

Load2SRE: от нагрузки к доступности, без потери производительности

Reading time10 min
Views2.3K

Привет! Меня зовут Кирилл Юрков, я SRE Team Lead в Samokat.tech. Уже более десяти лет занимаюсь ускорением и проблемами производительности, а также нагрузочным тестированием. 

Отвечая на вопрос, что делает SRE в Samokat.tech, скажу, что это те, кто занимается инцидентами и проблемами на всём их жизненном цикле, от этапа архитектуры и разработки до postmortem'а после инцидента.

В этом посте я хочу рассказать, как из нагрузочного тестировщика превратиться в SRE-инженера. Поделюсь, как этот путь проходил я сам, с какими сложностями сталкивался и что случалось на каждом этапе. Также раскрою в деталях саму роль SRE-инженера, чем он занимается и чем полезен. Возможно, после этого вы в команде решите, что вам такая роль тоже нужна (если у вас её ещё нет).

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

Как мы боролись с овербукингом Kubernetes-кластеров

Reading time10 min
Views9.3K

Привет! Меня зовут Александр Лебедев, я SRE в Samokat.tech. Мы строим надёжную платформу для сервисов быстрой доставки и в зону ответственности моей команды входят поддержка Kubernetes-кластеров и управление их ресурсами.

Под катом история о том, как мы пришли к своему варианту resource management через борьбу с овербукингом по CPU.

Читать далее
Total votes 25: ↑24 and ↓1+23
Comments6

Запускаем Keycloak в HA режиме на Kubernetes

Reading time13 min
Views18K


TL;DR: будет описание Keycloak, системы контроля доступа с открытым исходным кодом, разбор внутреннего устройства, детали настройки.

Читать дальше →
Total votes 14: ↑11 and ↓3+8
Comments2

Certified Kubernetes Security Specialist — мой опыт сдачи экзамена

Reading time5 min
Views4.6K

TL;DR

- отнеситесь серьезно к качеству интернет-соединения. Из РФ ВПН не нужен

- популярные курсы не охватывают экзамен полностью (есть смысл поискать старые дампы на github)

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

- за несколько дней пройдите killer.sh, получите выкладку ответов и после прохождения несколько раз пройдите у себя в домашней лабораторной

- обязательно будет задание на анализ поведения, на выбор дают falco и sysdig. Возьмите sysdig, на экзамене он сэкономит время, потренируйтесь в этом перед сдачей.

Читать далее
Total votes 16: ↑14 and ↓2+12
Comments6

KeyCloak и микро-сервисы. Как облегчить жизнь программисту

Level of difficultyMedium
Reading time12 min
Views18K

Привет! Если ты так же как и я решил использовать keycloak для аутентификации и авторизации в своей микро‑сервисной архитектуре, то я расскажу вам как правильно настроить сам keycloak, его рабочую среду а в конце мы подключим Active Directory к нашему приложению.

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

Руководство по реализации отзывчивого дизайна в 2023 году

Level of difficultyMedium
Reading time17 min
Views31K

Сегодня построение отзывчивых макетов уже не основывается на контрольных точках (breakpoints) с фиксированной шириной. Вместо этого современные макеты должны работать на устройствах практически любого размера. Однако, к своему удивлению, я всё ещё встречаю сайты, где используется паттерн отзывчивого дизайна – когда присутствует контейнер, получающий новое значение max-width в соответствии с шириной области просмотра.

Термин «отзывчивый» сегодня отражает уже очень многое. У нас есть медиа-запросы, которые проверяют пользовательские настройки, а также современные возможности CSS, которые помогают создавать отзывчивые макеты вообще без использования медиа-запросов. Отзывчивость нынче изменилась, и мы живём в поистине прекрасное время.
Читать дальше →
Total votes 65: ↑61 and ↓4+57
Comments27

10 задач для девопса, когда уже нечем заняться

Reading time5 min
Views16K

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

В идеале работа DevOps должна замедляться. Вся автоматизация работает отлично, CI/CD функционирует настолько хорошо, что вы уже забыли, когда в последний раз приходилось вмешиваться после развёртывания. Кажется, что инфраструктура и процессы достигли идеального состояния, когда осталось лишь несколько мелких улучшений, которые могут и не стоить приложенных усилий.

Это настоящая мечта — не делать ничего, в то время как ваша инфраструктура функционирует подобно хорошо смазанному механизму. Однако в реальности, если вы долго ничего не делаете в роли инженера DevOps, ваши навыки и знания начинают теряться.
Читать дальше →
Total votes 41: ↑39 and ↓2+37
Comments6

Когда хочется больше: пишем кубовый оператор

Reading time15 min
Views7.5K

Итак, некоторое время назад я писал статью о том, как мы переехали на werf со скрипта. По большому счёту, это продолжение той истории. Задача встала такая: нужно максимально автоматизировано разворачивать свежее приложение на нескольких кластерах kubernetes, которое уже имеет обвязку для деплоя в виде werf. После некоторых изысканий, попыток использовать "коробочные" решения самой верфи и куба, я понял, что придётся написать собственный оператор, чтобы получить прям 100% покрытия всех "хотелок".

Чтобы у "гошников" прям конкретно подгорело, для этих целей я выбрал свой любимый Python и kopf.

Поджечь стул
Total votes 18: ↑17 and ↓1+16
Comments5

Как всё успеть? | Мой тайм-менеджмент

Reading time5 min
Views13K

Прежде чем начать говорить про тайм-менеджмент и как всё успевать, начну с плохой шутки про электрика. Как определить является электрик хорошим или плохим? Правильно! Любой живой электрик автоматически хороший. Теперь немного обо мне. Я работаю преподавателем в университете, учусь в магистратуре, веду YouTube-канал по программированию PyLounge, занимаюсь репетиторством, пишу статьи, выступаю на конференциях, мастер-класса, параллельно изучаю новые технологии, хожу в спортзал, а ещё у меня есть семья и друзья. Не воображаемые. Это важно. И если я до сих пор жив, и сейчас пишу это, значит что-то в распределении времени и тайм-менеджменте я знаю.

Читать далее
Total votes 29: ↑22 and ↓7+15
Comments7

Настройка badges в репозиториях gitlab, с помощью Gitlab API, в CI/CD

Reading time3 min
Views6.3K

Простая визуализация версий установленных релизов, строчек кода, версии интерпретатора и много другое с помощью Gitlab Badges. Создание Gitlab Badges с помощью Gitlab API requests.

Читать далее
Total votes 8: ↑8 and ↓0+8
Comments2
1
23 ...

Information

Rating
Does not participate
Location
Москва, Москва и Московская обл., Россия
Date of birth
Registered
Activity