Получаваме добри отзиви по отношение на нашия продукт ClusterControl, особено колко лесно е да се инсталира и да започне. Инсталирането на нов софтуер е едно, но правилното му използване е друго.
Не е необичайно да сте нетърпеливи да тествате нов софтуер и човек предпочита да си играе с ново вълнуващо приложение, отколкото да чете документация, преди да започнете. Това е малко жалко, тъй като може да пропуснете важни функции или да не разберете как да ги използвате.
Тази серия от блогове обхваща всички основни операции на ClusterControl за MySQL, MongoDB и PostgreSQL с примери как да се възползвате максимално от вашата настройка. Той ви предоставя задълбочено гмуркане по различни теми, за да ви спести време.
Това са темите, обхванати в тази серия:
- Разгръщане на първите клъстери
- Добавяне на съществуващата ви инфраструктура
- Наблюдение на ефективността и здравето
- Направете вашите компоненти HA
- Управление на работния поток
- Защита на вашите данни
- Защита на вашите данни
- Задълбочен случай на употреба
В днешната публикация ще разгледаме инсталирането на ClusterControl и внедряването на първите ви клъстери.
Подготовки
В тази серия ще използваме набор от кутии Vagrant, но вие можете да използвате собствената си инфраструктура, ако желаете. В случай, че искате да го тествате с Vagrant, направихме примерна настройка налична от следното хранилище на Github:https://github.com/severalnines/vagrant
Клонирайте репото на вашата собствена машина:
$ git clone [email protected]:severalnines/vagrant.git
Топологията на скитащите възли е както следва:
- vm1:clustercontrol
- vm2:възел на базата данни1
- vm3:възел на базата данни2
- vm4:база данни node3
Можете лесно да добавите допълнителни възли, ако желаете, като промените следния ред:
4.times do |n|
Файлът Vagrant е конфигуриран да инсталира автоматично ClusterControl на първия възел и да препраща потребителския интерфейс на ClusterControl към порт 8080 на вашия хост, който изпълнява Vagrant. Така че, ако IP адресът на вашия хост е 192.168.1.10, ще намерите потребителския интерфейс на ClusterControl тук:http://192.168.1.10:8080/clustercontrol/
Инсталиране на ClusterControl
Можете да пропуснете това, ако сте избрали да използвате файла Vagrant и да получите автоматичната инсталация. Но инсталирането на ClusterControl е лесно и ще отнеме по-малко от пет минути.
С инсталацията на пакета всичко, което трябва да направите, е да издадете следните три команди на възела ClusterControl, за да го инсталирате:
$ wget http://www.severalnines.com/downloads/cmon/install-cc
$ chmod +x install-cc
$ ./install-cc # as root or sudo user
Това е:не може да стане по-лесно от това. Ако инсталационният скрипт не е срещнал проблеми, ClusterControl трябва да бъде инсталиран и стартиран. Вече можете да влезете в ClusterControl на следния URL:http://192.168.1.210/clustercontrol
След като създадете администраторски акаунт и влезете, ще бъдете подканени да добавите първия си клъстер.
Разгръщане на клъстер Galera
Ще бъдете подканени да създадете нов сървър/клъстер на база данни или да импортирате съществуващ (т.е. вече разгърнат) сървър или клъстер:
Ще разположим клъстер на Galera. Има два раздела, които трябва да бъдат попълнени. Първият раздел е свързан с SSH и общите настройки:
За да позволим на ClusterControl да инсталира възлите на Galera, ние използваме root потребителя, на когото беше предоставен SSH достъп от скриптовете за стартиране на Vagrant. В случай, че сте избрали да използвате своя собствена инфраструктура, трябва да въведете потребител тук, на когото е разрешено да извършва SSH без парола към възлите, които ClusterControl ще контролира. Само имайте предвид, че трябва сами да настроите SSH без парола от ClusterControl към всички възли на базата данни.
Също така се уверете, че сте деактивирали AppArmor/SELinux. Вижте защо.
След това преминете към втория етап и посочете свързаната с базата данни информация и целевите хостове:
ClusterControl незабавно ще извърши някои проверки за здравина всеки път, когато натиснете Enter при добавяне на възел. Можете да видите обобщението на хоста, като задържите курсора на мишката върху всеки дефиниран възел. След като всичко е зелено, това означава, че ClusterControl има свързаност с всички възли, можете да щракнете върху Разгръщане. Ще бъде създадена работа за изграждане на новия клъстер. Хубавото е, че можете да следите напредъка на тази работа, като щракнете върху Дейност -> Работни места -> Създаване на клъстер -> Пълни подробности за работата :
След като работата приключи, току-що сте създали първия си клъстер. Прегледът на клъстера трябва да изглежда така:
В раздела възли можете да извършвате всяка операция, която обикновено правите в клъстер. Мониторът на заявките ви дава добър преглед както на текущите, така и на водещите заявки. Разделът за ефективност ще ви помогне да следите отблизо ефективността на вашия клъстер и също така включва съветниците, които ви помагат да действате проактивно спрямо тенденциите в данните. Разделът за архивиране ви позволява лесно да планирате архивиране и да ги съхранявате в локално или облачно хранилище. Разделът за управление ви позволява да разширите своя клъстер или да го направите високодостъпен за вашите приложения чрез балансиране на натоварването.
Цялата тази функционалност ще бъде разгледана в по-късни публикации в блога в тази серия.
Разгръщане на MySQL репликационен клъстер
Разгръщането на настройка на MySQL Replication е подобно на разполагането на база данни на Galera, с изключение на това, че има допълнителен раздел в диалоговия прозорец за внедряване, където можете да дефинирате топологията на репликация:
Можете да настроите стандартна репликация главен-подчинен, както и репликация главен-главен. В случай на последното, само един главен ще остане за запис в даден момент. Имайте предвид, че репликацията главен-главен не идва с разрешаване на конфликти и гарантирана последователност на данните, както в случая с Galera. Използвайте тази настройка с повишено внимание или погледнете в клъстера Galera. След като всичко стане зелено и щракнете върху Разгръщане, ще бъде създадена задача за изграждане на новия клъстер.
Отново, напредъкът на внедряването е достъпен в Активност -> Работни места.
За да мащабирате подчинения (прочетете копие), просто използвайте опцията „Добавяне на възел“ в списъка с клъстери:
След добавяне на подчинения възел, ClusterControl ще предостави на подчиненото устройство копие на данните от неговия главен, използвайки Xtrabackup или от всякакви съществуващи PITR съвместими архиви за този клъстер.
Внедряване на PostgreSQL репликация
ClusterControl поддържа внедряването на PostgreSQL версия 9.x и по-нова. Стъпките са подобни при внедряването на MySQL Replication, където в края на стъпката на внедряване можете да дефинирате топологията на базата данни при добавяне на възлите:
Подобно на MySQL репликацията, след като разполагането завърши, можете да мащабирате, като добавите подчинен на репликации към клъстера. Стъпката е толкова проста, колкото да изберете главен и да попълните FQDN за новия подчинен:
След това ClusterControl ще извърши необходимото подреждане на данни от избрания главен файл, използвайки pg_basebackup, ще конфигурира потребителя за репликация и ще активира поточно репликацията. Прегледът на клъстера на PostgreSQL ви дава известна представа за вашата настройка:
Точно както при прегледите на клъстерите Galera и MySQL, тук можете да намерите всички необходими раздели и функции:мониторът на заявките, производителността, разделите за архивиране ви позволяват да извършвате необходимите операции.
Внедряване на комплект реплики на MongoDB
Разгръщането на нов комплект реплики на MongoDB е подобно на другите клъстери. От диалоговия прозорец Deploy Database Cluster изберете MongoDB ReplicatSet, дефинирайте предпочитаните опции за база данни и добавете възлите на базата данни:
Можете да изберете да инсталирате Percona Server за MongoDB от Percona или MongoDB Server от MongoDB, Inc (преди 10gen). Също така трябва да посочите администраторския потребител и парола на MongoDB, тъй като ClusterControl ще разположи по подразбиране MongoDB клъстер с активирано удостоверяване.
След като инсталирате клъстера, можете да добавите допълнителен подчинен или арбитър възел към набора от реплика, като използвате менюто „Добавяне на възел“ под същото падащо меню от прегледа на клъстера:
След добавяне на подчинения или арбитъра към набора от реплика, ще бъде създадено задание. След като тази задача приключи, ще отнеме известно време, преди MongoDB да я добави към клъстера и да стане видима в прегледа на клъстера:
Последни мисли
С тези три примера ви показахме колко лесно е да настроите различни клъстери от нулата само за няколко минути. Красотата на използването на тази настройка на Vagrant е, че толкова лесно, колкото и да създадете тази среда, можете също да я премахнете и след това да се появи отново. Впечатлете колегите си, като покажете колко бързо можете да настроите работна среда.
Разбира се, би било също толкова интересно да добавите съществуващи хостове и вече разгърнати клъстери в ClusterControl и това е, което ще разгледаме следващия път.