உபுண்டுவில் உள்ள MariaDB Galera கிளஸ்டர் நிறுவ எப்படி

உபுண்டுவில் உள்ள MariaDB Galera கிளஸ்டர் நிறுவ எப்படி

மரியாடிபி கலேரா என்பது மரியாடிபிக்கான மல்டி மாஸ்டர் கிளஸ்டர் ஆகும். MariaDB 10.1 முதல், மரியாடிபி சேவையகம் மற்றும் மரியாடிபி கலேரா சேவையக தொகுப்புகள் ஒன்றிணைக்கப்பட்டு, மரியாடிபியை நிறுவும் போது கலேரா தொகுப்புகள் மற்றும் அவற்றின் சார்புநிலைகள் தானாக நிறுவப்படும். தற்போது, ​​மரியாடிபி கலேரா கிளஸ்டர் InnoDB / XtraDB சேமிப்பக இயந்திரத்தை மட்டுமே ஆதரிக்கிறது. MariaDB 10.0 மற்றும் 5.5 இல், நீங்கள் அதை தனித்தனியாக பதிவிறக்கம் செய்ய வேண்டும். மரியாடிபி கலேரா ஒரு தளத்தின் தரவுத்தளத்திற்கான பணிநீக்கத்தை சேர்க்கிறது. மரியாடிபி கலேரா கிளஸ்டரில், பல தரவுத்தள சேவையகங்கள் ஒருவருக்கொருவர் ஒன்றோடொன்று இணைக்கப்பட்டு ஒத்திசைக்கப்படுகின்றன.

MariaDB Galera அம்சங்கள் நிறைய வழங்குகிறது, அவற்றில் சில கீழே பட்டியலிடப்பட்டுள்ளன:

  1. ஒத்திசைவான பிரதி.
  2. தானியங்கி கணு சேரும்.
  3. செயலில்-செயலில் பல மாஸ்டர் டோபாலஜி.
  4. வரிசையான நிலைமையில், உண்மை இணை பிரதிசெயல்.
  5. சிறிய அளவிலான வாடிக்கையாளர் நிலைத்தன்மைகளைப் படிக்கவும், எழுதவும் எழுதவும்.
  6. தோல்வியடைந்த முனைகள், கிளஸ்டர் இருந்து தானாக துளி.

இந்த டுடோரியலில், Ubuntu X server இல் இயங்கும் X கணணியில் X கணனியில் MariaDB Galera Cluster ஐ எவ்வாறு அமைக்க வேண்டும் என்பதை விளக்குவோம். எல்லா முனைகளுக்கும் இடையில் தரவுத்தள பிரதிபலிப்பை சோதிக்கவும்.

தேவைகள்

  • உபுண்டு சர்வர் இயங்கும் மூன்று முனைகள்.
  • நிலையான IP முகவரிடன் Node1, Node192.168.0.102 நிலையான IP முகவரியுடன் 2 மற்றும் Node192.168.0.103 நிலையான IP முகவரிடன் உங்கள் சர்வரில் உள்ளமைக்கப்படும்.
  • அனைத்து முனைகளிலும் சூடோ சலுகைகளை அமைக்காத ரூட் அல்லாத பயனர்.

தொடங்குதல்

முதலில், நீங்கள் சமீபத்திய பதிப்பில் அனைத்து முனையங்களையும் புதுப்பிக்க வேண்டும். பின்வரும் கட்டளையுடன் நீங்கள் அனைத்தையும் புதுப்பிக்கலாம்:

sudo apt-get update -y
sudo apt-get upgrade-i

அடுத்து, இந்த மாற்றங்களை செயல்படுத்த அனைத்து முனையங்களையும் மீண்டும் துவக்கவும். பின்னர், sudo பயனருடன் உள்நுழைந்து, அடுத்த படிக்கு செல்லுங்கள்.

MariaDB Galera ஐ நிறுவவும்

MariaDB சேவையகம் மற்றும் மரியா DB கேலரா சர்வர் தொகுப்புகள் பதிப்பு MariaDB 10.1 இல் இணைக்கப்பட்டுள்ளன. இயல்புநிலையாக, MariaDB 10.1 இயல்புநிலை உபுண்டு களஞ்சியங்களில் கிடைக்கவில்லை, எனவே நீங்கள் அனைத்து முனையிலும் MariaDB களஞ்சியத்தை சேர்க்க வேண்டும்.

