Довольно долго мы наблюдаем не очень хорошую ситуацию с серверами Carbon Billing Softrouter 4 с используемым встроенным Carbon Reductor и сообщаем, что в скором времени мы будем вынуждены прекратить поддержку этой ветки продукта. Собственно эта статья о причинах почему мы это делаем и о том, что делать тем, кто сейчас пользуется Carbon Reductor на этих маршрутизаторах.
Скажем заранее: пользующихся версией Carbon Reductor для CentOS 6 можно поздравить с тем, что их эти проблемы не беспокоят, а уже перешедшим на неё мы очень и очень благодарны.
Проблемы
Первая проблема в том, что это разные продукты с несколько разными задачами, которые при этом сильно зависят друг от друга и одновременно друг другу мешают. Иными словами, задача Carbon Reductor — фильтровать трафик, никак не влияя на качество предоставляемой абоненту связи. Само собой, находясь на сервере, через который абонент идёт в интернет такое невозможно, задержки растут. В случае, если сервер Carbon Reductor обрабатывает зеркало трафика это неважно — оригинальный трафик идёт точно так же как он шёл, если бы Carbon Reductor не было, нагрузка мозгов свитчей от зеркала трафика возрастает незначительно.
Второй проблема является скорее следствием первой. Поскольку проекты сильно зависят друг от друга — нельзя обновлять их по отдельности. А так уж сложилось, что большая часть пользователей маршрутизаторов обновлять их не очень любит, а регулярно и автоматически (2-3 раза в неделю) тем более, ибо это простои в доступе в сеть, а в случае с Billing Softrouter 4, помимо части отвечающей за маршрутизацию обновляется и биллинг. Мы уверены, все системные администраторы считают, что не стоит лишний раз трогать то, что замечательно работает и разделяем это мнение. Однако Carbon Reductor — довольно динамичный проект, новые версии выходят практически каждый день (обычно даже несколько), поскольку практически каждый день меняется наш неидеальный окружающий мир и мы стремимся не отставать от него. Для корректной работы ему необходимо обновляться хотя бы два раза в неделю.
Третья проблема больше внутренняя — сложность в использовании новых технологий в столь стабилизированной платформе. То, что делается в версии для CentOS 6 за час, практически одной строчкой в версии для Carbon Billing Softrouter 4 и Carbon AS 4 иногда приходится делать очень нетривиальным способом. Более того, эти версии довольно отличаются между собой, поэтому Carbon Reductor встроенный в Carbon Billing Softrouter 4 довольно сильно отстаёт от CentOS 6.
Четвёртая причина — в ядре Linux, используемом в Carbon Billing Softrouter 4 имеется небольшая, но неприятная проблема, возникающая очень редко (может не возникать вообще, может возникать раз в полгода), связанная с зацикливанием пакетов при очень активном использовании цели REJECT в iptables, приводящем к зависанию серверов. В последнее время такие случаи участились из-за проведения проверок роскомнадзора (в это время происходит довольно большое число REJECT’ов при срабатывании блокировок). Нам бы не хотелось, чтобы это беспокоило наших дорогих клиентов и их абонентов. До того как появился Carbon Reductor нам удалось сократить частоту появления этой проблемы до двух раз в год на всех клиентов, так что после переезда она вас вряд ли будет беспокоить. В версии ядра, используемой в CentOS этой проблемы уже нет.
Пятая причина — за последний год практически все уже самостоятельно переехали на CentOS 6 ради новых фишек, версию для Carbon Billing Softrouter 4 сейчас используют всего 18 клиентов, сопровождать её дальше становится уже просто не то чтобы невыгодно, скорее неразумно.
Что будет дальше?
Главное то, что мы хотим чтобы у всех наших клиентов был положительный опыт работы с продуктом и отсутствие проблем с роскомнадзором, но дать его в рамках версии для Carbon Billing Softrouter 4 мы далее не можем. Это хорошие и проверенные временем маршрутизаторы, но для фильтрации стоит использовать отдельное решение. Мы уже выпустили версии в которых можно легко (буквально две опции, галочка и IP адрес) настроить зеркалирование трафика с маршрутизатора на отдельный сервер Carbon Reductor и таким образом переехать на него буквально за пару часов (разве что может потребоваться добавить ещё одну сетевую карту под зеркало, чтобы не нагружать сетёвку для абонентов).
Никаких заморочек с лицензиями и так далее мы устраивать не будем, вам не нужно будет даже ничего переоформлять (главное отписаться с техническую поддержку, чтобы мы помогли с переездом на новый сервер и затем с обоих сторон подтвердили что новый сервер работает правильно). Пользователям SLA сопровождение и аутсорсинг мы бесплатно поможем настроить аппаратное обеспечение и подтюнить сетевой стэк нового сервера для максимальной производительности захвата трафика и фильтрации.
План прекращения поддержки
Само собой мы предоставим достаточно времени чтобы переехать и прекратим поддержку не завтра и не через месяц. Блокировать сервера и саботировать их работу мы само собой не будем, нам это ни к чему. Всё работает так же как и сейчас.
- 27 мая 2015 — первое оповещение об этом и прекращение новых продаж лицензий на Carbon Reductor, встроенный в Carbon Billing Softrouter 4. Начало помощи с переездом. До 1 июня 2015 мы постараемся дополнительно уведомить об этом клиентов с встроенным Carbon Reductor персонально.
- 1 августа 2015 — последний полный бэкпорт с версии для CentOS. Без этого вносить мелкие исправления в оставшиеся 4 месяца будет очень сложно из-за большой разницы между ветками. После этого критические исправления в проект вносятся только по заявкам в хелпдеске, с рекомендацией скорейшего переезда на CentOS. На самом деле мы очень надеемся, что таких ситуаций вообще не будет и все отнесутся с пониманием и ещё к началу июля дружно закончат с переездом.
- 1 октября 2015 — после этого какие-либо, даже критические исправления в проект не вносятся даже при наличии жалоб, он остаётся в состоянии «как есть», на любые жалобы ответом будет «нужно переехать на отдельный сервер с Carbon Reductor установленным на CentOS 6″.
Насчёт отдельного сервера — для 100-2000 абонентов хватит практически любого 64битного железа не более чем пятилетней давности, в которое воткнуты две нормальные внешние сетёвки от Intel (для доступа в сеть ладно, так и быть realtek хватит), цена выйдет приблизительно в 25-30 тысяч рублей. В скором времени мы подготовим более качественные рекомендации по железу с конкретными примерами.
И самое главное — мы обязательно всем поможем с переездом!