вторник, 25 декабря 2012 г.

php+FreeBSD: Cannot find autoconf.


Иногда по непонятным причинам при установке модулей выдаёт

Cannot find autoconf. Please check your autoconf installation and the
$PHP_AUTOCONF environment variable. Then, rerun this script.

Фикс (для csh):
setenv PHP_AUTOCONF `which autoconf`
setenv PHP_AUTOHEADER `which autoheader`
Разумеется, требуемые пакеты должны стоять. Обычно они ставятся в /usr/local/bin/{autoconf,autoheader}

UP
Иногда срабатывает с полными путями, иногда нет. Тогда делаем

setenv PHP_AUTOCONF autoconf-2.69
setenv PHP_AUTOHEADER autoheader-2.69
(версию ставим нужную)
после этого phpize отрабатывает.

воскресенье, 23 декабря 2012 г.

Начало развала GNU?

Лидеры проектов GnuTLS, grep и sed выходят из движения GNU в знак несогласия с политикой Фонда СПО


"Никос Маврогианнопулос (Nikos Mavrogiannopoulos), создатель, ключевой разработчик и лидер проекта GnuTLS, объявил о выводе GnuTLS из-под контроля Фонда СПО и движения GNU. Разработка GnuTLS перемещена из инфраструктуры GNU, при передаче кода проекту больше не требуется подписание соглашения о передаче имущественных прав Фонду СПО.

В качестве причины называется несогласие с системой принятия решений и действиями Фонда СПО, притом, что Никос по-прежнему остаётся сторонником идей, продвигаемых Фондом СПО. Указывается на то, что в движении GNU отсутствует возможность влияния на принятие решений, все решения единолично исходят от Столлмана, а не принимаются в ходе дискуссий, учитывающих различные мнения. Поэтому Никос устал от того, что его участие в проекте ограничивается только написанием кода, без возможности выражения и обсуждения различных точек зрения."

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

Истинные причины неизвестны. То ли проблемы с финансированием, то ли невозможность отдавать код под двойной лицензией и зарабатывать на закрытой версии, то ли неадекватность Столлмана... Сложно судить. Тем не менее, если это будет первым шагом и другие так же начнут выходить из проекта - Столлману не поздоровится.
Только имеет смысл сразу создать другой фонд, чтобы собирать этих уходящих на других условиях... И потом, "Если это плохо реализовано в Unix, не стесняйтесь заменить это на что-то совершенно иное и более совершенное"...

Хотя лишнее дробление чревато сказкой про журавля, рака и щуку.

MySQL Master-Master

Основная дока этой заметки:
Опыт эксплуатации MySQL Master-Master — как пережить аварию датацентра

Плюс о репликации у меня есть
http://dragonflybsd.blogspot.ru/search/label/mysql

Находки программиста: Nginx+Redis: делаем асихронное web-приложение для больших нагрузок

Находки программиста: Nginx+Redis: делаем асихронное web-приложение для больших нагрузок

oDesk

Иностранный фриланс-портал oDesk

nginx: secure_link

http://nginx.org/ru/docs/http/ngx_http_secure_link_module.html
http://wiki.nginx.org/HttpSecureLinkModule

Недокументированные возможности secure_link
Ограничения в secure_link «реальном» мире

Защита от хотлинкинга с помощью настройки nginx

если отдаются файлы с левыми именами:
http://gogs.info/2010/03/set-filenames-with-nginx-secure-download-module/

Для работы нужны ngx_devel_kitngx_http_set_hash

суббота, 22 декабря 2012 г.

Облако от infobox

Вот и infobox включился в популярные нынче облака. Вот только их облако относительно честное типа селектела или это обычный VDS, который можно с натяжкой назвать облачным vds (но не честным облаком!)?
Сам сервис, на базе решения Parallels Automation for Cloud Infrastructure:
http://infobox.ru/cloud/servers/

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

Некоммерческое тестирование продлится до 1 февраля 2013 года.

Хотя надо относиться к услугам компании infobox с некоторой осторожностью: месяца 2 назад они полностью лежали по меньшей мере пол дня (мне помнится, что более суток), включая их днс, которые обязаны быть географически распределены. Так что мешает лечь их облаку при очередном DDoS?
Тем более у них НЕТ нормального дц, а тот что есть, тянет хорошо если на минимальный уровень. Дизеля нет, охлаждение уличным воздухом без фильтров, каналы довольно тощие, покупать честные МБиты канала довольно дорого, около 1.5к руб за 1мбит... Хотя есть надежда, что у них арендованы стойки в 2-3 нормальных современных ДЦ и весь траф не проходит через 1 место (вспоминаем селектел, когда московский ДЦ не был доступен из-за аварии в питере).

UP
http://twitpic.com/r5rpv

Amazon Glacier

Скинули недавно линк на новый сервис амазона Amazon Glacier. Это такое мегадешёвое хранилище для бэкапов со временем доступности данных оттуда порядка 4-5 часов

четверг, 20 декабря 2012 г.

mysql и репликация: Multi-Master Replication Manager for MySQL

MMM (Multi-Master Replication Manager for MySQL) is a set of flexible scripts to perform monitoring/failover and management of MySQL master-master replication configurations (with only one node writable at any time).
То есть это master-master в режиме active-passive.

Основной сайт
http://mysql-mmm.org/
Но там есть такое:
NOTE: By now there are a some good alternatives to MySQL-MMM. Maybe you want to check outGalera Cluster which is part of MariaDB Galera Cluster and Percona XtraDB Cluster.

Судя по тому, что "по вопросам обращайтесь в перкону", лучше действительно посмотреть на Galera/XtraDB.

"Сейчас, в контексте настоящей синхронной Master-Master репликации (когда целостность данных гарантируется и писать можно одновременно на все ноды кластера) много говорят про Galera. Кто-то скажет, что для этого можно попробовать использовать давно известный MySQL NDB Cluster — но широко известно, что этот «автожир» подходит очень узкому кругу приложений, редко из мира веб.
Мы с интересом следим за Galera — возможно именно на ней в будущем будут строить подлинные Master-Master кластера, а пока посмотрим что полезного можно извлечь из имеющихся хорошо проверенных стабильных инструментов."
http://habrahabr.ru/company/bitrix/blog/146490/
И снова битрикс-блог...

Галеру/XtraDB рассмотрю отдельно, как руки дойдут. Скорее всего, будет применяться у нас для отказоустойчивости, гео-кластер.

Даже с MMM остаётся вопрос идентичности данных на нодах. Как там реализована проверка целостности? Есть ли тогда автоматическое лечение? Скорее всего, нет ничего, и для небольших таблиц надо делать CHECKSUM TABLE, а с большими будет засада.

Линки
Installation Guide
http://mysql-mmm.org/mysql-mmm.html
http://habrahabr.ru/company/bitrix/blog/146490/

бэкап mysql без простоев

Самый простой метод бэкапа - на рабочем сервере - часто вызывает простои, поскольку на время бэкапа БД вешает локи, и на больших таблицах это бывает очень заметно. Простой способ решить эту проблему - сделать на отдельном или даже том же сервере инстанс БД в режиме slave, только не забываем выставить уникальный server-id и прописать в конфиг слейву режим read-only. И теперь можно сделать очень интересную штуку: остановим слейв (достаточно только SQL thread) и можно дампить. Из плюсов - мы даже можем дампить разные базы и таблицы в разные файлы, сохранив при этом целостность репликации! То есть можно потом загрузить на новый сервер все эти файлы, и мы будем знать master_log_pos для этой схемы! Суть в том, что поскольку слейв остановлен, master_log_pos меняться не будет, поэтому достаточно сохранить пару log_pos и log_file и мы можем использовать этот комплект при разворачивании нового слейва или даже мастера. Главное, не забыть залить полную структуру :)

Есть вариант 2, поставив flush tables with read lock и сделав снапшот, но это хоть небольшой но простой и не очень хорошо автоматизируется: из самого mysql не сказать "сделать снапшот", и нельзя закрывать соединение с базой раньше времени, иначе лок снимется. Вдобавок, если была обработках больших объёмов, можно очень долго ждать пока лок встанет, что может сильно увеличить простой системы. И опять же для правильного бэкапа нужен отдельный инсанс базы, например innodb нельзя бэкапить просто запаковав его файлы.

Вариант 3 - используя mysqldumpslow, но ничего про него сказать не могу, у нас пока не применялось. И вопрос с сохранением master_log_pos, особенно применимо к записи по разным файлам.

Для MyISAM есть метод простого копирования файлов, сделать только сначала flush tables, и снова это не сохранит позицию.

среда, 19 декабря 2012 г.

Python Imaging Library во FreeBSD

Нужно для django например. Странно, что пакет py27-django-1.4.2 (у меня) не втянул PIL по зависимостям.

Находится оно в graphics/py-imaging, впрочем есть еще graphics/py-pillow, юзер-френдли вариант. хз в чём это выражается.
Также может потребоваться поставить graphics/jpeg, если его не втянет само. Выражаться будет в том, что с jpeg будут ошибки, а всякие png будут обрабатываться нормально.

вторник, 18 декабря 2012 г.

ZFS+DTrace+Zones+KVM

ZFS+DTrace+Zones+KVM
http://smartos.org/


SmartOS is a specialized Type 1 Hypervisor platform based on Illumos. It supports two types of virtualization:
  • OS Virtual Machines (Zones): A light-weight virtualization solution offering a complete and secure userland environment on a single global kernel, offering true bare metal performance and all the features Illumos has, namely dynamic introspection via DTrace
  • KVM Virtual Machines: A full virtualization solution for running a variety of guest OS's including Linux, Windows, *BSD, Plan9 and more

SmartOS is a "live OS", it is booted via PXE, ISO, or USB Key and runs entirely from memory, allowing the local disks to be used entirely for hosting virtual machines without wasting disks for the root OS. This architecture has a variety of advantages including increased security, no need for patching, fast upgrades and recovery.

Как работает ZFS

Как работает ZFS

Интересные материалы, плюс в комментах много.
часть 1: vdev
часть 2: metaslab

По мере появления буду обновлять, "в планах как минимум 8-10 статей про разные компоненты ZFS"

понедельник, 17 декабря 2012 г.

IPv4: вести с фронта

Из-за нехватки ipv4 адресов гайки начали закручивать уже несколько лет как.

Сейчас многие провайдеры не выдают более 1 блока, и для расширения этого блока надо сдать старый и сделают новый. Требования к причинам получения ужесточаются, первыми попали в запреты СЕО, которые часто выкупали под нужды проксей и парсинга блоки по 256 адресов и более (.24), потом были всякие VPN, всё неохотнее начали выдавать под виртуализацию. Многие полностью отказались от выдачи блоков и айпи можно получать только поштучно, описывая для каждого сферу применения.

Многие компании начали вводить плату за каждый айпи, например в fastvps 1 дополнительный айпи стоит 1200р, и более того, лимит 2-3 айпи на сервер.

Селектел также вводит оплату, но уже абонентку:
"С 17 января 2013 года вводится абонентская плата за аренду IPv4 адреса для услуги облачных серверов.
Стоимость аренды составит 10 копеек/час (2.4 рубля в сутки) за каждый арендованный IPv4-адрес.

Для того, чтобы сохранить возможность использовать ресурсы облака с минимальной стоимостью, мы к 17 января реализуем функцию, позволяющую отказаться от аренды IPv4 адреса и использовать только IPv6.

Введение мер по уменьшению использования IPv4-адресов и стимуляции перехода на IPv6 является вынужденной."
Из тикетов. То есть в месяц 1 айпи будет выходить примерно в 70 руб.

Документ, на который опираются многие:
https://www.ripe.net/ripe/docs/ripe-553

пятница, 14 декабря 2012 г.

хостинг rucenter - небольшой faq

переключение версии php
http://hosting.nic.ru/support/shift_host.shtml#p6

не работает session_start
http://forum.nic.ru/showthread.php?t=3713
(выключен модуль session)
Зайдите в Панель управления хостингом - Веб-сервер - Управление модулями - Далее кликаете на включенный у вас модуль PHP и там включаете session.
Там же можно и нужно включать mysql, mysqli, итд.

понедельник, 10 декабря 2012 г.

CentOS 5 и perl 5.10+

Дело в том, что штатно версия в системе 5.8.8.
Если надо свежее:
1) Подключить допрепу, например
https://packages.endpoint.com/rhel/5/os/

wget https://packages.endpoint.com/rhel/5/os/`uname -i`/endpoint-repo-1.0-2.i386.rpm
rpm -i endpoint*

yum install local-perl и далее perl-* заменяем на local-perl-*
(тут версия 5.10)

2) использовать perlbrew

The "Modern" way of setting up a version of Perl different from the system Perl is by using
perlbrew - this way you can maintain a Perl version on a per-user basis without messing too much with the system installed perl; this way system installed stuff that uses Perl still works without problems.

http://serverfault.com/questions/269018/perl-5-10-on-centos-5

yum install perlbrew

perlbrew init
(выполняем, что сказали)

смотрим список того, что нам вообще доступно
perlbrew available

Ставим.
perlbrew install perl-5.12.5
но тут можно получить "упс":

Можно получить
Installing /root/perl5/perlbrew/build/perl-5.12.5 into ~/perl5/perlbrew/perls/perl-5.12.5

This could take a while. You can run the following command on another shell to track the status:

  tail -f ~/perl5/perlbrew/build.log

Installing /root/perl5/perlbrew/build/perl-5.12.5 failed. See /root/perl5/perlbrew/build.log to see why.

А в логе:
...
./trygcc: line 25: gcc: command not found
./checkcc: line 10: cc: command not found
Uh-oh, the C compiler 'cc' doesn't seem to be working.

То есть нету gcc.
Доставим:
yum install -y gcc
Как я понимаю, компилятор обязателен, тогда непонятно, почему он не указан в зависимостях.

Повторяем install, получаем

Installed /root/perl5/perlbrew/build/perl-5.12.5 as perl-5.12.5 successfully. Run the following command to switch to it.

  perlbrew switch perl-5.12.5


Какие версии доступны для переключения
perlbrew list

Больше информации в perlbrew help

Также к нему рекомендуют ставить cpanm
плюс
"в общем, если сильно беспокоит вопрос актуального состояние всего и вся, то можно поставить App::cpanoutdated и с нужной периодичностью запускать «cpan-outdated | cpanm» сначала в тестовом окружении, а затем в продакшене"

3) собрать свои пакеты и поставить их.
Полно док типа
http://administraher.blogspot.ru/2010/12/upgrade-perl-588-to-5122-perl.html
но проблема в make install clean без контроля, что куда и как ставится. Поэтому _необходимо_ собрать пакеты и уже ставить их.
И да, будет конфликт версий, поэтому ставить надо будет  в нештатное место, что опять же при тупом make install clean приведет к проблемам.
И вообще, если perlbrew делает всё нужное включая отслеживание, сборку и установку, зачем извращаться?...

воскресенье, 9 декабря 2012 г.

awstats в CentOS

В версии 6 пути были
/usr/share/awstats/wwwroot

Тогда как в 7 уже
/var/www/awstats/

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

Итак, сначала подключаем rpmforge. Потом
yum install awstats

Теперь надо проверить конфиг /etc/httpd/conf.d/awstats.conf, путь должен быть /var/www/awstats. Если не так - посмотреть в /etc/httpd/conf.d/awstats.conf.rpmnew

Часть 2:
настройка.
Настройки для парсинга сайтов лежат в /etc/awstats/ в формате awstats._site_.conf
Настроек в файле много, подробнее есть в доках. За основу можно взять конфиг awstats.model.conf

Для генерации статистики автоматом ставится скрипт на запуск раз в час, в
/etc/cron.hourly/00awstats
вписывается
/usr/bin/awstats_updateall.pl now -confdir="/etc" -awstatsprog="/var/www/awstats/awstats.pl"

Ручное обновление

awstats_buildstaticpages.pl -config=_site_ -update
(для 6 версии было perl /usr/share/awstats/wwwroot/cgi-bin/awstats.pl -config=_site_ -update)


Теперь обращаемся за данными
site.com/awstats/awstats.pl?config=_site_
где вместо _site_ вписываем сайт так, как он указан в имени конфига.

Сами данные лежат в
/var/lib/awstats/

Нюансы
Лучше сразу настроить access_log как combined и указать это в настройках awstats для сайта, там информации будет побольше.

4 - Apache or Squid native common log format (NCSA common/CLF log format)
With LogFormat=4, some features (browsers, os, keywords...) can't work.

это про тип common.

Возможные ошибки

503 Forbidden

You don't have permission to access /awstats/awstats.pl on this server.

Причина: в /etc/httpd/conf.d/awstats.conf прописано
order deny,allow
deny from all
allow from 127.0.0.1
решение - вписать свои айпи или просто сделать order allow,deny

суббота, 8 декабря 2012 г.

nginx: внутренние переменные

http://wiki.nginx.org/HttpCoreModule#Variables

$uri + $args - полный исходный запрос без протокола и имени сайта.
$server_protocol + $host + $uri + $args - плюс имя хоста и протокол
$request_uri - адрес до модификаций, $uri (оно же $document_uri) - после.

Ещё из наиболее часто используемых (у нас)

$cookie_COOKIE
The value of the cookie COOKIE;



$http_HEADER
The value of the HTTP request header HEADER when converted to lowercase and with 'dashes' converted to 'underscores', e.g. $http_user_agent, $http_referer...;


$is_args
Evaluates to "?" if $args is set, "" otherwise.



Для отладки может пригодиться модуль echo.

?: keys.gnupg.net: Host not found

Бывает и так:

# gpg --keyserver  hkp://keys.gnupg.net --recv-keys E9F0E9223BBF077A
gpg: requesting key 3BBF077A from hkp server keys.gnupg.net
?: keys.gnupg.net: Host not found
gpgkeys: HTTP fetch error 7: couldn't connect: Connection timed out
gpg: no valid OpenPGP data found.
gpg: Total number processed: 0

Решение, поиск которого занял пол дня - использовать другой сервер. Вопрос именно в том, какой сервер указывать.
# gpg --keyserver hkp://subkeys.pgp.net --recv-keys E9F0E9223BBF077A

Дальше как обычно
# gpg -a --export 3BBF077A | apt-key add -

среда, 5 декабря 2012 г.

nginx: пишем location-ы

Оказалось, есть нюансы...

Основная дока:
(en) http://wiki.nginx.org/HttpCoreModule#location
(ru) http://wiki.nginx.org/NginxRuHttpCoreModule#location
Лучше читать англ версию, она актуальнее и более полная. Что странно, учитывая автора.

2 вида записи:

location [ = | ~ | ~* | ^~ ] uri { ... }
location { } @ name { ... }

Первый вариант рассмотрим далее, 2 - это внутренняя секция, куда можно попасть через try_files, error_page

Шаблоны указываются без кавычек.


Порядок обработки:

  1. = Строковые совпадения. Если найдено, проверка заканчивается. = значит полное совпадение шаблона и проверяемой строки, например = / - заход в секцию будет исключительно для корня, и даже файлы в корне уже сюда не подходят.
  2. ^~ Приоритетное строковое значение. Хотя по-моему было бы правильнее назвать "приоритетным регулярным выражением", поскольку в отличии от = требуется совпадение только начала. ^~ / полностью отключит регулярные выражения для секции server, если нет более точного location без ^~
  3. Строковые значения (/download/). Ищется максимальное совпадение, смотрится только с начала пути. Если нужно совпадение вида /*/download/, то это уже будет п.4, так что в уме можно читать такую запись как /download/* Но на этом проверка не заканчивается!
  4. ~, ~* Регулярные выражения, в порядке определения в конфиге. При совпадении - выполняется этот регэксп, проверка заканчивается. ~ - с учётом регистра, ~* - без.
  5. Если не было найдено подходящей регулярки, используется наибольшее совпадение из п.3.

"Для определения соответствия location'а и запроса сначала проверяются location'ы, заданные обычными строками. Среди них ищется максимальное совпадение. Так как строки лексически отсортированы, то поиск прекращается, как только URI становится лексически больше location'а. Конфигурация максимально совпавшего location'а запоминается. Затем проверяются регулярные выражения. В отличие от обычных строк, они не сортируются, а проверяются в порядке их следования в конфигурационном файле. И, кроме того, поиск прекращается уже после первого совпадения.

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

Кроме того, с помощью префикса "=" можно задать точное совпадение URI и location. При совпадении поиск сразу же прекращается, так как дальше искать не имеет смысла. Например, если запрос "/" очень частый, то указав "location = /", можно ускорить обработку этого запроса, так как поиск location прекратится после первого же сравнения."

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

Как быть, если надо ловить пути вида /что-то/что-то-еще/path123/ ? Путь только 1 - регэкспы.
location ~ /path123/ {

При отладке не забываем про режим debug в error_log сайта и оператор break, позволяющий остановить проверку.

Mysql: некоторые особенности ORDER BY

Оптимизация ORDER BY — о чем многие забывают

Мы тоже с этим столкнулись. В одной базе один запрос выполнялся 30-50 сек, с join 7 таблиц (такова структура проекта). При этом для одной из таблиц почему-то не использовались индексы, хотя они все были, и выбирало каждый раз все 500к строк, чтобы оставить в итоге 1. Плюс Using temporary; Using filesort

Убрав в конце ORDER BY, запрос стал выполняться порядка 5 секунд, и стали использоваться индексы Using index, но в rows всё-равно указывало все 500к строк.

Перешли на SELECT STRAIGHT_JOIN, сохранив сортировку - время вышло тоже порядка 5с, но при этом снова сортировало всё.

Плюс
http://dev.mysql.com/doc/refman/5.1/en/order-by-optimization.html
Как MySQL оптимизирует ORDER BY, LIMIT и DISTINCT

четверг, 29 ноября 2012 г.

bitrix + debian

Битрикс хочет несколько моментов для работы (то, что вызывает больше всего вопросов):
  1. mbstring + 2 строчки в настройках
  2. права на запись
  3. обработчик .htaccess

apache: Особенности работы сайтов от заданных пользователей

Штатно все сайты работают от пользователя апача (www, www-data, apache).

Как изменить это поведение на работу от заданного пользователя:
suphp
suexec
cgi/fastcgi
apache-mpm-itk

Особенности:
для mpm-itk выставляем пользователя через
AssignUserID

Для isp также надо вписать в ispmgr.conf:
Option ApacheMPM

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

Для suexec опция
SuexecUserGroup

но!!! работает suexec только в режиме cgi/fastcgi! Через mod_php пользователь будет апача. Связано с тем, что apache через suexec запускает php от заданного пользователя и передаёт ему коннект через mod_proxy.

Также в режиме fastcgi будет особенность обработки конфигурационных файлов, в частности в debian будет читаться только содержимое каталога
/etc/php5/apache2/conf.d/
но при этом полностью игнорируется содержимое
/etc/php5/apache2/php.ini

Таким образом, для каждого пользователя надо вносить изменения в
/var/www/_user_/data/php-bin/php.ini
а глобально - создавать файлы в

/etc/php5/apache2/conf.d/

Например для fastcgi и битрикса можно создать глобальный файл 
/etc/php5/apache2/conf.d/mbstring.ini
с содержимым

[mbstring]
mbstring.internal_encoding = UTF-8
mbstring.func_overload = 2

также обычно я выношу файл datetime.ini (по имени секции из главного конфига), где выставляется таймзона сервера.




Линки
куда делся режим "PHP как FastCGI"

среда, 28 ноября 2012 г.

Xen Cloud Platform 1.6

Вышел Xen Cloud Platform 1.6
http://xen.org/download/xcp/releasenotes_1.6.0.html


Сообщество разработчиков XEN представило очередную версию открытой платформы для построения облачной инфраструктуры Xen Cloud Platform (XCP) 1.6. Более года разработки и несколько промежуточных релизов потребовалось для выхода готового к промышленной эксплуатации продукта. Функционально XCP 1.6 повторяет возможности Citrix XenServer 6.1, но не имеет искусственных ограничений, присущих бесплатной версии Citrix XenServer. По сравнению с прошлой версией XCP 1.1 платформа получила следующие ключевые особенности:

  • Переход на кодовую базу Xen 4.1, CentOS 5.7.
  • Технология Storage XenMotion, позволяющая выполнить живую миграцию виртуальных машин вместе с дисками как между серверами без использования общего хранилища, так и между независимыми пулами серверов.
  • GPU Pass-Through — проброс видеокарт в гостевые системы теперь поддерживается официально.
  • Улучшены производительность и масштабируемость, поддерживается до 1 ТБ памяти на хост, до 16 виртуальных процессоров и 128 ГБ памяти на виртуальную машину.
  • В качестве сетевого стека по умолчанию теперь используется Open vSwitch. Включена поддержка IPv6, добавлена возможность агрегации каналов NIC bonding и LACP bonding.
  • Добавлена поддержка гостевых систем Ubuntu 12.04, RHEL/CentOS 6.2, Oracle EL 6.1 & 6.2, Windows 8. Драйверы для операционных систем Windows теперь доступны через Windows Update.
  • Управление через Citrix XenCenter теперь поддерживается из коробки, без необходимости ручной правки конфигурации хоста и гостевых систем.

Следующий релиз XCP, намеченный на август 2013 года, ознаменуется сменой мажорной версии на 2.0 и переходом на кодовую базу Xen 4.2, Linux 3.x, CentOS 6.x.

http://www.linux.org.ru/news/linux-general/8524554

Сравнение версий

Скачать

пятница, 23 ноября 2012 г.

Файловые системы для Больших Данных

Интересно почитать: доступно про Lustre и ZFS
http://www.osp.ru/os/2011/05/13009415/

Активация Jumbo Frames в Citrix XenServer SP2

Копипаст с http://blog.plastilin.org.ua/2011/07/jumbo-frames-citrix-xenserver-sp2.html - блог какой-то полумёртвый, может исчезнуть..

centos 5 и mkfs.ext4

Штатно в 5 ветке нету mkfs.ext4:

# mkfs.ext4 /dev/vg-www/www
-bash: mkfs.ext4: command not found

Фикс:
# yum install -y e4fsprogs

всё :)
# mkfs.ext4 /dev/vg-www/www
mke4fs 1.41.12 (17-May-2010)

четверг, 22 ноября 2012 г.

elastix + skype

До 2011 года связать астериск и скайп можно было только через их совместный проект chan_skype - фирменный платный канальный драйвер. Требовал доустановки кодека g729, включенного в стоимость скайп-лицензии. Но после покупки микрософтом скайпа модуль прекратил развитие.
PLEASE NOTE: Skype for Asterisk is no longer available for sale. Skype for Asterisk will be supported for two more years, until July 26, 2013.
Поэтому по запросу "asterisk skype" выдает только доки до 2010 года, с chan_skype.

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

А что сейчас?
Сейчас они дают связь с миром через SIP, сервер sip.skype.com. Но для работы требуется бизнес-аккаунт.
Называется Skype Connect. Quick Start GuideTroubleshooting Guide

Аналоги

Офдока
http://docs.digium.com/SFA/skype_for_asterisk_admin_manual.pdf

Простейшая настройка транка:
[skype]
host=sip.skype.com
username=XXXXXX – SIP User according to your Skype Connect profile.
secret=YYYYY – password from your Skype Connect profile
type=friend
qualify=yes
context=from-trunk – Where all incoming calls are placed.
Более полная

[skype]
type=friend
context=from-skype
username=<my user from the registration method>
secret=<my pass from the registration method>
canreinvite=no
insecure=port,invite
dtmfmode=rfc2833
host=sip.skype.com
port=5060
qualify=yes
fromuser=<my user from the registration method>
fromdomain=sip.skype.com
disallow=all
allow=ulaw
allow=alaw
allow=g729
nat=yes

ранее
(у кого есть лицензия Digium, она действительна до 2013 года)
Ставим кодек g.729 и chan_skype:
yum install -y asterisk-chan-skype asterisk-codec-g729.i386
(если что, это есть в repo.elastix.org/elastix/2/extras/i386/repodata/primary.xml.gz)
после этого с сайта качается активатор лицензии, запускается, заполняется форма.

среда, 21 ноября 2012 г.

SSD серверного назначения

Обычно стоят сильно дороже бытового сегмента, но обладают бОльшей наработкой на отказ. Обычно на SLC, но сейчас появляется всё больше на eMLC.

Из наиболее известных - intel x25-e, на SLC, уже снятый с производства.

Известная серия FusionIO - ставится в pci-e, очень быстрые, но очень дорогие диски.
Первый взгляд на Fusion-IO ioDrive2 плюс комменты.

Про intel 710 уже было

http://habrahabr.ru/qa/24271/#answer_99211
Надежность — 520 интел.
Скорость — 4 вертекс.
Бюджетность — круциал.

На nix.ru есть тестирование:
http://www.nix.ru/hardware-review/ssd-benchmark-performance.html
...где практически на всех дисках в описании "Невозможно использование в серверах из-за недостаточного ресурса", что основано на технологии их чипов памяти. Хотя опять же, в роли кэша чтения жить они будут нормально.


У 520 интела (да и у многих других ссд) есть нюанс: чем больше объём, тем выше скорость (iops). Это связано с тем, что микросхемы памяти там ставятся параллельно, и внутри диска будет несколько одновременных каналов работы. И чем больше микросхем, тем больше каналов можно задействовать (до лимита чипа, обычно 10 каналов), поэтому отличия 60 и 180гб моделей по иопс примерно в 3 раза.. а вот дальше уже роста скорости почти нет.


(потом дополню еще моделями)

find

Несколько док с примерами поиска (find).
Они под линукс, потому что freebsd немного но отличается. Например:
find . -mtime -20d
где d - days, также можно указать second, minute, hour, day, week. В линуксе такое не работает.

http://linuxland.itam.nsc.ru/book/unix09/find/
http://www.opennet.ru/docs/RUS/linux_base/node149.html

И один из примеров:
find . \( -name 'dn.c' -o -name 'c*.gz' \) -print
Думаю, всё понятно.. а сколько мне понадобилось времени это найти..
Обратите внимание на пробелы, отделяющие круглые скобки от критериев поиска.

вторник, 20 ноября 2012 г.

mod_rpaf

Небольшая памятка про mod_rpaf и внешний айпи

Суть проблемы в том, что .htaccess получал "не тот" айпи, без подмены.

(заметка аж 2010 года, но до сих пор иногда бывает актуально)

"Собрал модуль для apache mod_rpaf с патчем исправляющим проблему .htaccess"
http://centos.alt.ru/?p=184

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

В таких случаях можно посмотреть на nginx-модуль realip, хотя по сути они делают одинаковые вещи: выставляют заголовки X-Forwarded-For или X-Real-IP. Вообще, тогда имеет смысл рассмотреть переход на обработку самим nginx-ом.

правда и заблуждения о долговечности SSD

Kingston HyperX 3K: правда и заблуждения о долговечности SSD

Складывается ощущение, что даже с 3к-ячейками эти диски долговечны... Тем не менее, многие дают на такие диски гарантию всего год, причём если у диска выработан полностью ресурс (!) -- это уже не гарантийный случай (!!). Ну и вспоминаем SLC с ресурсом в 100к записей на ячейку.

А сложно ли выработать этот ресурс? На самом деле - несложно. И даже если исключить серверную сферу, где такой диск можно "съесть" за месяц, банально windows 7 + мало памяти + swap на таком диске - работать будет неплохо.. но довольно недолго. Не месяц конечно, но год это будет уже очень хорошо.
Поэтому эти диски хороши там, где много чтения и мало записи - кэш чтения, система без свопа, фильмы, игрушки...

понедельник, 19 ноября 2012 г.

Intel Xeon E5-2400 and E5-2600 Series Processor Comparison with List Prices

Intel Xeon E5-2400 and E5-2600 Series Processor Comparison with List Prices


У E5-2400 - сокет LGA 1356, только 1 QPI link и только 3 канала памяти на процессор, макс 6 ядер.
У E5-2600 - сокет LGA 2011, 2 QPI links и 4 канала памяти, макс 8 ядер.

Серии 2х0х (240х, 260х) не имеют гипертрединга, так что в системе каждый такой проц будет всего с 4 ядрами.

Известно о планах с 2600 на 10 ядер, но цена там пока явно неадекватна приросту производительности.

http://www.theregister.co.uk/2012/05/14/intel_xeon_e5_2600_4600_server_chips/page2.html

http://www.dell.com/us/business/p/d/large-business/intel-xeon

The Intel Xeon Processor E5-2400 product family addresses the needs of growing small and medium businesses for 2S severs.
The Intel Xeon Processor E5-2600 product family provides mainstream leadership.

суббота, 10 ноября 2012 г.

Наценка за бренд

Хороший пример наценки за бренд, на примере СХД (где всё очень печально):
http://forum.ixbt.com/topic.cgi?id=66:2005-110#3996


V3700
200GB 2.5In SAS SSD             USD 7,405.00
400GB 2.5In SAS SSD             USD 16,110.00

V7000
200GB 2.5-inch SSD (E-MLC)   USD 9,544.00
400GB 2.5-inch SSD (E-MLC)   USD 18,352.00

Такие же диски-оригиналы (SAS) стоят порой в 10-20 раз дешевле. С SSD ещё веселее: помимо  самих расходов на устройство + бренд + всякие проверки совместимости сюда еще похоже включают упущенную прибыль: такие же диски на примере intel 710 серии:
Intel 710 Series ( Lyndonville) 200GB 2.5" SATA II eMLC Enterprise Solid State Disk SSDSA2BZ200G301 - OEM

790 и 9550 долларов. Чуть меньше чем на порядок. А чтобы люди не ставили такие же диски но без фирменных шильдиков - используется вендор-лок, и работают только "Сертифицированные" дорогие диски.

четверг, 8 ноября 2012 г.

система на базе Chenbro ES34169


Система интересна для SOHO - небольшая, тихая, 4 хот-своп диска. В сумме дешевле того же HP Microserver, а по возможностям круче. Плюс, если что-то в этой системе откажет, найти замену можно, в отличии от HP.

  Support up to 7"x7" M/B
·  Built-in 4-Port SAS/SATAII backplane
·  Optional 4-in-1 card reader and riser card
·  Removable M/B tray for easy installation and maintenance
·  Support keylock and Kensington security slot
·  Support 120W external power adapter

Умеет SAS! При этом очень маленький и тихий. Хотя БП всего 120Вт.
http://www.chenbro.com/corporatesite/products_detail.php?sku=167
http://www.fcenter.ru/products.shtml?eshop/act=h:a:0:10&oper=99167


Есть модель постарше, 180Вт, с внешним БП
http://www.chenbro.com/corporatesite/products_detail.php?sku=79


По (compatible) совместим с платами SuperMicro:
 X7SPA-LX7SPA-HX7SPA-HF
Наиболее интересна -HF
L - atom D410
H - atom D510
HF - atom D510 + IPMI

Впрочем, народ извращается и с бытовыми платами: ASUS C60M1-IASUS E35M1-IZOTAC M880GITX-A-E...
К слову, zotac своих денег не стоит (порядка 8к), за эти деньги лучше будет топовая supermicro с 2 LAN, IPMI, серверной надёжностью итд.

обсуждение

четверг, 1 ноября 2012 г.

несколько SSL сертификатов на 1 IP

Ключевое слово - SNI

Тонкость: XP+IE в пролёте.


Browsers with support for TLS server name indication[5]
Internet Explorer 7 or later, on Windows Vista or higher. Does not work on Windows XP, even Internet Explorer 8.
Mozilla Firefox 2.0 or later
Opera 8.0 or later (the TLS 1.1 protocol must be enabled)
Opera Mobile at least version 10.1 beta on Android[citation needed]
Google Chrome (Vista or higher. XP on Chrome 6 or newer.[6] OS X 10.5.7 or higher on Chrome 5.0.342.1 or newer)
Safari 2.1 or later (Mac OS X 10.5.6 or higher and Windows Vista or higher)
Konqueror/KDE 4.7 or later [7]
MobileSafari in Apple iOS 4.0 or later[8]
Android default browser on Honeycomb (v3.x) or newer[9]
Windows Phone 7[citation needed]
MicroB on Maemo



Servers
Apache 2.2.12 or later using mod_ssl[10][11][12] (or alternatively with experimental mod_gnutls[13])
Apache Traffic Server 3.2.0 or later.
Versions of lighttpd 1.4.x and 1.5.x with patch,[14] or 1.4.24+ without patch[15]
Nginx with an accompanying OpenSSL built with SNI support

понедельник, 29 октября 2012 г.

Небольшой обзор dect voip drandstream DP715/DP710


К сожалению, без фото.

Возможности этих трубок очень интересны.

Комплект
Сами трубки в простых коробочках, всё по пакетам, в комплекте 2хААА аккумулятора ni-mh на 500mAh.
715 - база полноценная, с LAN портом.
710 - трубка + зарядник.

p5-File-Listing-6.04 conflicts with installed package(s): p5-libwww-5.837

При попытке обновления p5-libwww-5 на p5-libwww-6 может вылезти такая штука:
...
===> p5-libwww-6.04 depends on package: p5-Encode-Locale>=0 - found ===> p5-libwww-6.04 depends on package: p5-File-Listing>=6 - not found ===> Verifying install for p5-File-Listing>=6 in /usr/ports/sysutils/p5-File-Listing ===> p5-File-Listing-6.04 conflicts with installed package(s): p5-libwww-5.837 They install files into the same place. You may want to stop build with Ctrl + C. ===> License ART10 GPLv1 accepted by the user ===> p5-File-Listing-6.04 conflicts with installed package(s): p5-libwww-5.837 They will not build together. Please remove them first with pkg_delete(1).

пятница, 26 октября 2012 г.

Zalman VE-300 (с usb3)

Вышла обновлённая версия (пол года как) zalman/iodd бокса с эмуляцией сд-привода.
200 уже рассматривался, год исправно служит. К слову, работает не всегда, на ряде компьютеров ни в какую не виделся как сд, в основном на старых платах, поэтому отдельную флэшку всё-равно приходится носить. Может с 300 будет получше?..

Из изменений:

  • исчез переключатель режима записи, теперь он на кнопке
  • эмуляция blu-ray дисков
  • поддержка usb3
  • исчез eSATA порт
  • по комментам, интерфейс сильно тормознее чем у 200, долго грузится после подключения
  • новая кнопка backup


Обсуждение на форуме
http://forum.ixbt.com/topic.cgi?id=11:42979-8#253

Для подключения к старым машинам (в режиме 2.0) с горячим диском имеет смысл сразу найти в продаже кабель типа такого:
http://www.ebay.com/itm/Black-USB-3-0-Y-Cable-A-Male-to-Micro-B-USB-3-0-Male-/190647978207?pt=LH_DefaultDomain_3&hash=item2c638148df


Памятка по работе с джойстиком:


1. Если удерживать кнопку резервного копирования (BackUp) при подключении - то автоматически включится защита от записи (либо выбором соответствующего пункта в меню).
2. Если удерживать левую кнопку при подключении - то автоматом защита будет снята
3. Если при работе колесико повернуть вниз и удерживать - будет произведена подготовка к безопасному отключению устройства. Тот-же эффект будет от нажатия и удерживания кнопки резервного копирования (BackUp).
4. Если при работе колесико повернуть вверх и удерживать - будет произведено сканирование директории _ISO. Удобно, после записи новых образов на HDD.
5. Если кнопка резервного копирования (BackUp) нажата в Меню, она перемещает на 1 уровень вверх.
6. Помимо Меню, кнопка резервного копирования используется для своей первоначальной
функции резервного копирования данных (если установлена и запущена программа резервного копирования).



В никсе
http://www.nix.ru/autocatalog/hdd_accessories/Zalman_ZMVE300_Black_BOX_2.5SATA_HDD_USB3.0_Al_DVD_Bluray_132268.html

среда, 24 октября 2012 г.

SIP провайдеры

http://www.telphin.ru/index.php/tariffs
http://www.mango-office.ru/tariffs
http://zadarma.com/ru/intertel/tariff
http://www.betamax.ru/tarif

Почти у всех есть АТС, callback и прочие плюшки цифровых атс.

Но несколько "забавно" получается с 8-800 номерами, например:
telphin
Категория
номера
Стоимость подключения Абонентская платаГарантированный платеж
1, пример 8-800-333-1111 Договорная1180 руб.21240 руб.
2, пример 8-800-333-4000 Договорная1180 руб.17700 руб.
3, пример 8-800-333-2020 59000 руб.1180 руб.12390 руб.
4, пример 8-800-333-4008 41300 руб.1180 руб.7670 руб.
Без категории14750 руб.1180 руб.590 руб.

mango office

Обычные Абонентская плата: 590,00 руб. Подключение: 2 200,00 руб. (за один номер)
Серебряные Абонентская плата: 590,00 руб. Подключение: 7 200,00 руб. (за один номер)
Золотые Абонентская плата: 590,00 руб. Подключение: 17 200,00 руб. (за один номер)
Платиновые Абонентская плата: 590,00 руб. Подключение: 77 200,00 руб. (за один номер)
Эксклюзивные по запросу

Хотя ещё большое значение будет иметь стоимость минуты, но для небольших объёмов хорошо видно, кто предпочтительнее.

вторник, 23 октября 2012 г.

SIP SRV Server Resolution (RFC 3263 - Locating SIP Servers)

RFC3263
http://www.cisco.com/en/US/docs/voice_ip_comm/sip/proxies/2.1/administration/guide/ddns.html

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

FXO или LifeLine?

FXO это когда можно использовать встроенный порт "снаружи", то есть привязывается отдельный сип аккаунт, порт делается транковым, и на каком-нибудь астериске настраивается для исходящих.
Пример lifeline -- siemens gigaset, серия IP (450, 470, 595, 510, 610). В них телефонный порт использовать можно исключительно с трубок, привязанных к базе.

понедельник, 22 октября 2012 г.

DECT IP телефония

В офисах часто делают внутреннюю телефонию. И DECT получается удобнее стационарных телефонов. А что взять?

Для небольших офисов хорошо подходят обычные dect ip телефоны, умеющие GAP, и на 1 базу можно привязать до 6 трубок. А почему для небольших? Нет таких вещей как ретрансляторы/повторители, всего 6 трубок на базу, а одновременных вызовов и тех - от 2 до 4. Плюс нет бесшовного перемещения между базами.
Частично проблемы можно решить, частично - просто терпеть.. Но даже для 100 человек такие системы уже сложны в обслуживании и неудобны. Несколько упрощает настройку такая штука как Auto/manual provisioning system. В сименсе этого нет, в панасонике preprovisioning можно сделать только 1 раз (откуда брать настройки), в грандстиме нормально сделано. В более серьёзных устройствах это обязательная опция.

Оборудование, которое заслуживает внимания:
Siemens gigaset
Пожалуй, наиболее известный производитель таких решений. При этом совсем бюджетный, то есть работает оно хорошо, но дальше дома или офиса из 5 человек уже плохо применимо. И с каждой версией появляется всё больше "домашних" штук вроде работы с twitter, facebook, ebay, погодой, гороскопами...

C450IP/C470IP (снято с производства и поддержки). Очень тормозной веб-интерфейс, довольно тормозные трубки. замена - C595IP, потом C610 IP
C595IP (снято с производства). Замена - C610 IP
A510 IP
C610 IP
Отличия между сериями - поддержка автоответчика, разные экраны, в последних сериях появилось HDSP (High Definition Sound Performance). При этом ни одна модель не умеет русский Caller Name.
510 и 610 - держат (2+1) разговоров -- 2 VoIP + 1 городской.
"Модель C610A IP - это небольшой ребрендинг-рестайлинг C595IP, по сути с тем же функционалом. Рестайлинг заключается в появлении серебристой накладки под экраном, а ребрендинг в исчезновении на базе слова Siemens."
http://icepartners.ru/gigaset-c610a-ip.html
2 ветки, которые развиваются параллельно, подешевле и подороже:
450 - ??? - 510 и
470 - 595 - 610
в версии подороже обычно присутствует автоответчик и выход на гарнитуру.

panasonic
У них пока только 1 серия, типа пилотной - 500. До этого не было IP.

Обзоры, даже положительные, показывают пока еще сырость продукта. И оно с глянцем, осторожно!

Grandstream
Оборудование в целом достойное и качественное, с большим количеством настроек, но есть неудачные серии.

DP715/DP710

"Стык" бытовой и бизнес-телефонии -- такие решения как Polycom KIRK, но там 1 базовая станция KIRK 300 уже будет стоить от 15 тысяч за 12 трубок и 4 активных канала. Сами трубки тоже от 5 тысяч.

Уровня поликома также можно назвать Aastra.

Также был найден RTX 8630 (9тыс без трубок?), трубка порядка 6 тыс.. Но по возможностям -- очень много плюшек... Есть даже виброзвонок.


RTX8630 уникальное решение SIP- DECT, которое поддерживает до 200 абонентов в одной беспроводной сети.
до 200 зарегистрированных абонентов
от 1 до 40 базовых станций в сети
10 обычных или 4 широкополосных голосовых канала на одну базу
10 вызовов с кодеками G.726 / G711
10 вызовов с кодеком  G.729 (опционально DSP)
4 вызовова с широкополосным кодеком G.722
кодеки G.726, G.711,l G.729, G.722 (широкополосный)
питание через PoE
синхронизация "по воздуху"
поддержка handover
поддержка до 6 репитеров
http://www.siptrade.ru/katalog/voip_telefony/dectiptelefony/bazovaya_stantciya_rtx_8630.html

Совсем бизнес-решения это всякие Avaya, но ценники там совсем негуманные, вдобавок та же avaya -- вещь очень "в себе", на каждый чих нужна лицензия и нет никакой совместимости.

ЗЫ И не стоит забывать о таких вещах как телефоны с wi-fi. Тогда АТС в том или ином виде обязательна, можно и арендованная в интернете, зато ряд проблем типа перемещения по большой площади решаются легче.
Например Welltech WP589, серия Polycom SpectraLink, а также sip phone на обычном сотовом телефоне.

ЗЫ2 И никто не отменял такие решения как SPA2102 + пара дешёвых аналоговых DECT телефонов. По цене - вполне может выйти очень хорошо. Но вот по сложности настройки, количеству узлов и проводов...
С другой стороны, все базы из первого раздела  умеют GAP - единый стандарт для dect-трубок, так что можно подключить и трубки за 1.5к рублей/пара. Но про плюшки типа сообщений, перевода вызовов итд - можно забыть.

Линки
http://www.voip-info.org/wiki/view/DECT

воскресенье, 14 октября 2012 г.

nginx: favicon.ico

По стандарту, "картинка (иконка) сайта" должна быть. Поэтому в еррлоги активно пишется на каждый запрос, что favicon.ico not found.
Можно для nginx создать секцию
location /favicon.ico {
    root ...
    log_not_found off;
    access_log off;
}

Есть опция empty_gif
location /favicon.ico {
    empty_gif;
    access_log off;
}

Таким образом будет отдаваться прозрачный гиф 1х1px на все запросы иконки.

А теперь объединим.
location /favicon.ico {
    access_log off;
    try_files $uri @emptygif;
}
location @emptygif {
    internal;
    empty_gif;
}

линки

русский раздел на форуме Nginx закрыт.

Home > Archive (read-only) > Russian Forum > Topic
Раздел форума закрыт и находится в архиве

Фактически всё общение происходит и происходило всегда в списках рассылки nginx. В связи с этим данный раздел форума был закрыт и отправлен в архив.

Вы можете задать свой вопрос в разделе форума, связанном с русскоязычном списком рассылки: http://forum.nginx.org/list.php?21 , либо (рекомендуется) подписаться на рассыку и спросить непосредственно там: http://mailman.nginx.org/mailman/listinfo/nginx-ru

пятница, 12 октября 2012 г.

Немного об оборудовании разных хостеров

Кто-то эту информацию скрывает, кто-то -- нет. Например, у selectel и fastvps эта информация доступна по запросу.

Пока по 2 компаниям, наиболее интересные моменты, возможно потом дополню другими.

selectel, dedicated
Серверы Intel Atom D525 работают на материнской плате: Supermicro X7SPA-HF.
Серверы Intel Xeon E3-1230 работают на материнской плате: Supermicro X9SCL-F.

FastVPS

EX4
Mainboard Asus P8H67 
CPU Intel Core i7-2600 
RAM 16 GB DDR3
HDD 2*(Seagate) 3 TB 7200rpm

EX6
Mainboard Asus P8B WS 
CPU Intel® Xeon® Processor E3-1245 
RAM 16 GB DDR3 ECC
HDD 2*(Constellation ES.2) 3TB 7200 rpm

EX8
Mainboard Asus P8B WS 
CPU Intel® Xeon® Processor E3-1275 
RAM 16 GB DDR3 ECC
HDDs can be chosen.
KVM


SSD-контроллеры

http://www.3dnews.ru/storage/618144?top-articles-block

О контроллерах SandForce и твердотельных приводах на его основе мы писали уже не раз. Фактически добрую половину раздела «Накопители» за последние полгода составляют материалы, описывающие SandForce во всех его проявлениях. Что поделать, если продукт этой молодой компании буквально оккупировал рынок массовых SSD на MLC-микросхемах. Вот и еще один представитель большого семейства, Kingston HyperX.

четверг, 11 октября 2012 г.

Небольшая подборка линков по "облачным" услугам

Тестирование дисков облачных провайдеров
Облачные услуги «Cloud хостинг». Интервью с поставщиками услуг
Выбираем отечественного поставщика облачного хостинга
Функциональное и экономическое сравнение российских операторов предоставляющих облачные услуги

По линкам видно, кого вообще можно считать условно облачными. Условно потому, что обычно это простые вдс с маркетинговой шелухой.
Также читать комменты - тот же clodo активно пиарится, а на деле отзывы весьма негативны.
Плюс 100% стабильных просто нет, все сбоили и падали, но кто-то типа скалакси этим болел несколько месяцев, кто-то типа селектела просто на сутки выпадал.. итд

Как правильно мерять производительность диска

Как правильно мерять производительность диска

fio давно знаю, гоняли им наши SSD intel 320. Замеры есть в комментах

WD Red

Несколько запоздало, но для меня это оказалось новостью. Четвёртая серия (blue, green, black), red

WD Red


Обзор на 3dnews:
http://www.3dnews.ru/storage/637274

понедельник, 8 октября 2012 г.

nginx: закрываем сайт на обслуживание

Варианты
1) в location /

## System Maintenance (Service Unavailable)
if (-f $document_root/system_maintenance.html ) {
error_page 503 /system_maintenance.html;
return 503;
}
error_page 503 /system_maintenance.html;

location = /system_maintenance.html {
   root /var/www/;
   internal;
}
(if нежелателен - там куча ограничений, нюансов и оно довольно сильно грузит сервер, IfIsEvil)

2) try_files closed.html @apache =503;
(проблема в том, что в таком варианте код ответа при обслуживании будет 200). Хотя можно сделать отдельный location closed.html и в нем выставить код ответа 503, по желанию оттуда же отдать и саму страницу.
Можно написать как
try_files /maintenance.html $uri $uri/ @wordpress;
но если индекса нет и апач перекидывает на какую-то внутреннюю страницу с рядом опций - могут быть проблемы, если такой файл вдруг появится, а это не предусмотрено системой. Плюс, если была встроенная фильтрация на бэкенде - так ее можно обойти. Ну и 2 лишние проверки получаем. С другой стороны, для простых движков этот вариант будет быстрее и если вся статика не вынесена по отдельным location, автоматом начнётся раздача статики. Но снова безопасность, надо тогда создавать location на потенциально опасные места и там запрещать, обязательно. В частности на .ht, .svn, .git, служебные области. В общем, лучше первая версия этого варианта.

3) через переменную и if
set $Maintenance = off;
if ($Maintenance = 'on') ...
но см выше про if.

4) выделить блок, закрывающий сайт на обслуживание в отдельный файл maint.conf, сделать 2 файла maint-on.conf и maint-off.conf, и вешать симлинк на нужную версию файла с именем maint.conf и потом делать reload. Можно не симлинком а копированием. Самый быстрый способ, но требует немного кодинга.

Линки

activecloud

Захотелось завести для теста акк на activecloud.ru... На данный момент впечатление удручающее. Качество проверить так и не удалось, ибо обещанные ресурсы примерно на месяц тестов (на слете сисадминов 2012 была брошюрка, что можно для тестов получить) до сих пор не выдали. Кошмарный сайт. на котором так и не получилось найти поля "вход в панель управления", потому что панелей оказалось даже не 2, а минимум 4. Для партнеров, какая-то вообще левая с базой знаний и тикетами, панель биллинга, куда уже неделю попасть не могу, и похоже под каждый сервис ещё своя.

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

Зато партнёрка у них крутая, да. Платят за размещение всякого вида баннеров, текста, привлечение клиентов... За привлечение хорошие проценты...
Видимо, не могут взять качеством, поэтому берут агрессивной рекламой. "Мы говно, но всем известное говно" (мтс, перефразировано)

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

UP
Удалось завести акк. Про отстойнейшую панель управления будет отдельно.
Снова порадовали тикеты: там 3 уровня важности - обычный, высокий, авария. Время ответа на высокий приоритет - 10 часов, больше часа передавали в другой отдел и еще 9 - этот отдел думал.

Панель управления - получить доступ к своему серверу - отдельный квест. Точнее, узнать эти параметры. Логин-пароль спрятаны где-то на 5 уровне вложенности, имя куда цепляться явно не указано нигде.. Или просто мне найти не удалось. Хотя само имя сервера в нескольких местах светится, незаметно так.
Часть 2 - как получить к нему доступ -- там ispmanager, но при обращении просто по имени сервера ничего нет. И даже на /manager - ничего. Надо еще явно указать https!
пример:
https://demo4653.atservers.net/manager/ispmgr

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

UP
Найдена нормальная админка а-ля селектел:
https://cc.activecloud.com/client/

vlan-ы на cisco и аналогах

В частности, у EdgeCore и Huawei подобный синтаксис

interface FastEthernet0/11 
 switchport trunk encapsulation dot1q
 switchport trunk allowed vlan 34
  switchport mode trunk

switch#(enable) clear trunk 3/28  1-33,37-333,335,337-1005
switch#(enable) set trunk 3/28 on dot1q 34-36,334,336
The first command disallows some VLANs, the second one allows specific VLANs.

The command
show trunk
can be used to control the trunk state.

http://people.freebsd.org/~arved/vlan/vlan_en.html

vlan-ы

FreeBSD:
Ручной запуск (для проверки или временно)
ifconfig em0.100 create (freebsd 5.3+)
где em0 - наша сетевая;
100 - vlan id

или
ifconfig vlan100 create
ifconfig em0 192.168.0.1/24 vlan 100
(или так: ifconfig vlan100 vlan 100 vlandev em0; ifconfig vlan100 inet 192.68.0.1/24)

Нюанс. Основной интерфейс должен быть поднят (up), даже если на нем не выставлен айпи.
ifconfig em0 up

В конфигах вариантов больше.
До версий 7.3 и 8.1 был вариант указания вланов только через cloned_interfaces (совсем изврат через опцию ядра  pseudo-device vlan 10 опустим), сейчас их больше.

также хорошо бы помнить про опции vlanmtu, vlanhwtag, vlanhwfilter, vlanhwcsum, vlanhwtso

Linux:
Схема типовая: ставим vconfig и грузим 8021q.
Ручной запуск
modprobe 8021q; vconfig;

/sbin/vconfig add eth0 100
Это создаст tagged vlan 100 на eth0. Оригинальный eth0 при этом остается untagged. Теперь выставим айпи.
/sbin/ifconfig eth0.100 192.168.0.1 netmask 255.255.255.0 up

С конфигами - у каждой ОС своя специфика, поэтому линки ниже + гугл.

Просматривать информацию о VLAN-подыинтерфейсах в Linux можно через /proc:
cat /proc/net/vlan/eth0.100

Есть вариант через ip link add (iproute2), описание есть на xgu.ru

Управление tso (offload) выполняется через ethtool

Линки
http://people.freebsd.org/~arved/vlan/vlan_en.html
http://xgu.ru/wiki/VLAN_%D0%B2_FreeBSD
http://bsdadmin.ru/index.php/freebsd/34-freebsd/47-vlan

http://xgu.ru/wiki/VLAN_%D0%B2_Linux
http://xgu.ru/wiki/VLAN_%D0%B2_CentOS
http://dragonflybsd.blogspot.com/2011/12/vlan.html

воскресенье, 7 октября 2012 г.

сроки поддержки ОС

Было найдено на хабре:

Для себя решил поинтересоваться сроками поддержки разных всяких ынтырпрайзных ОС. Как-то так получилось:

DaaS

Довольно интересный вариант
http://www.activecloud.ru/ru/services/daas/
DaaS (Desktop-as-a-Service) — комплексное решение по построению инфраструктуры виртуальных рабочих столов на базе облачной платформы ActiveCloud. Вы сможете быстро развернуть рабочие места сотрудников, а ваши коллеги получат рабочее окружение и набор всех необходимых приложений удаленно через сеть Интернет, что обеспечит надежность, мобильность и безопасность IT-инфраструктуры.

Правда, тут предполагается только windows. Было бы хорошо еще сделать решение на базе linux - это было бы дешевле, но без таких пакетов как ms office.

Бывают варианты "рабочий стол в браузере", но отлаженных вариантов мне пока не встречалось.

fastvps.ru: отличия NHS и EX серий

NHS - более старая версия, на базе 1366 сокета.
EX - более новая, на 1155.
Имеет смысл помнить при использовании таких ФС как FreeBSD, что на NHS оно уже давно отлажено и проблем с поддержкой железа нет, а с EX надо тестировать, особенно с SAS.

вторник, 2 октября 2012 г.

Мониторинг работы php

Без потери производительности:
Pinba — бесплатный серверный программный инструмент для сбора статистики и мониторинга PHP скриптов в реальном времени, использующий базу данных MySQL в качестве интерфейса. Предназначен для высоконагруженных проектов с большим количеством кода.
http://ru.wikipedia.org/wiki/Pinba

Статья о настройке и интеграции Pinba на работающем коде «Pinba — мониторим php в реальном времени»

Более серьёзные, но с потерей производительности, и более универсальные:
xhprof
xdebug (2)

Особенность xdebug в том, что он создает огромную нагрузку, дамп работы 1 клиента может быть под 150мб... И формат у него cachegrind - надо искать парсеры. Зато подробностей очень много.

суббота, 29 сентября 2012 г.

mysql: сколько занимает база/таблица

Иногда надо посмотреть, сколько места занимают все базы, для myISAM это можно сделать через du. Но чаще нужно, сколько занимает 1 база или даже таблица.

Размер таблицы:
show table status like '%table%'
и ищем Data_length плюс Index_length (размер данных и индексов)

Для myisam можно опять же посмотреть на размер файлов этой таблицы. Для innodb - если режим "файл на таблицу", так же, иначе - только через table status.

Посчитать размер индекса:
SELECT TABLE_SCHEMA, SUM(INDEX_LENGTH) FROM information_schema.TABLES GROUP BY TABLE_SCHEMA;
Так сделано вроде в ispmanager.

Для размера базы - или считаем через du для myisam, или через show table status и сложением для innodb без разбиения по файлам.

Компания Western Digital анонсировала линейку жестких дисков объемом 4тб

Компания Western Digital анонсировала линейку жестких дисков SAS и SATA для обычных покупателей и корпоративных пользователей. Основной особенностью данной линейки является наличие накопителя объемом 4 терабайта.
Серия 3.5-дюймовых WD RE SATA накопителей состоит из моделей объемом 2 Тб, 3 Тб и 4 Тб. SAS диски представлены в объемах 1 Тб, 2 Тб, 3 Тб и 4 Тб. Все новинки работают на скорости 7.200 об/мин.
Новые накопители обещают от 1.2 миллиона до 1.4 миллиона часов работы на отказ. А используемая здесь технология NoTouch обещает, что считывающие головки никогда не коснуться самих блинов (их используется 5, каждый объемом 800 Гб).
Все жесткие диски будут поставляться с 5 летней гарантией.

пятница, 28 сентября 2012 г.

event scheduler

Начиная с версии 5.1, в mysql появился встроенный планировщик а-ля cron - event_scheduler

Perfect Workflow in Sublime Text 2

Perfect orkflow in Sublime Text 2

I’m a confessed code editor addict, and have tried them all! I was an early adopter of Coda, a TextMate advocate, even a Vim convert. But all of that changed when I discovered Sublime Text 2, the best code editor available today. Don’t believe me? Let me convince you in this course.

настройки транка для telphin на asterisk

Памятка. (на конец 2010 года была верной)

вторник, 25 сентября 2012 г.

selectel снова лежит...

В очередной раз у селектела проблемы, только в этот раз они отмалчиваются. Около 22 часов ноды отпали, около 23 одна на небольшое время вернулась в строй и снова отпала. 2:24, всё пока лежит, информации нет. Печально.

UP
В 7 утра ответили:
"В результате сбоя в работе сетевого оборудования, возникла проблема со стабильностью связи между хостами виртуализации и хранилищами, данные не затронуты. В настоящий момент работа сети стабилизировалась, и идет запуск всех машин, которые работали до сбоя."

Но по системам мониторинга последние ноды запустились только в 11.30.
Очередной "хороший" сбой более чем на 12 часов.

UP2
Колбасит дальше.
"К сожалению, произошла потеря связности в сети передачи данных.
Ответственным специалисты уже извещены, ведутся восстановительные работы.

Срок восстановления ориентировочно, составит несколько часов."

Мотает 15 часов уже.

UP3
Итог. Колбасило 25 часов, аптайм был менее 50%. Интересно, что у них случилось, что всё лежало так долго.

Итог: http://habrahabr.ru/company/selectel/blog/152351/

понедельник, 24 сентября 2012 г.

Доставка приложений и тонкие клиенты. Можно доставлять конкретные приложения, можно целиком виртуальную машину.

Наиболее интересные технологии -- SPICE (RedHat) и vdi (citrix, vmware)

Технологии у citrix (XenDesktop (протокол ICA)) и VmWare (VMware View Client (протокол PCoIP))

Правильный расчет для VDI (vmware)

freebsd+percona

Какое-то время, почти 2 года, был порт percona-server, но зимой возникли проблемы с его сборкой, и он как-то тихо пропал. Полностью пропал. Что с одной стороны печально, с другой - уже есть оф мускл 5.5 + mariadb, в которой есть и aria и xtradb и pbxt... Хотя на sql.ru марию не любят, и мне довелось долго с ней возиться. Версия 5.2.4 например была кошмаром, к 5.2.6 основные баги выловили, сейчас 5.3.8 - работает неплохо и весьма стабильно, с учетом что у нас много репликаций между серверами.

Интересно, в каких версиях кроме перконы есть такая штука:
http://kb.askmonty.org/en/slow-query-log-extended-statistics/

Отслеживание зависаний

Бывает так, что работал себе сервер, и вдруг не отвечает или просто не пускает, хоть и пингуется. А после перезагрузки в логах всё_хорошо_а_вот_пошла_загрузка. Проблема актуальна только для "неполноценных" систем, коими кишит дешёвый хостинг, и наиболее известный - хецнер/фаствпс.
2 основных метода решения проблемы, не считая серьезные решения типа IPMI/SOL:
1) через syslog (rsyslog)
2) netconsole - 1, 2, 3

Nexenta

Очень интересная система для локальной СХД, построена на форке opensolaris с zfs.

http://www.nexentastor.org/projects/site/wiki/CommunityEdition
http://mosqit.ru/solutions/storage/177-nexenta.html

Максимум в хранилище 18Тб, без поддержки.

Нужен будет ключ

Установка

Готовые решения
Одна проблема - цен найти на это так и не удалось.

Файлер на ZFS для облачной инфраструктуры — NexentaStor
Тестируем VPS на базе сервера KVM с томами, подключенными по iSCSI c файлера NexentaStor

php-сессии в memcached

В php.ini:

session.save_path=tcp://127.0.0.1:11211
session.save_handler=memcache
session.name=SESSIONID

С ispmanager может быть бага
Fatal error: session_start(): Failed to initialize storage module: memcache (path: /home/user/data/mod-tmp) in ...

"Внутри VirtualHost в конфиге Apache прописан php_admin_value session.save_path и оттуда берется значение на которое ругается в ошибке."

Тест конфигурации mysql

Простейший вариант:
mysqld --help

(примечание для freebsd: надо с полным адресом
/usr/local/libexec/mysqld --help)

Подробнее, с переменными
mysqld --verbose --help

Указав другой конфиг для тестирования
mysqld --defaults-file=/tmp/new.cnf --verbose --help

четверг, 20 сентября 2012 г.

Dell CacheCade

В процессе изучения документации была найдена интересная строчка про cachecade:

NOTE: To avoid inefficient use of space, it is recommended that CacheCade volumes are created with drives of the same size. Larger disk sizes are truncated to the size of the smallest contributing disk, similar to RAID 0.

Получается, силами рейда просто делается зеркало между ssd и обычными дисками. То, что софтово можно было сделать лет 10 как например во freebsd через gmirror, выставив режим чтения в load/priority.
Так что вещь по сути полезная, но давно делающаяся штатно в нормальных системах. В отличии от того же MaxIQ, который гораздо интуитивнее и ускоряет работу всех дисков, а не маленького кусочка.

Плюс большой вопрос, умеет ли этот cachecade технологию TRIM, без которой на ряде дисков можно _вдруг_ получить просадку производительности в 3-4 раза, которую будет очень сложно исправить.

типы SSD

http://www.dell.com/downloads/global/products/pvaul/en/Solid-State-Drive-FAQ-us.pdf

Сейчас есть 3 основных типа:
SLC
MLC
eMLC


вторник, 18 сентября 2012 г.

mdadm: наиболее часто используемые команды

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

Дополнение к первому посту.

Просмотр статуса массивов
cat /proc/mdstat

Список массивов
mdadm --detail --scan --verbose
Этот же вывод иногда нужен для конфига mdadm.conf

Статус конкретного массива, подробный
mdadm --detail /dev/md2

Перестройка нужного массива - замена отказавшего диска (удалить из массива и снова внести)
mdadm --manage /dev/md0 -r /dev/sdc3
mdadm --manage /dev/md0 -a /dev/sdc3

При необходимости, можно регулировать скорость процесса расширения массива, указав нужное значение в файлах
/proc/sys/dev/raid/speed_limit_min
/proc/sys/dev/raid/speed_limit_max

Управление синхронизацией через файл
echo idle > /sys/block/md2/md/sync_action

Много на xgu.ru

вторник, 11 сентября 2012 г.

hpa-tftp

Настраиваем hpa-tftpd, так как он из немногих, которые умеют работать не через inetd а как демон.

Во freebsd оно лежит в ftp/tftp-hpa

Запускать для тестов можно так:
/usr/local/libexec/in.tftpd -L -p -c /tftpboot
L: работать в консоли (не уходить в фон), удобно при отладке и частом перезапуске. При этом имеет смысл добавить -v
l: запуститься в фоне
p: пропускать ряд проверок. Зачастую на тестах облегчает жизнь.
c: разрешить создавать файлы.
Также можно включить режим s: сделать chroot в указанный каталог.

Запускается демон от nobody, поэтому у каталога должны быть права на работу от этого пользователя.

При отладке в клиенте желательно включать подробный режим:
$ tftp hostxyz
tftp> ver
Verbose mode on.
tftp> trace
Packet tracing on.
tftp> get send.txt
getting from hostxyz:send.txt to send.txt [netascii]
sent RRQ

Из проблем: может быть такое
Sending RRQ: filename: 'file.txt', mode 'netascii'
Waiting 5 seconds for packet
Got ERROR packet: Only absolute filenames allowed

Значит надо указать полный путь к файлу.
get /tftpboot/file.txt

И снова не забываем про права на рабочий каталог и файлы в нём. Флаги по умолчанию
tftpd_flags:="-s /usr/local/tftp"

Демон по умолчанию сделает чрут в /usr/local/tftp.

линки
http://icesquare.com/wordpress/solvedtftp-error-code-2-access-violation/
http://www.suacommunity.com/forum/tm.aspx?high=&m=13561&mpage=1#13570

понедельник, 10 сентября 2012 г.

Памятка про спец биты

kryukov.biz/wiki/Специальные_права

Поскольку специальные права используются крайне редко, при выводе программы ls символ, их обозначающий, закрывает символ стандартных прав доступа. И не понятно, rwt — это rw- или rwx? Определить, стоит ли символ стандартных прав доступа под символами s и t очень просто. Если t маленькое, значит x установлен. Если T большое, значит x не установлен. То же самое правило распространяется и на s.

4=SUID
2=SGID
1=sticky

Устанавливать можно как g+s, u+s...

На каком оборудовании и софте работают поисковые роботы Google

Указал бы оригинал, но он просто засран всяким сеошным мусором.


пятница, 31 августа 2012 г.

freebsd: модульный ipfw - особенность настройки

По умолчанию ipfw в виде модуля работает в режиме запрета, поэтому после включения в rc.conf строкой firewall_enabled=YES можно получить недоступную систему. По живому изменить поведение нельзя:

# sysctl -w net.inet.ip.fw.default_to_accept=1
sysctl: oid 'net.inet.ip.fw.default_to_accept' is a read only tunable
sysctl: Tunable values are set in /boot/loader.conf

Особенность в том, что обычно параметры для sysctl правятся в /etc/sysctl.conf, но не в данном случае! Тут надо вписывать именно в /boot/loader.conf:
net.inet.ip.fw.default_to_accept=1

Вариант 2, не такой красивый и более опасный: в rc.conf
firewall_enable="YES"
#firewall_type="/etc/firewall.conf"
firewall_type="open"

(строка с type="/etc/firewall.conf" закомментирована)
Проблем будет больше, в частности с ipfw -f flush - всё отвалится.

четверг, 30 августа 2012 г.

Fetching 4 new ports or files... gunzip: unknown compression format

Иногда при portsnap fetch update вылезает ошибка
Fetching 4 new ports or files... gunzip: unknown compression format

которую очень сложно поправить. Иногда оно правится удалением базы и повторным выкачиванием (rm -r /var/db/portsnap/*), иногда это не помогает. Причина обычно - какой-то сбой на серверах обновлений, надо выяснить, откуда пытаемся обновиться и забаннить его, например через внесение этого имени в hosts или просто указанием, с какого конкретно сервера хотим обновиться.

среда, 22 августа 2012 г.

selectel: увеличиваем диск

Для паркинга уже была инструкция, теперь для selectel, уже вкратце.

Имеем: отдельный диск под /var/www, расположенный на диске /dev/xvdb, целиком отданным под lvm, с именем vg--www-www (группа vg-www, имя www), путь /dev/vg-www/www

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

Размер в панели уже увеличен.

Для начала, надо будет отмонтировать раздел. (umount)

Смотрим где наш том
pvdisplay

Растянем на весь новый диск.
pvresize /dev/xvdb

pvdisplay
Alloc PE / Size 8191 / 32.00 GiB
Free PE / Size 8192 / 32.00 GiB
Было 32, стало 64. Нормально.

Теперь надо увеличить наш том
# lvextend -l +100%FREE /dev/vg-www/www
Extending logical volume www to 64.00 GiB
Logical volume www successfully resized

И файловую систему.
# resize2fs /dev/vg-www/www
resize2fs 1.41.12 (17-May-2010)
Please run 'e2fsck -f /dev/vg-www/www' first.

# e2fsck -f /dev/vg-www/www
...

# resize2fs /dev/vg-www/www
resize2fs 1.41.12 (17-May-2010)
Resizing the filesystem on /dev/vg-www/www to 16776192 (4k) blocks.

С первого запуска не прошло - надо сначала проверить раздел.
Всё, можно монтировать и работать.

Можно попробовать ptmax, но не совсем понятно, в какое место ей тыкать.
Надо выжать из саппорта селектела их вариант без перезагрузки, пока у меня не получилось.

вторник, 21 августа 2012 г.

400 Bad Request Request Header Or Cookie Too Large

Самое просто решение - почистить куки. Если же сервер наш, можно подкрутить настройки серверов:

для nginx это
large_client_header_buffers 4 8k;

Можно выставить например 16к, но дальше будет ошибка
Your browser sent a request that this server could not understand.
Size of a request header field exceeds server limit.

Потому что надо увеличить эти же значения и для apache
LimitRequestFieldSize 8190

Можно выставить
LimitRequestFieldSize 16380

Но проблема может быть и по другой причине.
Включаем в nginx.conf строку

error_log  /var/log/nginx/error.log info;


И видим в логе

2012/11/28 13:15:42 [info] 77783#0: *1146484 client sent too long header line: "X-Forwarded-For: 1.2.123.24, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, 127.0.0.1, ..." while reading client request headers, client: 127.0.0.1, server: _, request: "GET / HTTP/1.0", host: "site.ru"

Это признаки циклического редиректа, например в proxy_pass указан тот же порт, на котором сидит сам nginx (и так бывает иногда, да)

суббота, 18 августа 2012 г.

Очередная авария в selectel

В 19.10 сегодня (17.08) произошел сбой:

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

Видимо, хваленое дублированное СХД не помогло.

До сих пор (18.08, 00:20):
"Пострадавшие виртуальные машины запускаются. Просьба не перезагружать виртуальные машины, их перезагрузка будет крайне замедленной. "
и
"Пострадавшие виртуальные машины запускаются. В результате ошибочной коммутации часть хранилищ оказалась отключенной от хостов виртуализации. Просьба не перезагружать виртуальные машины, их перезагрузка будет крайне замедленной. Компенсация за даунтайм будет предоставлена в начале следующего месяца. Приносим извинения за созданные проблемы. "

понедельник, 6 августа 2012 г.

freebsd и percona mysql

На сегодняшний день перкона-сборка сломана. Есть набор патчей:
http://www.freebsd.org/cgi/query-pr.cgi?pr=ports/164072
Но
1) патчи аж февральские, но до сих пор не втянуты
2) даже после ручного применения могут быть проблемы.

Так что пока или воевать с конфликтами сборки, или ставить пакетами, или использовать пока оф версию или марию (mariadb)