The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Компания MariaDB представила прокси-сервер MaxScale 2.0

03.10.2016 23:44

Компания MariaDB представила релиз прокси-сервера MariaDB MaxScale, работающего между клиентским приложением и СУБД, и способного решать такие задачи, как обеспечение высокой доступности, балансировка нагрузки, шардинг, разделение запросов на запись и чтение, прозрачное масштабирование, сглаживание процесса миграции инфраструктуры на другие СУБД, выявление атак по подстановке SQL-запросов, работа в роли межсетевого экрана для СУБД, прозрачный мониторинг производительности, организация горячего резервного копирования и т.п. Поддерживается работа с СУБД MariaDB, MySQL и через плагины с PostgreSQL, Microsoft SQL Server и Hadoop. Код проекта написан на языке Си с использованием API epoll и Linux-AIO, специфичных для Linux.

Кроме функциональных изменений выпуск MaxScale 2.0 примечателен переходом на новую схему лицензирования. Вместо лицензии GPLv2 код теперь поставляется под лицензией BSL. Лицензия BSL позиционируется как альтернатива модели Open Core - при использовании BSL код расширенной функциональности изначально открыт и доступен для внесения изменений, но может применяться бесплатно только при соблюдении дополнительных условий, для обхода которых требуется приобретение коммерческой лицензии. В частности, MaxScale может бесплатно использоваться только для конфигураций, включающих менее трёх серверов. Ограничения действуют только до 1 января 2019 года, после чего они снимаются и код начинает поставляться под лицензией GPLv2+.

Для приложения взаимодействие с MariaDB MaxScale ничем не отличается от привычного обращения к СУБД, при этом, MaxScale может в прозрачном для приложения виде обеспечивать распределение запросов на серию серверов или организовать оперативное переключение на запасной сервер в случае сбоя первичного. MariaDB MaxScale позволяет на основе определения правил задавать достаточно сложные пути перенаправления запросов к СУБД. Правила могут привязываться к отдельным типам SQL-запросов, а также учитывать назначение конкретных серверов. Для обеспечения высокой производительности используются методы асинхронной обработки ввода/вывода и мультиплексирование через epoll.