முதலில், MariaDB தொகுபதிவக விசையை பின்வரும் கட்டளையுடன் சேர்க்கவும்:

sudo apt-key adv –recv-key –keyserver hkp: //keyserver.ubuntu.com: 80 0xF1656F24C74CD1D8

அடுத்து, களஞ்சியத்தை சேர்க்கவும் மற்றும் பின்வரும் கட்டளையுடன் APT கேச் புதுப்பிக்கவும்:

sudo add-apt-repository 'deb [arch = amd64, i386, ppc64el] http://ftp.utexas.edu/mariadb/repo/10.1/ubuntu xenial main'
sudo apt-get update -y

தொகுபதிவகம் புதுப்பிக்கப்பட்டதும், பின்வரும் கட்டளையுடன் மரியா DB ஐ நிறுவவும்:

sudo apt-get install mariadb-server rsync-i

மேலே உள்ள கட்டளை MariaDB Galera மற்றும் பல சார்புகளை நிறுவும். கலெரே பாகங்கள் சொருகி அல்லது சேமிப்பு இயந்திரம் போன்ற கட்டமைக்கப்பட்ட வரை செயலற்றதாகவே இருக்கும். MariaDB அனைத்து முனைகளிலும் நிறுவப்பட்டவுடன், நீங்கள் MariaDB ஐ பாதுகாக்க முடியும்.

முன்னிருப்பாக MariaDB நிறுவல் பாதுகாப்பாக இல்லை, எனவே நீங்கள் MariaDB நிறுவலை பாதுகாக்க வேண்டும். Mysql_secure_installation ஸ்கிரிப்ட்டை இயக்கினால் இதை செய்யலாம்:

sudo mysql_secure_installation

இந்த செயல்பாட்டில், நீங்கள் ரூட் கடவுச்சொல்லை அமைக்க, அநாமதேய பயனர்களை நீக்க, ரூட் உள்நுழைவு தொலை அனுமதி மற்றும் சோதனை தரவுத்தள நீக்க வேண்டும். கீழே உள்ள அனைத்து கேள்விகளுக்கும் பதிலளிக்கவும்:

ரூட்டிற்கான தற்போதைய கடவுச்சொல்லை உள்ளிடவும் (none உள்ளிடவும்): ரூட் கடவுச்சொல்லை மாற்றவா? [Y / n] n அநாமதேய பயனர்களை நீக்க வேண்டுமா? [Y / n] Y ரூட் உள்நுழைவு தொலைநிலையை அனுமதிக்கலாமா? [Y / n] Y சோதனை தரவுத்தளத்தை அகற்றவும், அதற்கான அணுகவும் வேண்டுமா? [Y / n] ஒய் இப்போது சிறப்புரிமை அட்டவணைகள் மீண்டும் ஏற்றவா? [Y / N] Y

MariaDB அனைத்து முனைகளிலும் பாதுகாக்கப்பட்டவுடன், நீங்கள் அடுத்த படிக்கு செல்லலாம்.

Node1 இல் MariaDB க்ளஸ்டர் அமைத்தல்

முதலில், Node1 க்கு சென்று Galera க்கான கட்டமைப்பு கோப்பை உருவாக்கவும். முன்னிருப்பாக, MariaDB கட்டமைப்பை /etc/mysql/conf.d/ அடைவில் இருந்து வாசிக்கிறது. அவ்வாறு செய்ய, பின்வரும் கட்டளையை இயக்கவும்:

sudo nano /etc/mysql/conf.d/galera.cnf

பின்வரும் வழிகளைச் சேர்க்கவும்:

[mysqld] binlog_format = ROW முன்னிருப்பு சேமிப்பகம்-இயந்திரம் = innodb innodb_autoinc_lock_mode = ஐஎன்என் பிணை-முகவரி = 2 # கலரே வழங்குநர் கட்டமைப்பு wsrep_on = wsrep_provider = / usr / lib / galera / libgalera_smm.so # கலெர் க்ளஸ்டர் கட்டமைப்பு wsrep_cluster_name = "galera_cluster" wsrep_cluster_address = "gcomm: // 0.0.0.0" # கலரா ஒத்திசைவு கட்டமைப்பு wsrep_sst_method = rsync # கலரா முனையமைவு கட்டமைப்பு wsrep_node_address = "192.168.0.102,192.168.0.103,192.168.0.104" wsrep_node_name = "Node192.168.0.102"

