RussianLDP Рейтинг@Mail.ru
WebMoney: 
WMZ Z294115950220 
WMR R409981405661 
WME E134003968233 
Visa 
4274 3200 2453 6495 

Глава 2. Установка и настройка MySQL Cluster Manager

В этой главе рассматривается базовая установка и конфигурация MySQL Cluster Manager Management Agent, подключение к агенту с клиентом MySQL Cluster Manager и основы создания или импортирования кластера через MySQL Cluster Manager.

2.1. Получение MySQL Cluster Manager

MySQL Cluster Manager доступен только через коммерческую лицензию. Узнать больше об условиях лицензирования и получить информацию о как и где загрузить MySQL Cluster Manager можно на https://www.mysql.com/products/cluster/mcm/ или связаться с вашим представителем Oracle.

2.2. Поддерживаемые платформы и версии MySQL NDB Cluster

Для списка платформ, поддержанных MySQL Cluster Manager 1.4.8, см. Supported Platforms: MySQL Cluster Manager на https://www.mysql.com/support/supportedplatforms/cluster-manager.html.

MySQL Cluster Manager 1.4.8 поддерживает следующие версии MySQL NDB Cluster:

MySQL Cluster Manager 1.4.8 понимает MySQL NDB Cluster 8.0 только на экспериментальной основе и не должен использоваться с MySQL NDB Cluster 8.0 в производственной среде. Кроме того, вот некоторые примеры функций MySQL 8.0, которые не поддерживаются:

  • Любые плагины идентификации кроме mysql_native_password, соединяясь с mcmd .

  • Опция --upgrade для mysqld .

  • Команда SET PERSIST для сохраняющихся системных переменных.

До установки необходимо получить корректную сборку MySQL Cluster Manager для вашей платформы. Для платформ Unix MySQL Cluster Manager поставляют как Unix-архив .tar.gz, имя которого в формате mcm-1.4.8-cluster-7.6.13-linux- distro- arch.tar.gz. Для Windows поставляется файл MSI. Все пакеты MySQL Cluster Manager 1.4.8 включают MySQL NDB Cluster 7.6.13.

Выбирая соответствующий инсталлятор для вашей операционной системы и аппаратных средств, имейте в виду, что 32 битными программами можно обычно управлять на 64-битных платформах, но не наоборот.

2.3. Установка MySQL Cluster Manager

Установка MySQL Cluster Manager варьируется согласно платформе. На платформах Unix необходимо извлечь файлы из архива .tar.gz и скопировать их к правильным местоположениям вручную. Для платформы Windows предоставляется инсталлятор MSI, который в основном автоматизирует этот процесс. Установка MySQL Cluster Manager, используя каждый из этих методов, рассмотрена ниже.

Ключи лицензии требовались, чтобы использовать некоторые очень ранние выпуски MySQL Cluster Manager. Они не нужны, чтобы использовать последние версии, включая MySQL Cluster Manager 1.4.8.

2.3.1. Установка MySQL Cluster Manager в Unix

Установка MySQL Cluster Manager в Linux и подобных платформах:

Распакуйте архив MySQL Cluster Manager 1.4.8. Необходимо установить копию MySQL Cluster Manager на каждом компьютере, который вы намереваетесь использовать в качестве хоста MySQL NDB Cluster. Другими словами, необходимо установить MySQL Cluster Manager на каждом хосте, который является членом места управления MySQL Cluster Manager. Для каждого хоста необходимо использовать MySQL Cluster Manager, который соответствует операционной системе компьютера и архитектуре процессора.

В Linux можно распаковать архив, используя следующую команду, используя mcm-1.4.8-cluster-7.6.13-linux-sles11-x86-64bit.tar.gz как пример (фактическое имя файла изменится соответственно версии):

shell> tar -zxvf mcm-1.4.8-cluster-7.6.13-linux-sles11-x86-64bit.tar.gz

Эта команда распаковывает архив в каталог, имеющий то же самое имя как архив, но без .tar.gz. Каталог верхнего уровня в архиве называют mcm-1.4.8.

Поскольку Solaris-версия tar не может обращаться с длинными именами файлов правильно, файлы MySQL Cluster Manager могут быть испорчены при попытке использовать его, чтобы распаковать архив с MySQL Cluster Manager. Чтобы обойти эту проблему в операционных системах Solaris, необходимо использовать GNU tar (gtar) вместо команды по умолчанию tar в Solaris. В Solaris 10 gtar часто уже устанавливается в /usr/sfw/bin, хотя gtar может быть не включен в ваш path. Если gtar не присутствует на вашей системе, см. Solaris 10 system documentation.

В целом местоположение, куда вы помещаете распакованный каталог MySQL Cluster Manager и название этого каталога может быть произвольным. Однако, мы рекомендуем, чтобы вы использовали стандартное местоположение для дополнительного программного обеспечения, такое как /opt в Linux, и что вы называете каталог, используя номер версии 1.4.8 (это облегчает последующие обновления). На типичной системе Linux можно выполнить эту задачу так:

shell> cd mcm-1.4.8-cluster-7.6.13-linux-sles11-x86-64bit
shell> mv mcm-1.4.8 /opt/mcm-1.4.8

Для простоты использования мы рекомендуем, чтобы вы поместили файлы MySQL Cluster Manager в тот же самый каталог на каждом хосте.

Содержимое архива MySQL Cluster Manager для Unix. Если вы перейдете в каталог, куда вы разместили извлеченные файлы и посмотрите, что там, увидите примерно вот что:

shell> cd /opt/mcm-1.4.8
shell> ls
bin cluster etc lib libexec licenses share var

Эти каталоги описаны в следующей таблице:

Таблица 2.1. Содержимое архива MySQL Cluster Manager для Unix

Каталог Содержимое
bin Скрипты запуска агента MySQL Cluster Manager
cluster Дистрибутив MySQL NDB Cluster 7.6.13
etc Содержит конфигурационный файл агента (mcmd.ini)
etc/init.d Скрипты Init
lib и подкаталоги Библиотеки MySQL Cluster Manager
libexec Исполняемые модули MySQL Cluster Manager
licenses/lgpl Архив, содержащий исходный код (включая лицензию и документацию), для glib 2.1
share/doc/mcmd Файл README.txt
var XML-файлы, содержащие информацию, необходимую MySQL Cluster Manager, о процессах, признаках и синтаксисе команды

Обычно единственные каталоги, показанные в предыдущей таблице, с которыми вам надо работать, это bin и etc.

Для дистрибутивов MySQL Cluster Manager 1.4.8, которые включают MySQL NDB Cluster, полный дистрибутив MySQL NDB Cluster 7.6.13 включен в каталог cluster. В рамках этого каталога расположение дистрибутива MySQL NDB Cluster совпадает с расположением автономного дистрибутива MySQL NDB Cluster. Например, такие программы MySQL NDB Cluster в двоичном представлении, как ndb_mgmd, ndbd, ndbmtd и ndb_mgm лежат в cluster/bin. См. MySQL Installation Layout for Generic Unix/Linux Binary Package и Installing an NDB Cluster Binary Release on Linux.

Если вы хотите использовать включенное программное обеспечение MySQL NDB Cluster, рекомендуется, чтобы вы переместили каталог cluster к местоположению вне каталога установки MySQL Cluster Manager, например, в /opt/ndb-version . Например, на системе Linux, можно переместить программное обеспечение MySQL NDB Cluster NDB 7.6.13, которое связано с MySQL Cluster Manager 1.4.8, в подходящее место в каталоге установки MySQL Cluster Manager примерно так:

shell> mv cluster /opt/ndb-7.6.13

Опция --bootstrap использует включенные файлы MySQL NDB Cluster в инсталляционном каталоге cluster и не работает, если они не могут быть найдены там. Чтобы обойти эту проблему, создайте символьную ссылку на правильный каталог:

shell> ln -s /opt/ndb-7.6.13 cluster

После этого можно использовать в mcm команды add package и upgrade cluster модернизировать любой кластер к новой версии программного обеспечения MySQL NDB Cluster.

В Linux не пытайтесь установить программное обеспечение MySQL NDB Cluster RPM, Debian или другими инсталляционными пакетами для любых систем управления пакета. Они устанавливают MySQL NDB Cluster по-другому, чем двоичный дистрибутив, который идет в архиве MySQL Cluster Manager, это вызовет проблему в будущем, когда вы попытаетесь модернизировать свой кластер через MySQL Cluster Manager.

Агент MySQL Cluster Manager по умолчанию пишет файл журнала как mcmd.log в каталог установки. Когда агент запущен впервые, это создает каталог, где агент хранит собственные данные конфигурации, по умолчанию это ../mcm_data (относительно инсталляционного каталога MySQL Cluster Manager). Данные конфигурации, файлы журнала и файловые системы узла данных для данного MySQL NDB Cluster под контролем MySQL Cluster Manager с именем cluster_name лежат в clusters/cluster_name в соответствии с этим каталогом данных (иногда также известном как репозитарий данных MySQL Cluster Manager).

Местоположением конфигурационного файла агента MySQL Cluster Manager, файла журнала и каталога данных можно управлять с помощью опций запуска mcmd или внося изменения в конфигурационном файле агента. Чтобы упростить модернизации MySQL Cluster Manager, рекомендуется, чтобы вы изменили репозитарий данных на каталог вне каталога установки MySQL Cluster Manager, например, на /var/opt/mcm. См. разделы 2.4 и 3.2.

В Linux и других Unix можно настроить агента MySQL Cluster Manager как демона, используя скрипт init, который поставляется MySQL Cluster Manager. Чтобы сделать это, выполните шаги, перечисленные здесь:

  1. Скопируйте файл /etc/init.d/mcmd из установочного каталога MySQL Cluster Manager в системный каталог /etc/init.d/. В Linux можно сделать это использованием следующей команды, где mcmdir это каталог установки MySQL Cluster Manager:

    shell> cd mcmdir/etc/init.d
    shell> cp mcmd /etc/init.d/mcmd
    
  2. Удостоверьтесь, что этот файл имеет соответствующие разрешения и выполним учетной записью пользователя, которая управляет MySQL Cluster Manager. В Linux это может быть сделано, выполнив команды:

    shell> chown mcmuser /etc/init.d/mcmd
    shell> chmod 755 /etc/init.d/mcmd
    

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

  3. Откройте файл /etc/init.d/mcmd в текстовом редакторе. Здесь мы показываем часть этого файла, в котором мы подчеркнули две строки, которые должны быть обновлены:

    MCMD_SERVICE="mcmd"
    MCMD_PSERVICE="MySQL Cluster Manager"
    MCMD_ROOTDIR=@@MCMD_ROOTDIR@@
    MCMD_BIN="$MCMD_ROOTDIR/bin/mcmd"
    MCMD_CONFIG="$MCMD_ROOTDIR/etc/mcmd.ini"
    
    # Run service as non-root user
    MCMD_USER=@@MCMD_USER@@
    SU="su --login $MCMD_USER --command"
    

    В первой из этих строк замените заполнитель @@MCMD_ROOTDIR@@ полным путем к каталогу установки MySQL Cluster Manager. Во второй замените @@MCMD_USER@@ именем пользователя системы, который управляет агентом MySQL Cluster Manager (отметьте, что это не должен быть системный пользователь root).

Агент MySQL Cluster Manager должен теперь быть запущен автоматически каждый раз, когда система перезапущена.

Когда агент формируется как демон, процессы кластера начаты автоматически, когда агент перезапущен. StopOnError должен быть выключен (установлен в 0) для всех узлов данных для того, чтобы это работало. Если кластер был остановлен, когда агент закрыт, необходимо поставлять скрипт, который ждет агента, чтобы закончить его фазы запуска и восстановления, а затем, когда агент готов, запускает кластер командой вроде mcmdir/bin/mcm -e 'start cluster --background cluster_name;'.

2.3.2. Установка MySQL Cluster Manager в Windows

Чтобы установить, например, MySQL Cluster Manager 1.4.8 в Windows, получают инсталлятор MSI для него (см. раздел 2.1). Управляйте инсталлятором, дважды щелкая по нему в Windows Explorer (некоторые версии Windows также обеспечивают пункт Install в меню Windows Explorer, которое может использоваться, чтобы управлять инсталлятором). Когда вы запускаете инсталлятор, можно видеть экран Windows Security Warning. Если вы получили инсталлятор из надежного источника и знаете, что в него не вмешались, выберите Run из диалога, который позволяет инсталлятору продолжать работу:

Рис. 2.1. MySQL Cluster Manager MSI Installer: экран Welcome

Content is described in the surrounding text.

Нажмите Next для перехода к License Agreement:

Рис. 2.2. MySQL Cluster Manager MSI Installer: License Agreement

Content is described in the surrounding text.

Нажмите Next для перехода к экрану Destination Folder, где можно выбрать инсталляционный каталог. Следующие данные показывают экран Destination Folder с местоположением по умолчанию. На англоязычных 64-битных системах Windows это C:\Program Files\MySQL\MySQL Cluster Manager\ ), на английских 32-битных системах Windows это C:\Program Files (x86)\MySQL\MySQL Cluster Manager\. Можно щелкнуть по кнопке Change, чтобы изменить каталог, где MySQL Cluster Manager должен быть установлен, но каталог по умолчанию достаточен для большинства случаев.

Рис. 2.3. MySQL Cluster Manager MSI Installer: Destination Folder

Content is described in the surrounding text.

Как только вы выбрали каталог назначения, инсталлятор собрал всю информацию, которая требуется, чтобы выполнить установку. Нажмите Next для перехода к экрану Ready:

Рис. 2.4. MySQL Cluster Manager MSI Installer: экран Ready

Content is described in the surrounding text.

Нажмите Install для установки MySQL Cluster Manager. Поскольку установщик начинает копировать файлы и выполнять другие задачи, затрагивающие систему, можно видеть диалог предупреждения от Windows User Access Control. Если это происходит, нажмите кнопку Yes, чтобы позволить установке продолжаться. Экран Setup Wizard с индикатором выполнения показан в то время, как инсталлятор работает:

Рис. 2.5. MySQL Cluster Manager MSI Installer: Setup Wizard

Content is described
in the surrounding text.

Setup Wizard может потребовать несколько минут, чтобы скопировать все необходимые файлы для MySQL Cluster Manager и MySQL NDB Cluster к инсталляционному каталогу и выполнить другие необходимые изменения.

Установщик MySQL Cluster Manager помещает MySQL NDB Cluster в подкаталог cluster установочного каталога (по умолчанию это C:\Program Files\MySQL\MySQL Cluster Manager\cluster или C:\Program Files (x86)\MySQL\MySQL Cluster Manager\cluster). Местоположение исполняемых модулей MySQL NDB Cluster не конфигурируемо отдельно, используя MySQL Cluster Manager installer.

Коглда отработает Setup Wizard, инсталлятор показывает экран Installation Completed:

Рис. 2.6. MySQL Cluster Manager MSI Installer: Installation Completed

Content is described in the surrounding text.

MySQL Cluster Manager 1.4.8 теперь установлен в каталоге назначения, нажмите кнопку Finish.

Как упомянуто в другом месте (см., например, раздел 3.4.1), необходимо установить копию MySQL Cluster Manager на каждом компьютере, где вы намереваетесь принять узел MySQL NDB Cluster. Поэтому вышеупомянутая процедура должна быть выполнена отдельно на каждом компьютере. Для простоты установок и модернизаций на многих машинах рекомендуется, чтобы вы установили MySQL Cluster Manager в том же самом местоположении на каждом хосте. C:\Program Files\MySQL\MySQL Cluster Manager\ (64-bit) или C:\Program Files (x86)\MySQL\MySQL Cluster Manager\ (32-bit) это местоположение по умолчанию для установки, но возможно установить MySQL Cluster Manager в другом месте, например, в C:\mcm\.

2.3.2.1. Установка MySQL Cluster Manager Agent как Windows Service

После установки MySQL Cluster Manager Agent как сервис Windows можно запустить и остановить агента, используя Windows Service Manager. Установка также формирует агента, чтобы запускаться автоматически каждый раз, когда запускается Windows и закрываться безопасно каждый раз, когда Windows завершает работу.

Служба Windows может использоваться, чтобы управлять агентами MySQL Cluster Manager только на одном хосте. Чтобы закрыть агентов на многих хостах, можно использовать команду stop agents в клиенте MySQL Cluster Manager.

Установка выполняется, используя командную строку (cmd.exe), как с установкой или удалением любой службы Windows, это должно также быть сделано как пользователь, имеющий достаточные полномочия, например, Administrator.

Если у пользователя, который вы в настоящее время используете, есть права администратора, можно просто запустить cmd.exe. Иначе необходимо управлять программой командной строки как Администратор. Чтобы сделать это, сначала определите местонахождение короткого пути к командной строке. Можно сделать это, набрав cmd в окно поиска в Windows Taskbar, затем выбрать из результатов поиска Command Prompt > Run as Administrator.

Рис. 2.7. Установка MySQL Cluster Manager Agent как Windows Service: командная строка

Content is described in the surrounding text.

Если диалог Windows UAC, обращающийся к cmd.exe появляется, выберите Yes, чтобы позволить командной строке работать как Administrator. У вас должно теперь быть окно командной строки, открытое на вашем рабочем столе, управляя сессией с правами Administrator.

Чтобы установить агента MySQL Cluster Manager как сервис, мы используем команду SC CREATE. Эта команда позволяет нам определять название сервиса (для SC START и SC STOP или NET START NET STOP), отображаемое название (для показа в Service Manager), способ запуска (automatic или manual) и путь к исполняемому файлу, который будет сервисом (используйте mcmd-svc.exe вместо mcmd.exe). Путь должен также включать любые аргументы, необходимые программе, в случае MySQL Cluster Manager, mcmd-svc.exe должно быть сказано, где найти его конфигурационный файл через опцию --defaults-file. Оба эти пути должны быть абсолютными.

Установка агента MySQL Cluster Manager как сервис рекомендуется. Однако, вы не должны устанавливать процессы MySQL NDB Cluster (ndb_mgmd.exe, ndbd.exe, ndbmtd.exe, mysqld.exe) как сервисы на хосте Windows, чтобы использоваться в качестве узлов MySQL NDB Cluster под управлением MySQL Cluster Manager, так как агент MySQL Cluster Manager управляет узлами MySQL NDB Cluster независимо от Windows Service Manager.

Предположите, что вы установили MySQL Cluster Manager в местоположении по умолчанию для 32-bit Windows C:\Program Files (x86)\MySQL\MySQL Cluster Manager (C:\Program Files\MySQL\MySQL Cluster Manager\ в 64-bit Windows) и что его конфигурационный файл расположен в C:\Program Files (x86)\MySQL\MySQL Cluster Manager\mcm1.4.8\etc\, тогда следующая команда устанавливает MySQL Cluster Manager как сервис, названный MCM, с отображаемым именем MySQL Cluster Manager 1.4.8:

SC CREATE "MCM" DisplayName = "MySQL Cluster Manager 1.4.8" Start = "auto"
   BinPath = "C:\Program Files (x86)\MySQL\MySQL Cluster Manager\mcm1.4.8\bin\mcmd-svc.exe
   --defaults-file = \"C:\Program Files (x86)\MySQL\MySQL Cluster Manager\mcm1.4.8\etc\mcmd.ini\""

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

Рис. 2.8. Установка MySQL Cluster Manager Agent как Windows Service: команда

Content is described in the surrounding text.

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

Старт и остановка агента MySQL Cluster Manager как службы Windows. После установки можно начать и остановить обслуживание вручную, если такая потребность возникает, с помощью команд SC START и SC STOP.

C:\>SC START MCM
C:\>SC STOP MCM

Альтернативно, используйте команды NET START и NET STOP:

C:\Windows\system32>NET START MCM
C:\Windows\system32>NET STOP MCM

После установки службы агент MySQL Cluster Manager запускается автоматически каждый раз, когда Windows запускается. Можно проверить, что сервис работает, с помощью Windows Task Manager. Откройте Диспетчер задач и переключитесь на вкладку Services, если это не показано. Если MySQL Cluster Manager работает, можно найти его в списке сервисов как MCM в столбце Name или же MySQL Cluster Manager 1.4.8 в столбце Description:

Рис. 2.9. Установка MySQL Cluster Manager Agent как сервис Windows: вкладка Services

Content is described in the surrounding text.

Можно также проверить, работает ли сервис, используя Windows Service Manager:

Рис. 2.10. Установка MySQL Cluster Manager Agent как сервис Windows: Service Manager

Windows Service Manger showing MySQL Cluster Manager has been
started as a service.

Service Manager также позволяет вам начинать, останавливать или делать паузу в работе сервиса MySQL Cluster Manager вручную, используя GUI.

Сначала устанавливая MySQL Cluster Manager как сервис, он не стартует автоматически, пока Windows не запускается. Если вы не хотите перезапускать Windows, то необходимо начать обслуживание вручную, используя SC START или NET START в командной строке или графический контроль, обеспеченный в Windows Service Manager.

Можно удалить сервис, используя SC DELETE и название службы, в этом случае MCM, которое использовалось в SC CREATE:

Рис. 2.11. Удаление MySQL Cluster Manager Agent из Windows Services

Content is described in the surrounding text.

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

Как только вы установили MySQL Cluster Manager и сервис работает правильно, вы готовы соединиться с ним, используя клиент MySQL Cluster Manager. См. раздел 3.3.

2.3.3. Установка имени пользователя и пароля в MySQL Cluster Manager Agent

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

  1. Остановите всех агентов. Можно использовать stop agents.

  2. Обновите конфигурационный файл агента etc/mcmd.ini. Установите новый пароль, не комментируя строку, содержащую manager-password=, и добавьте новый пароль как ее значение, установите новое имя учетной записи административного пользователя, не комментируя строку, содержащую manager-username=, установите значения к новому имени пользователя. Посмотрите раздел 3.1.

  3. Для каждого mysqld:

    1. Войдите (используя клиент mysql) как пользователь MySQL root.

    2. Если вы изменяете имя пользователя, сделайте это сначала, используя следующий запрос, где olduser это текущее имя пользователя и newuser это новое, manager-user это то, что вы устанавливаете ранее в etc/mcmd.ini:

      RENAME USER 'olduser'@'127.0.0.1' TO 'newuser'@'127.0.0.1';
      

      Если вы изменяете имя пользователя впервые, надо использовать mcmd для olduser. Кроме того, необходимо использовать 127.0.0.1 для имени хоста (но не localhost).

    3. Выполните следующий запрос, шде newuser новое имя пользователя и newpass новый пароль:

      SET PASSWORD FOR 'newuser'@'127.0.0.1' = PASSWORD('newpass');
      

      Надо использовать mcmd для имени пользователя, если вы не изменили его, то есть, если manager-user не задан в mcmd.ini. Испольуйте 127.0.0.1 для имени хоста (но не localhost).

    4. Скомандуйте FLUSH PRIVILEGES.

  4. Перезапустите агентов. Все агенты должны теперь использовать новый пароль для пользователя mcmd на серверах MySQL (процессы mysqld).

2.4. Конфигурационный файл MySQL Cluster Manager

Прежде, чем запустить агента MySQL Cluster Manager, необходимо внести любые необходимые изменения в раздел [mcmd] конфигурационного файла агента, поставляемого MySQL Cluster Manager как etc/mcmd.ini в каталоге установки. В Linux и подобных операционных системах можно отредактировать этот файл, в Windows рекомендуется, чтобы вы сохранили копию этого файла к удобному местоположению, для которого путь не содержит пробелов, например, C:\mcm\data.

Символ # в конфигурационном файле MySQL Cluster Manager указывает на начало комментария, комментарий продолжается до конца строки.

Версия этого файла, который поставляется MySQL Cluster Manager, выглядит примерно так:

[mcmd]
plugins=manager
##manager-port=1862
##agent-uuid=
log-file=mcmd.log
log-level=message
##pid-file=

## Username and password for manager plugin
##manager-username=
##manager-password=
## Top-level directory for manager plugins information stored on disk
##manager-directory=

Минимальный конфигурационный файл агента, как используется в производстве, мог бы быть похожим на это:

[mcmd]
plugins=manager
manager-port=1862
manager-directory=/var/opt/mcm-1.4.8
log-file=/var/opt/mcm/mcmd.log
log-level=warning

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

2.5. Апгрейд MySQL Cluster Manager

Эта секция обсуждает модернизацию MySQL Cluster Manager от предыдущего выпуска до последнего выпуска (в настоящее время 1.4.8), а также обеспечение основного руководства при модернизации связанного программного обеспечения MySQL NDB Cluster.

Только модернизации от выпуска 1.4.0 и позже поддерживается.

Основные шаги для модернизации MySQL Cluster Manager:

  1. Установите новую версию программного обеспечения MySQL Cluster Manager в желаемом местоположении.

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

  3. Остановите все процессы агента MySQL Cluster Manager на всех хостах.

  4. Запустите новые процессы агента, гарантировав, чтобы они использовали новую конфигурацию, созданную ранее.

Более подробное объяснение каждого из этих шагов дано в следующих нескольких параграфах. В целях примера мы принимаем модернизацию от существующей установки MySQL Cluster Manager 1.4.1 к новой установке MySQL Cluster Manager 1.4.8. Для Linux или Unix-систем мы предполагаем, что инсталляционные каталоги /opt/mcm-1.4.1 и /opt/mcm-1.4.8, соответственно, в Windows мы предполагаем, что инсталляционные каталоги C:\Program Files\MySQL\MySQL Cluster Manager 1.4.1\ и C:\Program Files\MySQL\MySQL Cluster Manager 1.4.8\.

Шаг 1: Установка новой версии MySQL Cluster Manager. Можно получить и установить новую версию MySQL Cluster Manager как новую установку (см. разделы 2.1 и 2.3) с дополнительным требованием, чтобы вы не пытались установить новую версию в том же самом местоположении как версия, которую вы в настоящее время используете.

Шаг 2: Настройте новую версию. Для нового MySQL Cluster Manager, чтобы управлять теми же самыми экземплярами MySQL NDB Cluster, он должен быть в состоянии прочитать данные, содержавшимися в хранилище агента старой установки, который является ../mcm_data (относительно инсталляционного каталога MySQL Cluster Manager) по умолчанию, но может быть установлен, используя директиву manager-directory в mcmd.ini.

Самым простым для обновления программного обеспечения MySQL Cluster Manager является вариант, если хранилище агента и конфигурационный файл агента расположены внешне к инсталляционному каталогу агента. Предположим, что старая версия агента устанавливается в /opt/mcm-1.4.1, и это использует каталог /var/opt/mcm для его хранилища агента и конфигурационного файла /etc/mcm/mcmd.ini. В этом случае, чтобы заставить новые исполняемые модули использовать ту же самую конфигурацию и хранилище, необходимо только запустить новые процессы mcmd таким образом, что они используют тот же самый конфигурационный файл (см. Шаг 4). Иначе необходимо скопировать конфигурационный файл по умолчанию к местоположению вне инсталляционного каталога, например, /etc/mcm/mcmd.ini:

shell> cp -r /opt/mcm-1.4.1/etc/mcmd.ini /etc/mcm/mcmd.ini

Затем добавьте следующую строку к новой копии mcmd.ini:

manager-directory=/var/opt/mcm

После этого можно сохранить файл, см. также раздел 2.4.

Шаг 3: Остановите всех агентов. Остановите процессы агента, используя старые исполняемые модули на всех хостах, составляющих установку управления. Можно остановить всех агентов для данного сайта, например, mysite, использовав команду stop agents в клиенте MySQL Cluster Manager:

mcm> stop agents mysite;

Необходимо выполнить stop agents для каждого сайта, перечисленного в выводе list sites.

Шаг 4: Запуск нового MySQL Cluster Manager. Запустите новый агент mcmd с опцией --defaults-file, чтобы это использовало правильный конфигурационный файл:

shell> mcmd --defaults-file=/etc/mcm/mcmd.ini &

Большинство агентов (по крайней мере половина от общего количества плюс один) должны быть запущены в период 10 секунд, иначе отсутствие кворума узлов для принятия решения могло бы заставить коммуникацию среди узлов терпеть неудачу.

