Как стать автором
Обновить
-13
0

Пользователь

Отправить сообщение

LUA в nginx: слегка интеллектуальный firewall

Время на прочтение6 мин
Количество просмотров31K

Данный пост является продолжением применения lua в nginx.

Там обсуждалось кеширование в памяти, а тут lua будет использоваться для фильтрации входящих запросов в качестве этакого фаервола на nginx-балансере. Нечто подобное было у 2GIS. У нас свой велосипед :) В котором разделяем динамику и статику, стараемся учесть NAT и белый список. И, конечно же, всегда можно навернуть еще специфичной логики, что не выйдет при использовании готовых модулей.
Данная схема сейчас спокойно и ненапряжно (практически не сказывается на использовании cpu) обрабатывает порядка 1200 запросов/сек. На предельные величины не тестировалось. Пожалуй, к счастью :)
Читать дальше →
Всего голосов 50: ↑50 и ↓0+50
Комментарии16

Основная ловушка маркетинга и пиара или что бывает, если вы врёте

Время на прочтение8 мин
Количество просмотров128K


Продолжаю рассказывать про человеческий маркетинг. Когда Англия вошла во Вторую Мировую, был очень примечательный эпизод. Военная пропаганда – это то, чему обычно не все и не всегда верят. Официальные каналы преуменьшают потери, преувеличивают успехи. Я сейчас не уверен в числах, но первое же радиосообщение с фронта про воздушный бой было про то, что сбито 40 английских истребителей. Позже пришла информация, что меньше – 34. Через пару дней нашли ещё пилота, совершившего аварийную посадку.

Народ Англии начал верить в то, что передают по радио. Потому что было заметно, что они не стараются врать. Более того, немцы тоже ориентировались на их сводки.

Есть первый железный принцип хорошего маркетинга и пиара – никогда не обещать ни на грамм больше, чем можешь сделать. И никогда не врать. Стоит хоть немного увлечься – и вот в какой-то момент ты станешь обманывать сам себя.
Читать дальше →
Всего голосов 210: ↑199 и ↓11+188
Комментарии158

Дисковая балансировка в Nginx

Время на прочтение4 мин
Количество просмотров25K

В этой статье я опишу интересное решение на базе Nginx для случая, когда дисковая система становится узким местом при раздаче контента (например, видео).
Читать дальше →
Всего голосов 42: ↑35 и ↓7+28
Комментарии60

Генератор миниатюрок из Nginx-а

Время на прочтение3 мин
Количество просмотров27K
Итак, сегодня мы соберём генератор миниатюрок на базе любимого народом веб-сервера — nginx-а. Что примечательно, сделаем мы это без единого гвоздя, т.е. без единой строчки кода, не считая конфигурации.
Что ж приступим...
Всего голосов 81: ↑76 и ↓5+71
Комментарии42

Раскрываем возможности map в nginx

Время на прочтение6 мин
Количество просмотров135K
map — мощная директива, которая может сделать ваши конфиги простыми и понятными.
Возможно, это самая недооцененная директива, из за того, что не все знают всех её возможностей.
Она в компактной форме помогает обрабатывать переменные, GET параметры, заголовки, куки и наборы бекендов (upstream).
Попробую раскрыть её возможности хабрапользователям.
Раскрыть возможности map
Всего голосов 91: ↑91 и ↓0+91
Комментарии11

Смартфон может считать пароль с экрана из отражения в Ваших глазах, а так же отпечатки пальцев

Время на прочтение1 мин
Количество просмотров50K
Неожиданная новость пришла из Германии. Проведенные исследования в Техническом Университете Берлина (далее TU Berlin) показали как легко смартфон может считать пароли с экрана телефона по отражение как в очках, так и в зрачках пользователя.
Перевод с Heise.de, оригинальные картинки можно посмотреть тут же.


Читать дальше →
Всего голосов 71: ↑63 и ↓8+55
Комментарии43

Модуль nginx для борьбы с DDoS

Время на прочтение6 мин
Количество просмотров67K
Многие сталкивались с таким явлением как DDoS атака методом HTTP флуда. Нет, это не очередной туториал по настройке nginx, хочу представить свой модуль, работающий как быстрый фильтр между ботами и бэкэндом во время L7 DDoS атаки и позволяющий отсеивать мусорные запросы.
Читать дальше →
Всего голосов 142: ↑140 и ↓2+138
Комментарии43

Бекап баз данных – есть ли он?

Время на прочтение15 мин
Количество просмотров31K
image

Нет смысла говорить о том, насколько это актуальный вопрос. Сегодня мы расскажем, как у нас организовано резервное копирование баз данных mysql.
И одно их самых важных – это проверка, а сделался ли бекап? А успешно ли прошел дамп? А были ли ошибки? А знаю ли я о них?

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

Сразу оговорюсь, что, возможно, в принципе реализации использованы стандартные схемы, но, возможно, вы найдете для себя, что-то новое, что сможете внедрить у себя.
Читать дальше →
Всего голосов 62: ↑50 и ↓12+38
Комментарии37

«Правильное» ограничение скорости в Nginx. Миф или реальность?

Время на прочтение3 мин
Количество просмотров35K


Вот уже много лет пользователей Nginx мучает один и тот же вопрос: «Как можно ограничить скорость в целом для IP адреса независимо от числа сессий (соединений)? Почему Nginx этого не умеет? Почему разработчики Nginx так упорно не хотят реализовать этот простой функционал?» И ответить мне им нечего, о чём думают разработчики Nginx — не понятно и известно, наверное, только господу богу.

Бороться с этим можно по разному, кто-то использует скрипты на подобие htb.init, кто-то пишет скрипты шейпинга самостоятельно и делится удачным опытом на Хабре, а некоторые и вовсе используют PHP для ограничения скорости отдачи файлов. Только представьте себе, каким будет оверхед и расход памяти, при использовании PHP в подобных целях.
Читать дальше →
Всего голосов 51: ↑45 и ↓6+39
Комментарии59

Безопасность покупателя в рознице: что надо знать лично вам

Время на прочтение6 мин
Количество просмотров252K


Ценник должен быть с печатью или подписью. Он является документом и обязательно должен быть на товаре. Если вы видите что-то с ценником (неважно, где и как оно стоит), вы имеете право купить его по цене на нём.

Пример: вам говорят, что товар по акции кончился. Вы видите один в витрине в герметичном ящике под потолком, но с ценником. Вам не имеют права отказать в его продаже.

Второй пример: когда обновляются цены, в торговом зале может остаться ценник со старой ценой ниже. Цена в базе другая? Ну и что, вот ваш же документ. Если же вдруг ценник без печати-подписи, и на таком товаре нет правильного ценника — регистрируйте нарушение. Ценники обязательно должны быть хотя бы на одном товаре из пачки.
Читать дальше →
Всего голосов 236: ↑225 и ↓11+214
Комментарии498

Кэш на запись и DRBD: почему полезно знать подноготную

Время на прочтение4 мин
Количество просмотров26K

Предыстория


Существует красивое решение для создания надёжного недорогого кластера основанное на DRBD + Proxmox VE. Страница в Wiki проекта Proxmox появилась 11 сентября 2009-го года и создана она была CEO компании Martin-ом Maurer-ом.



С тех самых пор это решение стало очень популярным, и никто не подозревал, что у этого решения есть скрытый подводный камень. В документации про это не пишут, а те, кто сталкивался с последствиями этой проблемы (например, зависание машины при онлайн миграции с одного хоста на другой), списывали всё на «случай». Кто-то грешил на железо, кто-то на Proxmox, а кто-то на драйверы внутри виртуальной машины. Конечно, хотелось бы, чтобы DRBD сам сообщал о своих проблемах, и, как-то подсознательно веришь в то, что он так и делает. Проверяешь /proc/drbd, видишь строку «cs:Connected ro:Primary/Primary ds:UpToDate/UpToDate» и продолжаешь верить что DRBD не причём.
Читать дальше →
Всего голосов 43: ↑42 и ↓1+41
Комментарии46

Установка Windows Server 2008 по сети с Linux PXE сервера. Кастомизация образа WinPE

Время на прочтение9 мин
Количество просмотров65K
Друзья! Всем доброго дня!

