SQLinfo.ru - Все о MySQL Webew.ru: теория и практика веб-технологий

Форум пользователей MySQL

Задавайте вопросы, мы ответим

Вы не зашли.

#1 18.08.2009 21:35:48

paulus
Администратор
MySQL Authorized Developer and DBA
Зарегистрирован: 22.01.2007
Сообщений: 6757

Сборка кластера MySQL

Что-то я никогда не задавал на форуме вопросов... наверное, стоит начать wink

Кто-нибудь знает, как сейчас делаются стабильные ветки MySQL? Интересуют
исходники с поддержкой NDB. В основной секции download поддержку убрали
официально, MySQL Cluster раздают из отдельной секции со словами «MySQL
Carrier Grade Edition». Судя по виду, это тот же MySQL (только более старый,
чем в основной ветке) со включенной поддержкой NDB.

Почему отдельная ветка? Что такое CGE? И как собрать последний стабильный
NDB и последний стабильный MySQL? smile

Неактивен

 

#2 19.08.2009 04:32:29

rgbeast
Администратор
MySQL Authorized Developer and DBA
Откуда: Москва
Зарегистрирован: 21.01.2007
Сообщений: 3880

Re: Сборка кластера MySQL

Кластер можно скачать по ссылке: http://dev.mysql.com/downloads/cluster/6.3.html
Он доступен в двух версиях - лицензионной и community (здесь же есть Cluster Community 7.0, который находится в состоянии бета-версии)

CGE - релиз, который содержит более новые версии движка ndb (сам mysql в нем может быть и более старый). CGE предназначается для систем, построенных на заказ под конкретного клиента, поэтому у него (в отличие от обычного Mysql Cluster) нет объявленной цены. В CGE больше фич, например можно отключить арбитраж, но, возможно, эти фичи перейдут в обычный кластер. Так как все open source, то исходники доступны.

На последний твой вопрос не могу ответить, это скорее всего вопрос о продукте, которого нет в природе (но с исходниками можно сделать все, что угодно).

Неактивен

 

#3 19.08.2009 04:35:14

rgbeast
Администратор
MySQL Authorized Developer and DBA
Откуда: Москва
Зарегистрирован: 21.01.2007
Сообщений: 3880

Re: Сборка кластера MySQL

Вот список новых фич в новой версии ndb: http://dev.mysql.com/doc/refman/5.1/en/ … admap.html

Кстати, они перестали ndb относить к CGE или к обычному кластеру. Раньше ndb 6.X называлась CGE, а сейчас она просто ndb.

Неактивен

 

#4 19.08.2009 13:37:16

paulus
Администратор
MySQL Authorized Developer and DBA
Зарегистрирован: 22.01.2007
Сообщений: 6757

Re: Сборка кластера MySQL

Гриш, тогда еще не связанный вопрос про кластер: как работает алгоритм арбитража.
Конкретно — когда может поменяться арбитр.

Пусть у меня есть вот такой кластер: [M][DS][DS][DS][DS] (NoOfReplicas=4). Я убиваю
[M] и арбитр перелезает на одну из [DS]. После этого я убиваю эту [DS]. Я правильно
понимаю, что кластер вымрет совсем в таком случае?

Ну и заодно — что значит «можно отключить арбитраж в CGE»? Это как раз полечит
эту проблему?

Неактивен

 

#5 19.08.2009 13:55:14

rgbeast
Администратор
MySQL Authorized Developer and DBA
Откуда: Москва
Зарегистрирован: 21.01.2007
Сообщений: 3880

Re: Сборка кластера MySQL

Алгоритм арбитража описан в статье http://sqlinfo.ru/articles/info/8.html  Правда описан smile

Арбитр может поменяться, если
а) алгоритм арбитража уже отработал (то есть часть поняла, что она остается работать) 
б) нет арбитра

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

1. Отключение [M]. Арбитр не нужен, алгоритм арбитража не запускается, так как дата-ноды не выпадали. Происходит выбор арбитра (если некого, то есть у всех ArbitrationRank=0, то его не будет). Выбирается нода [DS1]

2. Отключение [DS1]. Дата-нода выпала, но на ней нет всех данных и кластер понимает, что split brain нет, и он продолжает работать, арбитр не нужен, к нему не обращаются. После того, как это понято, выбирается новый арбитр.

Если отключить арбитраж (у всех нод ArbitrationRank=0, такое возможно в новых версиях ndb), то арбитра нет и в ситуации split brain (пункт 3 алгоритма арбитража) обе части выключатся. Так же будет, если арбитра нет в живых (в любой версии ndb). Падение последнего арбитра не ведет к остановке кластера.

Неактивен

 

#6 19.08.2009 17:32:50

paulus
Администратор
MySQL Authorized Developer and DBA
Зарегистрирован: 22.01.2007
Сообщений: 6757

Re: Сборка кластера MySQL

Оо, класс, я знал, кому задать вопрос по этой статье smile

У нас NoOfReplicas=4, т.е. на каждой ноде есть все данные. Правильно ли я понимаю,
что в этом случае как раз он отключится (т.к. не проходит условие 2 пункта статьи)?

Неактивен

 

#7 19.08.2009 18:00:10

rgbeast
Администратор
MySQL Authorized Developer and DBA
Откуда: Москва
Зарегистрирован: 21.01.2007
Сообщений: 3880

Re: Сборка кластера MySQL

Да, все правильно. Если нет арбитра и выпала одна нода, на которой все данные, то кластер отключится. Отключение арбитража не поможет - результат будет таким же. Конфигурацию можно улучшить, запретив sql-нодам быть арбитрами (ArbitrationRank=0) и добавив вторую отдельную MGM-ноду. MGM-нодами может быть кто угодно (в смысле сервер, используемый для других целей, находящийся на той же площадке), они процессор и память вообще не потребляют.

Неактивен

 

Board footer

Работает на PunBB
© Copyright 2002–2008 Rickard Andersson