Необходимо теперь запустить клиент mcm с новой установки и выполнить задачи управления, как обычно. Как только клиент успешно начинает работу и соединяется с агентом, можно проверить, что это управляет правильной версией программного обеспечения MySQL Cluster Manager, использовав команду version, как показано здесь:

mcm> version;
+-----------------------------+
| Version                     |
+-----------------------------+
| MySQL Cluster Manager 1.4.8 |
+-----------------------------+
1 row in set (0.00 sec)

Проверьте, что все хосты, кластеры и процессы на всех сайтах видимы новому клиенту mcm и готовы к эксплуатации, например:

mcm> list hosts mysite;
+---------+-----------+---------+
| Host    | Status    | Version |
+---------+-----------+---------+
| tonfisk | Available | 1.4.8   |
| flundra | Available | 1.4.8   |
| alpha   | Available | 1.4.8   |
| beta    | Available | 1.4.8   |
| gamma   | Available | 1.4.8   |
+---------+-----------+---------+
5 rows in set (0.16 sec)

mcmc> list clusters mysite;
+-------------+-----------+
| Cluster     | Package   |
+-------------+-----------+
| mycluster   | mypackage |
| yourcluster | mypackage |
+-------------+-----------+
2 rows in set (2.07 sec)

mcm> show status --cluster mycluster;
+-----------+-------------------+---------+
| Cluster   | Status            | Comment |
+-----------+-------------------+---------+
| mycluster | fully operational |         |
+-----------+-------------------+---------+
1 row in set (0.01 sec)

mcm> show status --cluster yourcluster;
+-------------+-------------------+---------+
| Cluster     | Status            | Comment |
+-------------+-------------------+---------+
| yourcluster | fully operational |         |
+-------------+-------------------+---------+
1 row in set (0.01 sec)

mcm> show status -r mycluster;
+--------+----------+----------+---------+-----------+-----------+
| NodeId | Process  | Host     | Status  | Nodegroup | Package   |
+--------+----------+----------+---------+-----------+-----------+
| 49     | ndb_mgmd | tonfisk  | running |           | mypackage |
| 1      | ndbd     | tonfisk  | running | 0         | mypackage |
| 2      | ndbd     | flundra  | running | 0         | mypackage |
| 50     | mysqld   | tonfisk  | running |           | mypackage |
| 51     | mysqld   | flundra  | running |           | mypackage |
| 52     | ndbapi   | *tonfisk | added   |           |           |
| 53     | ndbapi   | *flundra | added   |           |           |
+--------+----------+----------+---------+-----------+-----------+
7 rows in set (0.08 sec)

mcm> show status -r yourcluster;
+--------+----------+-------+---------+-----------+-----------+
| NodeId | Process  | Host  | Status  | Nodegroup | Package   |
+--------+----------+-------+---------+-----------+-----------+
| 50     | ndb_mgmd | alpha | running |           | mypackage |
| 5      | ndbd     | beta  | running | n/a       | mypackage |
| 6      | ndbd     | gamma | running | n/a       | mypackage |
+--------+----------+-------+---------+-----------+-----------+
3 rows in set (0.01 sec)

См. главу 3 для получения дополнительной информации о выполнении общих задач управления через клиент mcm.

Апгрейд MySQL NDB Cluster. Хотя программное обеспечение MySQL NDB Cluster, как правило, появляется связанным с MySQL Cluster Manager, важно иметь в виду, что модернизация программного обеспечения MySQL Cluster Manager НЕ модернизирует существующих установок MySQL NDB Cluster. Так как новый MySQL Cluster Manager использует ту же самую конфигурацию, как старый, кластеры под его контролем остаются неизменными. Если вы хотите модернизировать кластер, используя связанное программное обеспечение MySQL NDB Cluster, необходимо перейти в каталог cluster (см. здесь) и переместить все его содержание к местоположению вне каталога установки MySQL Cluster Manager. После этого можно использовать add package и upgrade cluster, чтобы модернизировать один или более кластеров до новой версии программного обеспечения MySQL NDB Cluster.

Поиск

 

Найди своих коллег!

Вы можете направить письмо администратору этой странички, Алексею Паутову. mailto:alexey.v.pautov@mail.ru