Мы хотим не только пиарить себя и свои услуги здесь, но и поделиться опытом и знаниями, полученными в ходе администрирования огромного количества проектов, и в конечном итоге сделать достойный и полезный блог. Для этого мы попросили наших инженеров поучаствовать в этом. А на будущее хотим понять: будет это интересно хабровчанам? И если да — то в какой форме?

Под катом в этот раз пойдет речь об установке Windows Server 2008 по сети с Linux PXE сервера.

Меню загруженного WinPE.


Читать дальше →
Всего голосов 16: ↑12 и ↓4+8
Комментарии20

Настройка IPTV Билайн через WiFi с использовнием роутеров Mikrotik

Время на прочтение8 мин
Количество просмотров36K
Будучи абонентом Домашнего Интернет+ТВ от Билайн волей-неволей читаешь профильные форумы, видишь проблемы абонентов и пр. И вот среди этих «плачей Ярославны» определенно вырисовывается одна задача, которую либо никому не удалось осуществить, либо через костыли с обрезанным функционалом. А именно — передача IPTV на приставку через Wi-Fi. И вот недавно ко мне обратились за помощью именно с таким вопросом. Так как наш человек сначала делает, а потом думает, то ремонт в новой квартирке уже сделан, кабель каналов нет, RJ-45 розеток нет, красоту и эстетику портить никто не будет, а смотреть ТВ от Билайн на кухне хочется.
Читать дальше →
Всего голосов 9: ↑7 и ↓2+5
Комментарии41

Mikrotik-Qos Приоритезация по типу трафика и деление скорости

Время на прочтение25 мин
Количество просмотров258K

Mikrotik-Qos Приоритезация по типу трафика и деление скорости



imageДоброго времени суток, сегодня речь пойдет о наболевшем, а именно о том, как грамотно разделить интернет канал, чтобы все ваши пользователи были максимально довольны.
Читать дальше →
Всего голосов 43: ↑38 и ↓5+33
Комментарии13

История борьбы за IOPS в самосборной SAN

Время на прочтение5 мин
Количество просмотров18K
Всем привет!

В одном из моих проектов используется нечто, немного похожее на частное облако. Это несколько серверов для хранения данных и несколько — бездисковых, отвечающих за виртуализацию. На днях я похоже что наконец поставил точку в вопросе выжимания максимальной производительности дисковой подсистемы данного решения. Это было довольно интересно и даже в некоторые моменты — довольно неожиданно. Поэтому и хочу поделиться своей историей с хабрасообществом, которая началась в далёком 2008м году, ещё до появления «Первого облачного провайдера России» и акции по рассылке бесплатных счётчиков воды.

Архитектура

Экспорт виртуальных жёстких дисков осуществляется через отдельную гигабитную сеть по протоколу AoE. Если коротко — это детище компании Coraid, которая предложила реализовать передачу ATA-команд по сети, напрямую. Спецификация протокола занимает всего десяток страниц! Главная особенность — это отсутствие TCP/IP. При передаче данных получается минимальный оверхед, но как плата за простоту — невозможность роутинга.

Почему именно такой выбор? Если опустить перепечатывание официальных источников — в т.ч. и банальный lowcost.

Соответственно, в хранилищах мы использовали обычные SATA-диски с 7200 rpm. Их недостаток известен всем — низкий IOPS.

Читать дальше →
Всего голосов 63: ↑58 и ↓5+53
Комментарии16

Отказоустойчивый кластер для Java приложений

Время на прочтение5 мин
Количество просмотров21K
Со времени запуска проекта прошло некоторое время и настало время наращивать вычислительные мощности для работы приложения. Было принято решение построить для этого кластер, который в дальнейшем можно будет легко масштабировать. Таким образом нам надо настроить кластер для распределения запросов между серверами.

Для этого мы будем использовать 4 сервера на Linux CentOS 5.5, а так же Apache, Tomcat6, mod_jk, Heartbeat.
web1, web2 сервера — для распределения запросов средствами Apache и отказоустойчивости средствами Heartbeat. tomcat1, tomcat2 сервера — Tomcat сервера для Java-приложения.
Читать дальше →
Всего голосов 11: ↑6 и ↓5+1
Комментарии12