Основные новшества:

  • Режим захвата изменений данных (CDC - change data capture), позволяющий выявлять и перенаправлять на заданные узлы запросы, приводящие к изменению данных. Например, можно транслировать изменения в отдельные хранилища больших данных, такие как Hadoop, используя системы доставки сообщений, подобные Kafka. В состав включён модуль binlog-to-Avro, который позволяет подключиться к master-серверу MariaDB 10.0, преобразовать бинарный лог событий в формат Avro и транслировать изменения на другой сервер в форматах JSON или raw Avro с использованием протокола CDC;
  • Возможность работы в роли межсетевого экрана с end-to-end SSL-шифрованием канала связи для защиты от неавторизированного доступа к данным;
  • MaxAdmin, клиентское ПО для управления и мониторинга за работой MaxScale, переведено на новую схему аутентификации - для соединения с MaxScale теперь применяется только domain socket, удалённый доступ больше не поддерживается;
  • Добавлена опция max_connections для ограничения максимального числа соединений;
  • Классификатор запросов, применяемый в MaxScale для принятия решений о дальнейших действиях с определённым запросом, переведён со встраиваемого варианта MariaDB на SQLite;
  • Добавлен модуль readwritesplit для создания отказоустойчивых конфигураций, в которых в случае сбоя в работе master-узла, запросы на чтение будут автоматически перенаправлены на запасные slave-узлы, т.е. несмотря на недоступность основного сервера сохранится возможность выполнения запросов, не приводящих к изменению данных. Состояние master- и slave- серверов отслеживаются при помощи модуля mysqlmon.


  1. Главная ссылка к новости (https://mariadb.com/news-event...)
  2. OpenNews: Основатели MySQL начали продвижение лицензии BSL, как альтернативы Open Core
  3. OpenNews: В MariaDB будет встроен механизм борьбы с атаками, манипулирующими подстановкой SQL-кода
  4. OpenNews: Представлен прокси-сервер MariaDB MaxScale
  5. OpenNews: Релиз проекта pgpool-II 3.0
  6. OpenNews: Увидел свет GreenSQL-FW 1.2.0, межсетевой экран для защиты СУБД
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/45269-maxscale
Ключевые слова: maxscale, proxy
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (29) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, Аноним (-), 00:41, 04/10/2016 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Искал другие балансировки для MySQL но ничего не нашел. Оно вообще водится в природе?
     
     
  • 2.5, Sergei (??), 03:19, 04/10/2016 [^] [^^] [^^^] [ответить]  
  • +2 +/
    www.proxysql.com
     
  • 2.7, Аноним (-), 05:41, 04/10/2016 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Искал другие балансировки для MySQL но ничего не нашел. Оно вообще водится
    > в природе?

    Tungsten, sqlrelay

     
  • 2.8, Аноним (-), 05:42, 04/10/2016 [^] [^^] [^^^] [ответить]  
  • +3 +/
    > Искал другие балансировки для MySQL но ничего не нашел. Оно вообще водится
    > в природе?

    HAProxy, NGINX-Stream

     
     
  • 3.24, rvs2016 (ok), 22:40, 04/10/2016 [^] [^^] [^^^] [ответить]  
  • +/
    >> Искал другие балансировки для MySQL но ничего не нашел. Оно вообще водится
    >> в природе?
    > HAProxy

    Так это же не sql, а TCP/HTTP load balancer:

    % pkg search haproxy
    haproxy-1.6.9                  Reliable, high performance TCP/HTTP load balancer

     
  • 2.12, anonymous (??), 08:27, 04/10/2016 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Уже лет 10 как существует mysql-proxy.
    Эта штука поддерживает скрипты на lua и можно довольно хитрую систему делать.
    Из особенностей - т.к. логика может быть сложная, то надо proxy ставить на каждый сервер.

    Современные proxy, что proxysql что maxscale не такие гибкие и расширяемые (нет встроенного интерпретатора полноценного языка программирования), но работают быстрее и можно обойтись одним прокси сервером.

     
  • 2.23, rvs2016 (ok), 22:32, 04/10/2016 [^] [^^] [^^^] [ответить]  
  • +/
    > Искал другие балансировки для MySQL но ничего не нашел. Оно вообще водится
    > в природе?

    Вот чё-то нашёл:

    % pkg search proxy | grep -i mysql
    mysql-proxy-0.8.4_2            Monitor, analyze, or transform the communication of MySQL

    % cat /usr/ports/databases/mysql-proxy/pkg-descr
    MySQL Proxy is a simple program that sits between your client and MySQL
    server(s) that can monitor, analyze or transform their communication. Its
    flexibility allows for a wide variety of uses, including load balancing;
    failover; query analysis; query filtering and modification; and many more.

    WWW: http://dev.mysql.com/downloads/mysql-proxy/

    Годная штука? Умеет ли работать с несколькими серверами и переключаться на исправные в случае выходя из строя некоторых серверов?

     
  • 2.29, rvm1975 (?), 18:21, 06/10/2016 [^] [^^] [^^^] [ответить]  
  • +/
    из продвинутых citrix netscaler
     

  • 1.2, килЖлик (?), 01:00, 04/10/2016 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    А с PostgreSQL кто нибудь юзал?
    Че по чем там?
     
     
  • 2.6, Аноним (-), 05:40, 04/10/2016 [^] [^^] [^^^] [ответить]  
  • +/
    не умеет протокол pg
     
  • 2.13, Владимр (?), 08:53, 04/10/2016 [^] [^^] [^^^] [ответить]  
  • +/
    Использую pgpool
     

  • 1.3, Аноним (-), 02:05, 04/10/2016 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    интересный момент:

    >> Компания MariaDB представила прокси-сервер MaxScale 2.0
    >> Классификатор запросов, применяемый в MaxScale для принятия решений о дальнейших действиях с определённым запросом, переведён со встраиваемого варианта MariaDB на SQLite

     
     
  • 2.11, mumu (ok), 08:19, 04/10/2016 [^] [^^] [^^^] [ответить]  
  • +4 +/
    Каждому решению - подходящий инструмент. Этож не Amarok, зачем тут полноценный SQL-сервер?
     

  • 1.4, Аноним (-), 02:33, 04/10/2016 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Добавить пометку использует epoll и Linux-AIO только для линукса.
     
  • 1.9, Аноним (-), 07:39, 04/10/2016 [ответить] [﹢﹢﹢] [ · · · ]  
  • –4 +/
    уже не знает как вывернуться - что бы воздух продавать. Уже и новую лицензию придумал, а оно все никак..
     
     
  • 2.14, Клыкастый (ok), 12:24, 04/10/2016 [^] [^^] [^^^] [ответить]  
  • –1 +/
    лицензия вполне адекватная, и денежку срубит и в код даёт слазить.
     
     
  • 3.18, Аноним (-), 17:40, 04/10/2016 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > лицензия вполне адекватная, и денежку срубит и в код даёт слазить.

    да да, для бесплатных бетатестеров - пойдет. Нужно же как-то срубить на вас бабло ?

     
     
  • 4.21, Клыкастый (ok), 18:10, 04/10/2016 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > да да, для бесплатных бетатестеров - пойдет.

    Не смог в механизм релизов? бывает, бывает

    > Нужно же как-то срубить на вас бабло ?

    И не просто "как-то", а с выходом на GPL и минимальными, по сравнению с другими коммерсантами, ограничениями.

    Но есть возмущающиеся. То ли это подростки, которые в силу возраста вместо "спасибо" на автомате выдают "а чо так мало?", то ли это пена на опенсорсе, которая просто привыкла, что им все должны. А может просто мамка на софт денег не даёт.

     

  • 1.10, Аноним (-), 08:06, 04/10/2016 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    У них также как и в предыдущей версии - read и write по разным портам подключения?
     
  • 1.15, Аноним (-), 15:17, 04/10/2016 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    а как же galera? впрочем, она не решает задачу размазывания нагрузки, она решает задачу master-master репликации и создания отказоустойчивого кластера субд. но кто мешает применять шардинг на кластерА из отказоустойчивых нод по 3 сервера. получается дорого, но зато отказоустойчиво и производительно. впрочем, субд - это всегда дорого, особенно, когда одного сервера не хватает по производительности.
     
     
  • 2.19, Аноним (-), 17:42, 04/10/2016 [^] [^^] [^^^] [ответить]  
  • +/
    > а как же galera?

    А что галера? Новость про прокси, а не про то, как делать master-master.

     

  • 1.16, Аноним (-), 15:19, 04/10/2016 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    Интересно, а ГОСТовый SSL туда можно впихнуть?
     
     
  • 2.20, Аноним (-), 17:54, 04/10/2016 [^] [^^] [^^^] [ответить]  
  • +/
    КриптоПРО или VipNet? Сомневаюсь.
    OpenSSL - безсмысленно.
     
     
  • 3.27, Аноним (-), 10:24, 05/10/2016 [^] [^^] [^^^] [ответить]  
  • +/
    Значит только гостовый Постгрес =(
     

  • 1.17, Аноним (-), 16:56, 04/10/2016 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    С BSL они явно перестарались.
     
     
  • 2.22, Клыкастый (ok), 18:11, 04/10/2016 [^] [^^] [^^^] [ответить]  
  • +/
    > С BSL они явно перестарались.

    уж получше, чем OpenCore.


     
     
  • 3.25, Owlet (?), 23:01, 04/10/2016 [^] [^^] [^^^] [ответить]  
  • +/
    Чем это полностью несвободная (ещё 2 года) лицензия лучше, чем часть кода под свободной?
     
     
  • 4.26, Owlet (?), 23:03, 04/10/2016 [^] [^^] [^^^] [ответить]  
  • +/
    Пруф, например: https://mariadb.com/bsl-faq-adopting#foss
     
  • 4.28, Клыкастый (ok), 12:19, 05/10/2016 [^] [^^] [^^^] [ответить]  
  • +/
    > Чем это полностью несвободная (ещё 2 года) лицензия лучше, чем часть кода
    > под свободной?

    ИМХО то, что код открыт весь.

     
     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2024 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру