இரண்டு CentOS 7 சேவையகங்களில் சேமிப்பக நகலெடுப்பிற்காக DRBD ஐ அமைக்கிறது

இக்கட்டுரையின் மொழியாக்கம் பாடநெறி தொடங்கும் தினத்தன்று தயாரிக்கப்பட்டது "லினக்ஸ் நிர்வாகி. மெய்நிகராக்கம் மற்றும் கிளஸ்டரிங்".

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

இது போன்றது என்று நீங்கள் கூறலாம் பிணைய RAID கட்டமைப்பு 1 வட்டுகள் வெவ்வேறு சேவையகங்களுக்கு மேப் செய்யப்பட்டன. இருப்பினும், இது RAID (நெட்வொர்க் RAID கூட) விட முற்றிலும் வித்தியாசமாக செயல்படுகிறது.

ஆரம்பத்தில், DRBD முக்கியமாக அதிக கிடைக்கும் (HA) கணினி கிளஸ்டர்களில் பயன்படுத்தப்பட்டது, இருப்பினும், பதிப்பு XNUMX இல் தொடங்கி, கிளவுட் ஸ்டோரேஜ் தீர்வுகளை வரிசைப்படுத்த இதைப் பயன்படுத்தலாம்.

இந்த கட்டுரையில், CentOS இல் DRBD ஐ எவ்வாறு நிறுவுவது மற்றும் இரண்டு சேவையகங்களில் சேமிப்பகத்தை (பகிர்வு) நகலெடுக்க அதை எவ்வாறு பயன்படுத்துவது என்பதை சுருக்கமாக விளக்குவோம். லினக்ஸில் DRBD உடன் தொடங்க இது சரியான கட்டுரை.

சோதனை சூழல்

இந்த அமைப்பிற்கு இரண்டு முனை கிளஸ்டரைப் பயன்படுத்துவோம்.

  • முனை 1: 192.168.56.101 – tecmint.tecmint.lan
  • முனை 2: 192.168.56.102 – server1.tecmint.lan

படி 1: DRBD தொகுப்புகளை நிறுவவும்

டிஆர்பிடி லினக்ஸ் கர்னல் தொகுதியாக செயல்படுத்தப்படுகிறது. இது ஒரு மெய்நிகர் தொகுதி சாதனத்திற்கான இயக்கி, எனவே இது கணினியின் I/O அடுக்கின் மிகக் கீழே அமைந்துள்ளது.

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

# rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
# rpm -Uvh http://www.elrepo.org/elrepo-release-7.0-3.el7.elrepo.noarch.rpm

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

# yum install -y kmod-drbd84 drbd84-utils

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

# semanage permissive -a drbd_t

கூடுதலாக, உங்கள் கணினி ஒரு ஃபயர்வால் (ஃபயர்வால்ட்) இயங்கினால், இரண்டு முனைகளுக்கு இடையில் தரவு ஒத்திசைவை அனுமதிக்க DRBD போர்ட் 7789 ஐ சேர்க்க வேண்டும்.

முதல் முனைக்கு இந்த கட்டளைகளை இயக்கவும்:

# firewall-cmd --permanent --add-rich-rule='rule family="ipv4"  source address="192.168.56.102" port port="7789" protocol="tcp" accept'
# firewall-cmd --reload

இரண்டாவது முனைக்கு இந்த கட்டளைகளை இயக்கவும்:

# firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="192.168.56.101" port port="7789" protocol="tcp" accept'
# firewall-cmd --reload

படி 2: குறைந்த அளவிலான சேமிப்பகத்தை தயார் செய்யவும்

இப்போது இரண்டு கிளஸ்டர் முனைகளிலும் DRBD நிறுவியுள்ளோம், அவற்றில் ஏறக்குறைய ஒரே அளவிலான சேமிப்பக பகுதிகளை வழங்க வேண்டும். இது ஒரு ஹார்ட் டிரைவ் பகிர்வாக இருக்கலாம் (அல்லது முழு இயற்பியல் வன்), ஒரு மென்பொருள் RAID சாதனம், LVM தருக்க தொகுதி அல்லது உங்கள் கணினியில் காணப்படும் பிற வகை பிளாக் சாதனம்.

இந்தக் கட்டுரைக்கு, dd கட்டளையைப் பயன்படுத்தி 2GB சோதனைத் தொகுதி சாதனத்தை உருவாக்குவோம்.

# dd if=/dev/zero of=/dev/sdb1 bs=2024k count=1024

இரண்டு முனைகளிலும் இணைக்கப்பட்ட இரண்டாவது தொகுதி சாதனத்தில் (/dev/sdb) இது பயன்படுத்தப்படாத பகிர்வு (/dev/sdb1) என்று வைத்துக்கொள்வோம்.

படி 3. DRBD ஐ கட்டமைத்தல்

DRBD முக்கிய கட்டமைப்பு கோப்பு - /etc/drbd.conf, மற்றும் கூடுதல் கட்டமைப்பு கோப்புகளை கோப்பகத்தில் காணலாம் /etc/drbd.d.

சேமிப்பகத்தை நகலெடுக்க, கோப்பில் தேவையான உள்ளமைவுகளைச் சேர்க்க வேண்டும் /etc/drbd.d/global_common.conf, இது DRBD உள்ளமைவின் உலகளாவிய மற்றும் பொதுவான பிரிவுகளைக் கொண்டுள்ளது, மேலும் நாம் வளங்களை வரையறுக்க வேண்டும் .res கோப்புகள்.

இரண்டு முனைகளிலும் அசல் கோப்பின் காப்பு பிரதியை உருவாக்கி, திருத்துவதற்கு புதிய கோப்பைத் திறக்கவும் (உங்கள் விருப்பத்தின் உரை திருத்தியைப் பயன்படுத்தவும்).

# mv /etc/drbd.d/global_common.conf /etc/drbd.d/global_common.conf.orig
# vim /etc/drbd.d/global_common.conf 

இரண்டு கோப்புகளிலும் பின்வரும் வரிகளைச் சேர்க்கவும்:

global {
 usage-count  yes;
}
common {
 net {
  protocol C;
 }
}

கோப்பைச் சேமித்து, எடிட்டரை மூடவும்.

ஒரு கணம் நெறிமுறை C வரியைப் பார்ப்போம். DRBD மூன்று வெவ்வேறு பிரதி முறைகளை ஆதரிக்கிறது (அதாவது, மூன்று டிகிரி பிரதி ஒத்திசைவு), அதாவது:

  • நெறிமுறை A: ஒத்திசைவற்ற பிரதி நெறிமுறை; பெரும்பாலும் நீண்ட தூர நகலெடுக்கும் காட்சிகளில் பயன்படுத்தப்படுகிறது.
  • நெறிமுறை B: அரை ஒத்திசைவான பிரதி நெறிமுறை அல்லது ஒத்திசைவான நினைவக நெறிமுறை.
  • நெறிமுறை C: பொதுவாக குறுகிய தூரம் கொண்ட நெட்வொர்க்குகளில் முனைகளுக்குப் பயன்படுத்தப்படுகிறது; இது DRBD அமைப்புகளில் மிகவும் பொதுவாகப் பயன்படுத்தப்படும் பிரதி நெறிமுறையாகும்.

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

படி 4: ஆதாரத்தைச் சேர்க்கவும்

ஆதாரம் என்பது ஒரு குறிப்பிட்ட பிரதி தரவுத்தொகுப்பின் அனைத்து அம்சங்களையும் குறிக்கும் ஒரு குடைச் சொல்லாகும். கோப்பில் எங்கள் வளத்தை வரையறுப்போம் /etc/drbd.d/test.res.

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

ஹோஸ்ட்பெயர்களுக்கு கவனம் செலுத்துங்கள், நாம் பிணைய ஹோஸ்ட்பெயரை குறிப்பிட வேண்டும், இது uname கட்டளையைப் பயன்படுத்தி பெறலாம் -n.

resource test {
        on tecmint.tecmint.lan {
 		device /dev/drbd0;
       		disk /dev/sdb1;
        		meta-disk internal;	
                	address 192.168.56.101:7789;
        }
        on server1.tecmint.lan  {
		device /dev/drbd0;
        		disk /dev/sdb1;
        		meta-disk internal;
                	address 192.168.56.102:7789;
        }
}
}

எங்கே:

  • ஹோஸ்ட் பெயரில்: உள்ளமைவு உள்ளமைவு அறிக்கை பொருந்தும் பிரிவில்.
  • சோதனை: இது புதிய வளத்தின் பெயர்.
  • சாதனம் /dev/drbd0: DRBD ஆல் நிர்வகிக்கப்படும் புதிய மெய்நிகர் தொகுதி சாதனத்தைக் குறிக்கிறது.
  • வட்டு /dev/sdb1: இது ஒரு தொகுதி சாதனப் பகிர்வாகும், இது DRBD சாதனத்திற்கான காப்புப் பிரதி சாதனமாகும்.
  • மெட்டா-வட்டு: DRBD அதன் மெட்டாடேட்டாவை எங்கு சேமிக்கிறது என்பதை வரையறுக்கிறது. உட்புறம் என்பது DRBD அதன் மெட்டாடேட்டாவை உற்பத்தியில் உள்ள உண்மையான தரவைப் போலவே அதே இயற்பியல் குறைந்த-நிலை சாதனத்தில் சேமிக்கிறது.
  • முகவரி: ஐபி முகவரி மற்றும் தொடர்புடைய முனையின் போர்ட் எண்ணைக் குறிக்கிறது.

