Search
Write a publication
Pull to refresh
3
0
Дмитрий Олегович @k3NGuru

DevOps

Send message

Mikrotik и Linux. Рутина и автоматизация

Reading time4 min
Views35K
Представлюсь, меня зовут Андрей.

Первоначальная задача стояла такая — создать сотни конфигов для Mikrotik, чтобы поднять на каждом ovpn с сертификатом, затем залить на сотни Mikrotik конфиги, а так же сертификаты и ключ.

Пароль от сертификата у каждого уникален. Создавать сотни конфигов руками бред, да и в друг завтра скажут сделать новые или захочется залить еще какие-то изменения на Mikrotik.

Чего я хотел добиться:

  1. создавать автоматически уйму скриптов;
  2. автоматически отправить их на нужное мне оборудования;
  3. быть уверенным в том, что они отработали без ошибок или узнать о том, что конфиг выполнился не корректно.

image

Используя Bash и FTP все получилось.
Читать дальше →

Бэкап файловых и SQL баз 1С (в облако и с шифрованием)

Reading time8 min
Views30K
В этой статье я хочу поделиться опытом резервного копирования файловых и SQL баз 1С в локальное, сетевое и облачное (на примере Google Drive) хранилище с помощью Effector Saver.

ПО является платным: 2500₽.
Переход на новую версию (с 3 на 4) также является платным: 1250₽.

Писал инструкцию для друга, но думаю она пригодиться и кому-то из вас.

И как всегда, в комментариях, вы научите меня чему-то новому =)

В конце инструкции приведен пример журнала, по которому хорошо видна скорость выполнения задачи.

Цель:
Автоматическое создание шифрованных бэкапов по расписанию с отчётом об ошибках на почту.
Читать дальше →

HP: ваш оригинальный диск совсем не оригинален. Кто виноват и что делать?

Reading time2 min
Views23K
При работе с железом, потребительского ли, бизнес сегментов — не важно, сложно представить что-то, вызывающее столько «любви и обожания» к производителю, как «белые списки» совместимого оборудования и расходников.

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

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


Гораздо веселее наткнуться на подобное сообщение там, где увидеть его ну никак не ожидаешь. Обыденная, вроде бы, ситуация: вылетел диск из raid'а. Заменил таким же, массив должен бы перестроиться и продолжить работать. Да не тут-то было!

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

Читать дальше →

Ящик для хранения данных в go-приложениях

Reading time8 min
Views7.6K
image

Небольшая заметка о встраиваемой key-value БД под названием Coffer, написанной на Golang. Если совсем коротко: в остановленном состоянии БД данные лежат на диске, при запуске данные копируются в память. Чтение происходит из памяти. При записи изменяются данные памяти, а изменения записываются в журнал на диск. Максимальный размер хранимых данных ограничен размером оперативной памяти. API позволяет создавать хидеры для записей БД и применять их в транзакциях, сохраняя при этом консистентность данных.

Читать дальше →

Настраиваем официальный шаблон PostgreSQL на Zabbix 4.4

Reading time2 min
Views44K
Всем привет.

В Zabbix появился официальный Template DB PostgreSQL. В этой статье настроим его в Zabbix 4.4.


ПРИМЕЧАНИЕ

Если у вас все хорошо с английским, то рекомендую установить шаблон по официальному мануалу

github.com/zabbix/zabbix/tree/master/templates/db/postgresql

Тем не менее в моей статье учтены нюансы, которых нет по этой ссылке.
Читать дальше →

Строим собственный serverless на основе Fn

Reading time8 min
Views6.5K


Бессерверные вычисления — одна из наиболее заметных тенденций в облачных вычислениях. Основной принцип работы заключается в том, что инфраструктура — забота не DevOps’ов, а поставщика услуг. Масштабирование ресурсов автоматически подстраивается под нагрузку и обладает высокой скоростью изменения.


Другая общая черта — тенденция к минимизации и фокусировании кода, поэтому бессерверные вычисления иногда называют "функция как услуга" (FaaS).

Читать дальше →

Защищаем удаленный сервер на Windows как можем

Reading time7 min
Views52K


Тема безопасности сервера Windows не раз поднималась, в том числе и в этом блоге. Тем не менее мне хотелось бы еще раз освежить в памяти старые методы защиты и рассказать о малоизвестных новых. Разумеется, будем использовать по максимуму встроенные средства.


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

Давайте его защищать.

Умный дом в контейнерах (ioBroker + Zigbee в Docker)

Reading time6 min
Views16K

Вступление


Некоторое время пользовался несколькими стандартными реле Sonoff, управляющими светом через Google Home Mini. Но в итоге захотелось большего. Стандартного функционала не хватает, решил постепенно делать систему на чем-то более гибком. Выбрал ioBroker.

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