Наш чеклист для фильтров на сайтах

Время на прочтение7 мин
Количество просмотров53K
Довольно часто на сайтах е-коммерса нас просят реализовать фильтры. Хороший фильтр — довольно дорогая игрушка. Вообще, они не всегда уместны — пользователю проще посмотреть глазами на список, чем разбираться в логике разработчика фильтра. Конечно, если в этом списке не так много элементов. Скажем, не больше 200 в каждом разделе. Ниже в виде проверочного списка для наших QA, я зафиксировал некоторые требования, которые мы настойчиво внедряем на своих проектах с этого года. Стандартизация, ептэ.

Эти требования разумны. Часть из них трудно реализуема. Часть — очевидна. Часть — зависит от контекста. Но в целом они довольно универсальны. Если будут какие-то вопросы по конкретным пунктам — велкам в комментарии.


Читать дальше →
Всего голосов 55: ↑40 и ↓15+25
Комментарии17

Spiceworks. Часть 1: Инвентаризация в сети

Время на прочтение6 мин
Количество просмотров90K

Добрый день, хабро-сообщество. Свою первую статью я хотела бы посвятить весьма интересному бесплатному продукту — Spiceworks, который вышел пару дней назад в новом, 7.0, релизе (на данный момент, это релиз-кандидат).

Spiceworks — это удобная и мощная система, позволяющая собрать и структурировать информацию о вашей сети: состав «железа», установленное ПО, журналы событий, инвентаризация сетевого оборудования, вплоть до расхода картриджей в сетевых принтерах, и многое другое. И это не только система инвентаризации, но и HelpDesk, а теперь и MDM(Mobile Device Manager) в одном лице.

Остальное пожалуй, спрячу под кат, иначе не смогу остановится. Кто заинтересовался – добро пожаловать.
Читать дальше →
Всего голосов 20: ↑17 и ↓3+14
Комментарии14

SELinux – описание и особенности работы с системой. Часть 1

Время на прочтение11 мин
Количество просмотров275K


О SELinux на Хабре уже писали, однако, не так много опубликовано подробных мануалов по данной системе. Сегодня мы публикуем именно такой, подробный мануал по SELinux, начиная от информации по системе, и заканчивая гибкой настройкой политик.
Для того, чтобы не превращать пост в «простыню», сложную для понимания, мы решили разделить мануал на две части. Первая будет рассказывать о самой системе, и некоторых ее особенностях. Вторая – о настройке политик. Сейчас публикуем первую часть, чуть позже будет опубликована и вторая часть.

Читать дальше →
Всего голосов 76: ↑74 и ↓2+72
Комментарии13

Восстановление прошивки RAID-контроллеров LSI

Время на прочтение4 мин
Количество просмотров55K
Доброго времени суток, хабравчане!

Я хочу рассказать вам о том, как я восстанавливал прошивку RAID-контроллера LSI MegaRAID после неудачного обновления.
Когда эта беда случилась со мной, то информации об этом я практически не нашел, хотя, допускаю, что плохо гуглил.

Анамнез


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

Зачастую, особенно в случае с 1U серверами я беру их уже с интегрированным контроллером LSI MegaRAID.

Но проблема с ними заключается в том, что сама Supermicro не очень охотно выкладывает прошивки для встроенных контроллеров, так что я их обычно прошиваю актуальной прошивкой (масло масляное, да) от аналогичного контроллера LSI. Проблем не возникало до этих пор.

Недавно привезли несколько серверов с контроллерами LSI 2208 на борту и достаточно старой прошивкой.
Т.к. дискретные контроллеры на этих чипах я тоже активно использую, то особо не сомневаясь загрузился с флешки с Linux-ом, запустил привычное:
./MegaCli64 -AdpFwFlash -f mr2208.rom -a0
и пошел заниматься дальше своими делами.

Когда я в следующий раз обратил взор на терминал сервера, то увидел ту же самую картину, что и была — «Flashing firmware...» и никакого результата. Беда, подумал Штирлиц.
Читать дальше →
Всего голосов 53: ↑53 и ↓0+53
Комментарии36

Информация

В рейтинге
Не участвует
Зарегистрирован
Активность