இரண்டு ஹோஸ்ட்களிலும் அளவுருக்கள் ஒரே மதிப்புகளைக் கொண்டிருந்தால், அவற்றை நேரடியாக வளங்கள் பிரிவில் குறிப்பிடலாம்.

எடுத்துக்காட்டாக, மேலே உள்ள கட்டமைப்பு மறுசீரமைக்கப்படலாம்:

resource test {
	device /dev/drbd0;
	disk /dev/sdb1;
        	meta-disk internal;	
        	on tecmint.tecmint.lan {
 		address 192.168.56.101:7789;
        	}
        	on server1.tecmint.lan  {
		address 192.168.56.102:7789;
        		}
}

படி 5. வளத்தைத் துவக்கி துவக்கவும்

DRBD உடன் தொடர்பு கொள்ள, பின்வரும் நிர்வாகக் கருவிகளைப் பயன்படுத்துவோம் (இது DRBD ஆதாரங்களை உள்ளமைக்கவும் நிர்வகிக்கவும் கர்னல் தொகுதியுடன் தொடர்பு கொள்கிறது):

  • drbdadm: DRBD உயர்நிலை நிர்வாகக் கருவி.
  • drbdsetup: DRBD சாதனங்களை அவற்றின் காப்புப் பிரதி சாதனங்களுடன் இணைப்பதற்கும், DRBD சாதனங்களின் ஜோடிகளை அவற்றின் காப்புப் பிரதி சாதனங்களைப் பிரதிபலிக்கும் வகையில் உள்ளமைப்பதற்கும் மற்றும் இயங்கும் DRBD சாதனங்களின் உள்ளமைவைச் சரிபார்ப்பதற்கும் கீழ்-நிலை நிர்வாகக் கருவி.
  • Drbdmeta: மெட்டாடேட்டா மேலாண்மை கருவி.

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

# drbdadm create-md test

இரண்டு CentOS 7 சேவையகங்களில் சேமிப்பக நகலெடுப்பிற்காக DRBD ஐ அமைக்கிறது
மெட்டாடேட்டா ஸ்டோரை துவக்குகிறது

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

# drbdadm up test

இப்போது நீங்கள் கட்டளையை இயக்கினால் lsblk, DRBD சாதனம்/தொகுதி drbd0 காப்புப் பிரதி சாதனத்துடன் தொடர்புடையதாக இருப்பதை நீங்கள் கவனிப்பீர்கள் /dev/sdb1:

# lsblk

இரண்டு CentOS 7 சேவையகங்களில் சேமிப்பக நகலெடுப்பிற்காக DRBD ஐ அமைக்கிறது
தொகுதி சாதனங்களின் பட்டியல்

ஒரு ஆதாரத்தை முடக்க, இயக்கவும்:

# drbdadm down test

ஒரு வளத்தின் நிலையைச் சரிபார்க்க, பின்வரும் கட்டளையை இயக்கவும் (இந்த கட்டத்தில் வட்டுகளின் நிலை எதிர்பார்க்கப்படுகிறது என்பதை நினைவில் கொள்க. சீரற்ற / சீரற்ற):

# drbdadm status test
OR
# drbdsetup status test --verbose --statistics 	#for  a more detailed status

இரண்டு CentOS 7 சேவையகங்களில் சேமிப்பக நகலெடுப்பிற்காக DRBD ஐ அமைக்கிறது
ஒரு வளத்தின் நிலையைச் சரிபார்க்கிறது
தீய

படி 6: முதன்மை ஆதாரம்/ஆரம்ப சாதன ஒத்திசைவு மூலத்தை அமைக்கவும்

இந்த கட்டத்தில், DRBD செல்ல தயாராக உள்ளது. ஆரம்ப சாதன ஒத்திசைவின் ஆதாரமாக எந்த முனை பயன்படுத்தப்பட வேண்டும் என்பதை இப்போது நாம் குறிப்பிட வேண்டும்.

ஆரம்ப முழு ஒத்திசைவைத் தொடங்க பின்வரும் கட்டளையை ஒரு முனையில் இயக்கவும்:

# drbdadm primary --force test
# drbdadm status test

இரண்டு CentOS 7 சேவையகங்களில் சேமிப்பக நகலெடுப்பிற்காக DRBD ஐ அமைக்கிறது
முதன்மை முனையை ஆரம்ப சாதனமாக அமைத்தல்
ஒத்திசைவு முடிந்ததும், இரண்டு டிரைவ்களின் நிலையும் UpToDate ஆக இருக்க வேண்டும்.

படி 7: DRBD அமைப்பைச் சோதிக்கிறது

இறுதியாக, நகலெடுக்கப்பட்ட தரவைச் சேமிக்க DRBD சாதனம் தேவைப்படுகிறதா என்பதைச் சரிபார்க்க வேண்டும். நாங்கள் ஒரு வெற்று வட்டு அளவைப் பயன்படுத்தினோம் என்பதை நினைவில் கொள்ளுங்கள், எனவே சாதனத்தில் ஒரு கோப்பு முறைமையை உருவாக்கி, பிரதி தரவைச் சேமிக்க அதைப் பயன்படுத்த முடியுமா என்பதைச் சரிபார்க்க அதை ஏற்ற வேண்டும்.

நாம் ஆரம்ப முழு ஒத்திசைவை தொடங்கிய முனையில் பின்வரும் கட்டளையைப் பயன்படுத்தி சாதனத்தில் ஒரு கோப்பு முறைமையை உருவாக்க வேண்டும் (முதன்மைப் பாத்திரத்துடன் ஒரு ஆதாரம் உள்ளது):

# mkfs -t ext4 /dev/drbd0

இரண்டு CentOS 7 சேவையகங்களில் சேமிப்பக நகலெடுப்பிற்காக DRBD ஐ அமைக்கிறது
Drbd தொகுதியில் ஒரு கோப்பு முறைமையை உருவாக்குதல்

பின்னர் காட்டப்பட்டுள்ளபடி அதை ஏற்றவும் (நீங்கள் மவுண்ட் பாயிண்டிற்கு பொருத்தமான பெயரைக் கொடுக்கலாம்):

# mkdir -p /mnt/DRDB_PRI/
# mount /dev/drbd0 /mnt/DRDB_PRI/

இப்போது மேலே உள்ள மவுண்ட் பாயிண்டில் சில கோப்புகளை நகலெடுக்கவும் அல்லது உருவாக்கவும் மற்றும் நீண்ட பட்டியலை உருவாக்கவும் ls கட்டளைகள்:

# cd /mnt/DRDB_PRI/
# ls -l 

இரண்டு CentOS 7 சேவையகங்களில் சேமிப்பக நகலெடுப்பிற்காக DRBD ஐ அமைக்கிறது
முக்கிய Drbd தொகுதியின் உள்ளடக்கங்களை பட்டியலிடுங்கள்

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

# umount /mnt/DRDB_PRI/
# cd
# drbdadm secondary test

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

# drbdadm primary test
# mkdir -p /mnt/DRDB_SEC/
# mount /dev/drbd0 /mnt/DRDB_SEC/
# cd /mnt/DRDB_SEC/
# ls  -l 

இரண்டு CentOS 7 சேவையகங்களில் சேமிப்பக நகலெடுப்பிற்காக DRBD ஐ அமைக்கிறது
இரண்டாம் நிலை முனையில் இயங்கும் DRBD அமைப்பைச் சரிபார்க்கிறது.

மேலும் தகவலுக்கு, நிர்வாகக் கருவிகள் உதவிப் பக்கங்களைப் பார்க்கவும்:

# man drbdadm
# man drbdsetup
# man drbdmeta

அடிக்கடி கேட்கப்படும் கேள்விகள்: DRBD பயனர் கையேடு.

சுருக்கம்

DRBD மிகவும் நெகிழ்வானது மற்றும் பல்துறை திறன் கொண்டது, இது எந்தவொரு பயன்பாட்டிலும் HA ஐ சேர்ப்பதற்கு ஏற்ற சேமிப்பக பிரதி தீர்வு ஆகும். இந்த கட்டுரையில், CentOS 7 இல் DRBD ஐ எவ்வாறு நிறுவுவது என்பதைக் காண்பித்தோம் மற்றும் சேமிப்பக நகலெடுப்பிற்கு அதை எவ்வாறு பயன்படுத்துவது என்பதை சுருக்கமாக விளக்கினோம். கீழேயுள்ள கருத்துப் படிவத்தைப் பயன்படுத்தி உங்கள் எண்ணங்களை எங்களுடன் பகிர்ந்துகொள்ள தயங்காதீர்கள்.

படிப்பைப் பற்றி மேலும் அறிக.

ஆதாரம்: www.habr.com

கருத்தைச் சேர்