Основные сложности:

  • Что именно выбрать? Ведь есть много способов реализовать задуманное. И даже в выбранном решении много вариантов…
  • Нет готовых инструкций, как собрать воедино именно выбранный мной набор решений и именно в моих конфигурациях.

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

Забегая вперед, опишу, как запускал ioBroker в докере на старом ноутбуке и прокидывал в него Zigbee, чтобы взаимодействовать с датчиками Xiaomi напрямую, без шлюза. Стандартные инструкции не привожу, только свои «шишки».
Читать дальше →

Deploy SonarQube Server

Reading time5 min
Views11K

Привет, хаброжители!


В данном руководстве хочу изложить пошаговую настройку по развёртыванию платформы для непрерывного анализа и измерения качества кода. Подобных статей в сети достаточно много, но я хочу выделить лишь главное, чтобы все новички с первого раза смогли с ней разобраться. Ставить будем SonarQube 7.9 с PostgreSQL 10.

Читать дальше →

Введение в Git

Reading time17 min
Views160K

Оглавление


Предисловие
1. Настройка git
....1.1 Конфигурационные файлы
....1.2 Настройки по умолчанию
....1.3 Псевдонимы (aliases)
2. Основы git
....2.1 Создание репозитория
....2.2 Состояние файлов
....2.3 Работа с индексом
....2.4 Работа с коммитами
....2.5 Просмотр истории
....2.6 Работа с удалённым репозиторием
3. Ветвление в git
....3.1 Базовые операций
....3.2 Слияние веток
....3.3 Rerere
4. Указатели в git
....4.1 Перемещение указателей
5. Рекомендуемая литература

Предисловие


Git — самая популярная распределённая система контроля версиями.[1][2]

Основное предназначение Git – это сохранение снимков последовательно улучшающихся состояний вашего проекта (Pro git, 2019).
Читать дальше →

Пишем блог на микросервисах – часть 1 «Общее описание»

Reading time4 min
Views18K
В этой статье хочу поделится нашими c SergeyMaslov наработками решения типовых задач с использованием микросервисной архитектуры на примере задачи «создание блога» (в надежде, что читатель представляет как устроен блог и это не должно вызывать вопросов по функциональности:)
Читать дальше →

Концерты и события KudaGo у вас на зеркале

Reading time5 min
Views4K
Расскажу вам про то, как я сделал возможным получать и отображать информацию из публичного API KudaGo на вашем зеркале. Само собой, речь не о простом, а об «умном» зеркале.
Читать дальше →

Как мы делаем автоматизацию большой legacy сети

Reading time15 min
Views17K
Привет. У нас 15 260+ объектов и 38 000 сетевых устройств, которые нужно настраивать, обновлять и проверять их работоспособность. Обслуживать такой парк оборудования довольно сложно и требует много времени, сил и людей. Поэтому нам потребовалось автоматизировать работу с сетевым оборудованием и мы решили адаптировать концепцию Network as a Code для управления сетью в нашей компании. Под катом читайте нашу историю автоматизации, совершенные ошибки и дальнейший план построения систем.


Читать дальше →

Квест с iobroker для игр “Квесты в реальности”

Reading time7 min
Views4.1K

Всем привет, на Хабре уже есть несколько статей про автоматизацию игр типа «квесты в реальности» (раз, два, три, четыре, пять...), я хотел бы тоже поделиться своим опытом участия в подобном проекте. В далеком 2015 году мои друзья решили организовать квест типа escape-room «Ограбление банка» в нашем городе. Они знали, что я давно увлекаюсь различной автоматикой, в том числе системами типа «умный дом» на базе open source решений, поэтому попросили помощи в организации игры. Мне эта идея показалось интересной и я согласился — хотелось применить свой опыт и решения для чего то более интересного, чем поморгать лампочкой у себя в квартире.

Я постарался принять участие в полном цикле реализации проекта — от внесения правок в сценарий до последующей обкатки задач, выявления и исправления багов, последующие доработки. Я посетил несколько игр у нас в городе (в 2015 их можно было пересчитать по пальцам одной руки), не для фана, а скорее для получения опыта и реверс-инжиниринга решений, и это было хорошо заметно по реакции организаторов. Но после участия в игре в Москве, я понял настоящий масштаб «бедствия» и мне сильно захотелось сделать не хуже с технической стороны свою работу. Итак, квест «Ограбить банк» в г. Твери, за подробностями как он создавался и развивался в течении нескольких лет прошу под кат.
Читать дальше →

Расширяем функционал WDS: добавление возможности загрузки в UEFI

Reading time5 min
Views25K

Всем привет!


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


