Pull to refresh
0
Kalashnikov Oleg @developman27read⁠-⁠only

User

Send message

Хороший триггер, плохой триггер: как мы мониторим сотни серверов по всему миру

Reading time8 min
Views27K


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

Нам, например, круглосуточно требуется мониторить более 46 000 метрик на более чем 500 серверах в 6 дата-центрах и 4 странах, а DAU игры War Robots стабильно переваливает за 1 500 000 человек.

Но правильный, настоящий мониторинг пишется кровью системного администратора и разработчика. Каждый кейс, каждый факап и даже внутренние процессы, включая количества тонера в картридже принтера, должны быть описаны сценарием мониторинга. Я решил немного рассказать о том, с чем мы столкнулись при организации этого процесса, а также как выстроили работу сисадминов, снизив количество дежурств и улучшив их качество. При этом упор будет сделан на подходе к мониторингу, тогда как настройка той или иной системы легко гуглится и без посторонней помощи.
Читать дальше →
Total votes 27: ↑25 and ↓2+23
Comments14

OpenVPN, легкий перевыпуск корневого сертификата

Reading time2 min
Views24K
Доброго времени суток. Предыстория такова: десять лет назад мной была поднята инфраструктура сети салонов сотовой связи, распределенная по области. В качестве учетного решения использовалась система 1С: Предприятие 7.7 в режиме распределенной базы данных. Для обмена данными использовалась обычная сетевая папка windows, доступ к которой осуществлялся через туннель OpenVPN. И вот как-то неделю назад полностью остановился обмен информацией между центром и периферией. Почему-то сразу закралась мысль — неужели прошло десять лет (именно на этот срок делался корневой сертификат). Анализ логов подтвердил проблему, схема отлично себя зарекомендовала за эти десять лет, но пришел срок. И что же теперь, генерировать заново весь объем клиентских и серверных ключей/сертификатов??? Нет, можно поступить немного проще…
Читать дальше →
Total votes 9: ↑9 and ↓0+9
Comments9

Выравнивание в Bootstrap

Reading time2 min
Views46K

При работе с фреймворком Bootstrap обычно сталкиваются с тремя основными проблемами:


  1. Как поместить контент внизу колонки?
  2. Как создать многорядную галерею колонок одинаковой высоты в одном .row?
  3. Как центрировать горизонтально несколько колонок, если их суммарная ширина меньше 12 единиц и оставшаяся ширина нечетна?

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


Решение третьей проблемы подсмотрено здесь.


Общий код


<style>
    [class*=col-] {position: relative}
    .row-conformity .to-bottom {position:absolute; bottom:0; left:0; right:0}
    .row-centered {text-align:center}   
    .row-centered [class*=col-] {display:inline-block; float:none; text-align:left; margin-right:-4px; vertical-align:top} 
</style>

<script src="assets/conformity/conformity.js"></script>
<script>
    $(document).ready(function () {
        $('.row-conformity > [class*=col-]').conformity();
        $(window).on('resize scroll', function() {
            $('.row-conformity > [class*=col-]').conformity();
        });
    });
</script>

Читать дальше →
Total votes 30: ↑16 and ↓14+2
Comments33

Учимся мыслить в REM. Разговор об очевидном и о производительности труда в небольшой веб-студии

Reading time6 min
Views19K

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

Читать дальше →
Total votes 22: ↑20 and ↓2+18
Comments22

Делаем бесплатный SSL сертификат в 2017 году

Reading time3 min
Views81K

Предисловие


Недавно я искал ssl сертификат для своего сайта но на Хабре было только инструкция для StartSSl который уже не поддерживают Google Chrome и MozillaFirefox. И здесь я бы хотел показать как сделать сертификат пошагово на собственном сервере.
Читать дальше →
Total votes 48: ↑5 and ↓43-38
Comments16

Обработка и оформление отчетов в Excel на PHP

Reading time16 min
Views253K

Не редко при разработке некоего проекта, возникает необходимость в формировании отчетной статистики. Если проект разрабатывается на Delphi, C# или к примеру, на С++ и под Windows, то тут проблем нет. Всего лишь необходимо воспользоваться COM объектом. Но дела обстоят иначе, если необходимо сформировать отчет в формате excel на PHP. И чтобы это творение функционировало на UNIX-подобных системах. Но, к счастью, не так все плохо. И библиотек для этого хватает. Я свой выбор остановил на PHPExcel. Я уже пару лет работаю с этой библиотекой, и остаюсь доволен. Поскольку она является кроссплатформенной, то не возникает проблем с переносимостью.


PHPExcel позволяет производить импорт и экспорт данных в excel. Применять различные стили оформления к отчетам. В общем, все на высоте. Даже есть возможность работы с формулами. Только необходимо учитывать, что вся работа (чтение и запись) должна вестись в кодировке utf-8.

Читать дальше →
Total votes 40: ↑33 and ↓7+26
Comments28

Ускорение домашнего ESXi 6.5 с помощью SSD кэширования

Reading time9 min
Views34K
Добрый день!

В данной статье хочу рассказать о том, как немного повысить производительность хоста ESXi с помощью SSD кэширования. На работе и дома я использую продукты от компании VMware, домашняя лаборатория построена на базе Free ESXi 6.5. На хосте запущены виртуальные машины как для домашней инфраструктуры, так и для тестирования некоторых рабочих проектов (как-то мне пришлось запустить на нем инфраструктуру VDI). Постепенно приложения толстых ВМ начали упираться в производительность дисковой системы, а на SDD все не помещалось. В качестве решения был выбран lvmcache. Логическая схема выглядит так:


Читать дальше →
Total votes 17: ↑16 and ↓1+15
Comments23

Как мы реконструировали здание суда в Смоленске: от лазерных сканов лепнины под плесенью до релиза

Reading time11 min
Views25K
Вот в таком виде нам его передали:



Задача — восстановить здание в legacy-виде и из legacy-материалов, а потом плотно набить инженеркой и поставить защищённый пункт связи.

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

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

Начать надо с того, что нынешнее здание суда во время ВOВ было штабом немецких захватчиков и одновременно офицерским борделем. В 90-х там открыли казино. Потом была гостиница. Под этими культурными слоями нам и нужно было найти сталинский ампир.
Читать дальше →
Total votes 113: ↑102 and ↓11+91
Comments59

Zabbix 3.X: мониторинг контролеров Adaptec в Windows Server (Hyper-V Core)

Reading time3 min
Views10K
Доброго времени суток, %habrauser%! Сегодня займемся укрощением своих кривых ручонок и попробуем настроить мониторинг контролеров Adaptec на Hyper-V (core 2012r2) хостах при помощи Zabbix 3.2, PowerShell и консольной утилиты Adaptec RAID Controller Command Line Utility предназначенной для мониторинга и управления контролерами Adaptec.
Читать дальше →
Total votes 13: ↑12 and ↓1+11
Comments6

Защита удаленного терминального сервера или двухфакторная аутентификация клиентов RDG при помощи Azure MFA

Reading time10 min
Views24K
Azure MFA for RDG


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

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

61 способ улучшить SEO вашего сайта

Reading time8 min
Views115K


Недавно мы закончили курс по SEO в Нетологии и составили для себя чек-лист того, что обязательно нужно сделать на сайте «Я люблю ИП» для поисковой оптимизации. Но эти советы универсальны для любого проекта. В статье вы найдёте список практических рекомендаций со всего курса из 13 лекций от 8 разных специалистов, а также полезные ссылки и сервисы, которые помогут вам улучшить SEO вашего сайта.


Для кого эта статья:


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

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


Читать дальше →
Total votes 46: ↑36 and ↓10+26
Comments61

«Прозрачный» Squid с разграничением доступа

Reading time3 min
Views43K


Как готовить кальмара, думаю что не я один сталкивался с задачей настройки Squid'а для разграничения доступа сотрудникам предприятия, но при этом он должен быть «прозрачным». Другими словами конфигурация показанная далее удовлетворяет трём условиям:

  • Имеется список запрещенных интернет-ресурсов, доступ к которым закрыт у всех пользователей (Пример: социальные сети);

  • Имеется список разрешенных интернет-ресурсов, доступ к которым открыт у всех пользователей (Пример: портал государственных услуг);

  • Имеется список ip-адресов пользователей которые должны иметь доступ ко всем интернет-ресурсам кроме входящих в список запрещенных.

Читать дальше →
Total votes 19: ↑15 and ↓4+11
Comments25

Основы компьютерных сетей. Тема №3. Протоколы нижних уровней (транспортного, сетевого и канального)

Reading time26 min
Views345K

Приветствую всех читателей. Пришло наконец время поговорить о протоколах, находящихся на нижних уровнях. В этой статье будут разобраны протоколы канального, сетевого и транспортного уровней. Присаживайтесь поудобнее и читайте на здоровье.
Читать дальше →
Total votes 46: ↑42 and ↓4+38
Comments10

Качественный контент для сайта: какой он?

Reading time5 min
Views11K

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


Так чем отличается подобный контент от «качественного»?


Как говорят о нём маркетологи и редакторы, этот контент «мёртвый». Знаете, как мёртвый язык — мало кому понятен, ещё меньше интересен. Хотя мёртвые языки исследуют учёные-лингвисты (и в этом есть смысл!), а вот «мёртвый контент» не любит читать никто.


image


Для начала давайте разберёмся, что такое контент?


Читать дальше →
Total votes 22: ↑16 and ↓6+10
Comments2

Структуры данных для самых маленьких

Reading time22 min
Views339K
James Kyle как-то раз взял и написал пост про структуры данных, добавив их реализацию на JavaScript. А я взял и перевёл.

Дисклеймер: в посте много ascii-графики. Не стоит его читать с мобильного устройства — вас разочарует форматирование текста.


Читать дальше →
Total votes 91: ↑87 and ↓4+83
Comments51

Создаём своё первое десктопное приложение при помощи HTML, JS и Node-WebKit

Reading time4 min
Views115K
В наше время при помощи JavaScript и HTML можно сделать практически всё. А благодаря Node-WebKit (недавно переименован в NW.js) можно делать даже десктопные приложения, которые выглядят, как нативные и имеют доступ ко всем частям ОС. Сегодня мы покажем, как создать простое десктопное приложение при помощи Node-WebKit, используя jQuery и несколько модулей для Node.js.

Node-WebKit — комбинация Node.js и встроенного браузера WebKit. Код JavaScript выполняется в особом окружении, из которого есть доступ и к стандартному API браузеров, и к Node.js.
Читать дальше →
Total votes 45: ↑40 and ↓5+35
Comments39

Ресурсы для дизайнеров и front-end-разработчиков

Reading time5 min
Views64K
Ниже представлена подборка инструментов для дизайнеров и front-end-разработчиков. Мы настоятельно рекомендуем вам просмотреть их все. Надеемся, что вы найдете для себя что-то полезное.

Читать дальше →
Total votes 41: ↑30 and ↓11+19
Comments7

Information

Rating
Does not participate
Location
Барнаул, Алтайский край, Россия
Date of birth
Registered
Activity