நீங்கள் முடித்தவுடன் கோப்பு சேமிக்கவும்.

குறிப்பு: NXXX இன் IP முகவரி XXX ஆகும்

Galera Cluster இல் Node2 ஐச் சேர்க்கவும்

அடுத்து, Node2 க்கு சென்று Galera க்கான கட்டமைப்பு கோப்பை உருவாக்கவும்:

sudo nano /etc/mysql/conf.d/galera.cnf

பின்வரும் வழிகளைச் சேர்க்கவும்:

[mysqld] binlog_format = ROW முன்னிருப்பு சேமிப்பகம்-இயந்திரம் = innodb innodb_autoinc_lock_mode = ஐஎன்என் பிணை-முகவரி = 2 # கலரே வழங்குநர் கட்டமைப்பு wsrep_on = wsrep_provider = / usr / lib / galera / libgalera_smm.so # கலெர் க்ளஸ்டர் கட்டமைப்பு wsrep_cluster_name = "galera_cluster" wsrep_cluster_address = "gcomm: // 0.0.0.0" # கலரா ஒத்திசைவு கட்டமைப்பு wsrep_sst_method = rsync # கலரா முனையமைவு கட்டமைப்பு wsrep_node_address = "192.168.0.102,192.168.0.103,192.168.0.104" wsrep_node_name = "Node192.168.0.103"

நீங்கள் முடித்தவுடன் கோப்பு சேமிக்கவும்.

குறிப்பு: NXXX இன் IP முகவரி XXX ஆகும்.

Galera Cluster இல் Node3 ஐச் சேர்க்கவும்

அடுத்து, Node3 க்கு சென்று Galera க்கான கட்டமைப்பு கோப்பை உருவாக்கவும்:

sudo nano /etc/mysql/conf.d/galera.cnf

பின்வரும் வழிகளைச் சேர்க்கவும்:

[mysqld] binlog_format = ROW முன்னிருப்பு சேமிப்பகம்-இயந்திரம் = innodb innodb_autoinc_lock_mode = ஐஎன்என் பிணை-முகவரி = 2 # கலரே வழங்குநர் கட்டமைப்பு wsrep_on = wsrep_provider = / usr / lib / galera / libgalera_smm.so # கலெர் க்ளஸ்டர் கட்டமைப்பு wsrep_cluster_name = "galera_cluster" wsrep_cluster_address = "gcomm: // 0.0.0.0" # கலரா ஒத்திசைவு கட்டமைப்பு wsrep_sst_method = rsync # கலரா முனையமைவு கட்டமைப்பு wsrep_node_address = "192.168.0.102,192.168.0.103,192.168.0.104" wsrep_node_name = "Node192.168.0.104"

நீங்கள் முடித்தவுடன் கோப்பு சேமிக்கவும்.

குறிப்பு: NXXX இன் IP முகவரி XXX ஆகும்.

ஃபயர்வால் கட்டமைக்கவும்

Galera Cluster MySQL க்ளையன்ட் இணைப்புக்கான நான்கு துறைகளை 3306 பயன்படுத்துகிறது, அரசு ஸ்னாப்ஷாட் டிரான்ஸ்பர்களுக்கான ஐந்து, Galera Cluster Replication Traffic க்கான XXX மற்றும் அதிகரிப்பு மாநில பரிமாற்றத்திற்காக 4444. எனவே இந்த எல்லா துறைமுகங்களையும் UFW ஃபயர்வாலைப் பயன்படுத்த அனுமதிக்க வேண்டும். அனைத்து முனைகளிலும் பின்வரும் கட்டளையை இயக்கினால் இதை செய்யலாம்:

முதலில், பின்வரும் கட்டளையுடன் UFW ஃபயர்வாலை இயக்கவும்:

sudo ufw செயல்படுத்த

அடுத்து, பின்வரும் கட்டளையுடன் அனைத்து துறைகளையும் அனுமதிக்கவும்:

sudo ufw 3306 / tcp ஐ அனுமதிக்கிறது
sudo ufw 4444 / tcp ஐ அனுமதிக்கிறது
sudo ufw 4567 / tcp ஐ அனுமதிக்கிறது
sudo ufw 4568 / tcp ஐ அனுமதிக்கிறது
sudo ufw 4567 / udp ஐ அனுமதிக்கிறது

நீங்கள் பின்வரும் கட்டளையுடன் ஃபயர்வாலின் நிலையை சரிபார்க்கலாம்:

சூடோ ufw நிலை

UFW ஃபயர்வால் அனைத்து முனைகளிலும் உள்ளமைக்கப்பட்டவுடன், நீங்கள் அடுத்த படிக்கு செல்லலாம்.

MariaDB Galera கிளஸ்டர் தொடங்கவும்

அனைத்து முனையங்களையும் வெற்றிகரமாக கட்டமைத்த பின், Node1 க்கு சென்று Galera Cluster ஐத் தொடங்குங்கள்.

கலரா தொடங்குவதற்கு முன், நீங்கள் எல்லா முனைகளிலும் MariaDB சேவை நிறுத்தப்படுவதை உறுதி செய்ய வேண்டும்.

அனைத்து முனைகளிலும் பின்வரும் கட்டளையை இயக்கவும்:

sudo systemctl stop mysql

இப்போது, ​​Galera Cluster Node1 இல் பின்வரும் கட்டளையுடன் தொடங்கவும்:

sudo galera_new_cluster

இப்போது, ​​க்ளஸ்டர் இயங்குகிறதா இல்லையா என்பதை சரிபார்க்கவும்:

mysql -u root -p -e “'wsrep_cluster_size' போன்ற நிலையைக் காட்டு

எல்லாம் நன்றாக இருந்தால் நீங்கள் பின்வரும் வெளியீட்டை பார்க்க வேண்டும்:

+ -------------------- + ------- + | Variable_name | மதிப்பு | + -------------------- + ------- + | wsrep_cluster_size | 1 | + -------------------- + ------- +

NOD2 இல், MariaDB சேவையைத் தொடங்கவும்:

sudo systemctl mysql ஐ தொடங்கும்

நீங்கள் பின்வரும் கட்டளையுடன் செயல்படுகிறாரா இல்லையா என்பதை MariaDB சேவையின் நிலையை சரிபார்க்கலாம்:

sudo systemctl நிலை mysql

எல்லாம் நன்றாக இருந்தால், நீங்கள் பின்வரும் வெளியீட்டை பார்க்க வேண்டும்:

?? mariadb.service - MariaDB தரவுத்தள சேவையகம் ஏற்றப்பட்டது: ஏற்றப்பட்டது (/lib/systemd/system/mariadb.service; இயக்கப்பட்டது; விற்பனையாளர் முன்னமைக்கப்பட்ட: இயக்கப்பட்டது) செயலில் இருந்து: செயலில் (இயங்கும்) சூரியனில் இருந்து 2017-09-17 10:11:20 EDT; 10 நிமிடங்களுக்கு முன்பு செயல்முறை: 715 ExecStartPost = / bin / sh -c systemctl அமைக்காத சூழல் _WSREP_START_POSITION (குறியீடு = வெளியேறியது, நிலை = 0 / வெற்றி) செயல்முறை: 713 ExecStartPost = / etc / mysql / debian-start (குறியீடு = வெளியேறியது, நிலை = 0 / SUCCESS) செயல்முறை: 545 ExecStartPre = / bin / sh -c [! -e / usr / bin / galera_recovery] && VAR = || VAR = `/ usr / bin / galera_recovery`; [$? -eq 0] && systemctl தொகுப்பு செயல்முறை: 535 ExecStartPre = / bin / sh -c systemctl அமைக்காத சூழல் _WSREP_START_POSITION (குறியீடு = வெளியேறியது, நிலை = 0 / வெற்றி) செயல்முறை: 514 ExecStartPre = / usr / bin / install -m 755 -o mysql -g root -d / var / run / mysqld (குறியீடு = வெளியேறியது, நிலை = 0 / வெற்றி) முதன்மை PID: 661 (mysqld) நிலை: "உங்கள் SQL கோரிக்கைகளை இப்போது எடுத்துக்கொள்கிறீர்கள் ..." பணிகள்: 26 (வரம்பு: 4915) CGroup: /system.slice/mariadb.service ?????? 661 / usr / sbin / mysqld Sep 17 10:11:11 debian systemd [1]: மரியாடிபி தரவுத்தள சேவையகத்தைத் தொடங்குகிறது ... செப் 17 10:11:15 debian mysqld [661]: 2017-09-17 10:11:15 140287134630464 [குறிப்பு] / usr / sbin / mysqld (mysqld 10.1.26-MariaDB-0 + deb9u1) செயலாக்கமாகத் தொடங்குகிறது Sep 17 10:11:20 debian systemd [1]: மரியாடிபி தரவுத்தள சேவையகம் தொடங்கப்பட்டது.