Т.е. инструкция в данной статье, предполагает, что у вас уже имеется, примерно следующая конфигурация:


1. Windows Server 2012R2 (или новее)
2. Полностью настроенный DHCP для работы с WDS
3. Собственно сам WDS
4. IIS
5. Виртуальная машина или ПК с Ubuntu

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


Предисловие


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


Помогли мне кстати тогда вот эти статьи:
Добавляем WDS универсальности
Загрузочное меню PXE с System Center Configuration Manager

Читать дальше →

Исповедь docker хейтера

Reading time10 min
Views125K

Я должен признаться. Я ненавижу docker. Всей своей душой. Это самая ужасная софтина, которую я видел за последние 10 лет.


С одной стороны, я очень уважаю одноименную компанию. Ребята из Docker Inc. реально популяризировали контейнеризацию. Теперь о ней не знает только ленивый. С другой стороны, ничего принципиально нового они не изобрели — контейнеризация на момент, когда Docker "выстрелил", уже существовала более 30 лет (начиная от chroot, вспомним еще jails и zones, ну, и наконец-то — namespaces & cgroups).


Круто, что docker реально ускоряет разработку во множество раз. Если вести ее правильно, то даже без потери в качестве. В любом случае, docker здесь, от него не деться и приходится им пользоваться.


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


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

Читать дальше →

Как я проектирую СКС

Reading time4 min
Views20K


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

Первый принцип это — надежность. Ненадежная сеть всегда выйдет дороже за счет стоимости ее обслуживания, убытков при простое и убытков от постороннего вмешательства. Исходя из этого принципа всегда проектирую основную сеть только проводной, и при необходимости, дополнительную беспроводную (гостевая сеть или сеть для мобильных терминалов). Почему беспроводная сеть менее надежная? У любой беспроводной сети есть ряд проблем безопасности, стабильности и совместимости. Слишком много рисков для серьезной компании.
Читать дальше →

Идеальная локальная сеть

Reading time5 min
Views82K


Стандартная локальная сеть в её нынешнем (усреднённо) виде окончательно сформировалась много лет назад, на чём её развитие и остановилось.

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

Руководство по SQL: Как лучше писать запросы (Часть 1)

Reading time13 min
Views87K

Узнайте о антипаттернах, планах выполнения, time complexity, настройке запросов и оптимизации в SQL


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

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

  • Во-первых, вы начнете с краткого обзора важности обучения SQL для работы в области науки о данных;
  • Далее вы сначала узнаете о том, как выполняется обработка и выполнение запросов SQL, чтобы понять важность создания качественных запросов. Конкретнее, вы увидите, что запрос анализируется, переписывается, оптимизируется и окончательно оценивается.
  • С учетом этого, вы не только перейдете к некоторым антипаттернам запросов, которые начинающие делают при написании запросов, но и узнаете больше об альтернативах и решениях этих возможных ошибок; Кроме того, вы узнаете больше о методическом подходе к запросам на основе набора.
  • Вы также увидите, что эти антипаттерны вытекают из проблем производительности и что, помимо «ручного» подхода к улучшению SQL-запросов, вы можете анализировать свои запросы также более структурированным, углубленным способом, используя некоторые другие инструменты, которые помогают увидеть план запроса; И,
  • Вы вкратце узнаете о time complexity и big O notation, для получения представления о сложности плана выполнения во времени перед выполнением запроса;
  • Вы кратко узнаете о том, как оптимизировать запрос.
Читать дальше →

Изучаем веб-аналитику с нуля. Большая подборка

Reading time3 min
Views75K
Привет, читатель!

Меня зовут Артём Сайгин, я веду телеграм-канал Growth Lab, в котором делюсь опытом роста IT-продуктов.

В сети много статей по веб-аналитике, но найти действительно стоящие и последовательно сгруппированные материалы нелегко.

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

image

Отмечу, что список материалов будет пополняться.

Если я не добавил стоящий материал, свяжитесь со мной — добавлю.

Приступим!

Введение в веб-аналитику


Что такое веб-аналитика и зачем она вам нужна?
Подробное руководство по аналитике веб-трафика
Какие бывают источники трафика
Какие ошибки возникают при работе с Google Analytics и как с ними бороться
Как настраивать представления в Google Analytics — подробное руководство
18 метрик и KPI интернет-маркетинга, которые вы должны знать
Основные термины в веб-аналитике
Что такое UTM-метки и как их применять
Глоссарий: базовые понятия веб-аналитики
Что такое ROI и какие нюансы следует учитывать при его расчете
Модели атрибуции — подробный обзор и сравнение
Модели атрибуции от Google
Что такое A/A тестирование, и как его провести
6 советов начинающему веб-аналитику
Читать дальше →

Information

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