இப்போது, ​​உங்கள் இரண்டாவது முனை தானாக கிளஸ்டருடன் இணைக்கப்பட்டிருக்க வேண்டும். பின்வரும் கட்டளையுடன் அதை நீங்கள் சரிபார்க்கலாம்:

mysql -u root -p -e “'wsrep_cluster_size' போன்ற நிலையைக் காட்டு

எல்லாம் நன்றாக வேலை செய்தால், க்ளஸ்டர் அளவை இரண்டுக்கு அமைக்க வேண்டும்:

+ -------------------- + ------- + | Variable_name | மதிப்பு | + -------------------- + ------- + | wsrep_cluster_size | 2 | + -------------------- + ------- +

NOD3 இல், MariaDB சேவையைத் தொடங்கவும்:

sudo systemctl mysql ஐ தொடங்கும்
mysql -u root -p -e “'wsrep_cluster_size' போன்ற நிலையைக் காட்டு

எல்லாமே நன்றாக வேலை செய்தால், க்ளஸ்டர் அளவை மூன்று அமைக்க வேண்டும்:

+ -------------------- + ------- + | Variable_name | மதிப்பு | + -------------------- + ------- + | wsrep_cluster_size | 3 | + -------------------- + ------- +

நீங்கள் இப்போது க்ளஸ்டர் வேலை செய்கிறீர்கள் மற்றும் ஒருவருக்கொருவர் தொடர்புகொள்கிறீர்கள்.

டெஸ்ட் டேட்டாபேஸ் ரெகிகேஷன்

இப்போது, ​​அனைத்து முனைகளும் ஆன்லைனில் உள்ளன, கலேரா கிளஸ்டர் முழுவதும் தரவுத்தள நகலெடுப்பைச் சோதிக்கும் நேரம் இது. Node1 இல் ஒரு தரவுத்தளத்தை உருவாக்குவதன் மூலம் தொடங்குவோம், அது எல்லா முனைகளிலும் பிரதிபலிக்கிறதா என்பதை சரிபார்க்கவும்.

முதலில், பின்வரும் கட்டளையுடன் MariaDB கன்சோலுடன் உள்நுழைக:

mysql -u ரூட் -p

உங்கள் ரூட் கடவுச்சொல்லை உள்ளிட்டு டெஸ்ட்_டிபி என்ற பெயரில் ஒரு தரவுத்தளத்தை உருவாக்கவும்:

மரியாடிபி [(எதுவுமில்லை)]> தரவுத்தளத்தை உருவாக்கு சோதனை_டிபி;
மரியாடிபி [(எதுவுமில்லை)]> தரவுத்தளங்களைக் காண்பி;

+ -------------------- + | தரவுத்தளம் | + -------------------- + | test_db | + -------------------- +

இப்போது Node2 மற்றும் Node3 க்கு சென்று, பின்னர் பிரதி வேலைசெய்கிறது அல்லது வேலை செய்யுங்கள்:

mysql -u ரூட் -p
மரியாடிபி [(எதுவுமில்லை)]> தரவுத்தளங்களைக் காண்பி;

+ -------------------- + | தரவுத்தளம் | + -------------------- + | test_db | + -------------------- +

வாழ்த்துக்கள்! நீங்கள் வெற்றிகரமாக Ubuntu 16.04 சேவையகத்தில் MariaDB Galera க்ளஸ்டரை நிறுவியுள்ளீர்கள்.

தீர்மானம்

உபுண்டுவில் உள்ள MariaDB Galera Cluster ஐ நிறுவ மற்றும் கட்டமைக்க போதுமான அறிவை நீங்கள் இப்போது கொண்டுள்ளீர்கள் என நம்புகிறேன். நீங்கள் இப்போது எளிதாக பல, அல்லது டஜன் கணக்கான, தனித்தனியான முனைகளில் வரை அளவிட முடியும். உங்களுக்கு சந்தேகம் அல்லது அதிக வினவல் இருந்தால், இணைப்பைப் பார்க்கவும் கலரா கிளஸ்டர் டாக்

மூல