আমি চলছি drbd83
সঙ্গে ocfs2
মধ্যে centos 5
এবং ব্যবহার করার পরিকল্পনা packemaker
তাদের সাথে। কিছুক্ষণ পরে, আমি drbd
বিভক্ত মস্তিষ্কের সমস্যার মুখোমুখি ।
version: 8.3.13 (api:88/proto:86-96)
GIT-hash: 83ca112086600faacab2f157bc5a9324f7bd7f77 build by mockbuild@builder10.centos.org, 2012-05-07 11:56:36
1: cs:StandAlone ro:Primary/Unknown ds:UpToDate/DUnknown r-----
ns:0 nr:0 dw:112281991 dr:797551 al:99 bm:6401 lo:0 pe:0 ua:0 ap:0 ep:1 wo:b oos:60
আমি আমার ড্রাবডিকে সেকেন্ডারিতে স্যুইচ করতে পারি না।
drbdadm secondary r0
1: State change failed: (-12) Device is held open by someone
Command 'drbdsetup 1 secondary' terminated with exit code 11
আমার drbd
সংস্থান কনফিগারেশন:
resource r0 {
syncer {
rate 1000M;
verify-alg sha1;
}
disk {
on-io-error detach;
}
handlers {
pri-lost-after-sb "/usr/lib/drbd/notify-split-brain.sh root";
}
net {
allow-two-primaries;
after-sb-0pri discard-younger-primary;
after-sb-1pri call-pri-lost-after-sb;
after-sb-2pri call-pri-lost-after-sb;
}
startup { become-primary-on both; }
on serving_4130{
device /dev/drbd1;
disk /dev/sdb1;
address 192.168.4.130:7789;
meta-disk internal;
}
on MT305-3182 {
device /dev/drbd1;
disk /dev/xvdb1;
address 192.168.3.182:7789;
meta-disk internal;
}
}
Ocfs2 স্থিতির স্থিতি:
service ocfs2 status
Configured OCFS2 mountpoints: /data
lsof
দেখান যে, drbd এর সাথে সম্পর্কযুক্ত একটি প্রক্রিয়া রয়েছে।
lsof | grep drbd
COMMAND PID USER FD TYPE DEVICE SIZE NODE NAME
drbd1_wor 7782 root cwd DIR 253,0 4096 2 /
drbd1_wor 7782 root rtd DIR 253,0 4096 2 /
drbd1_wor 7782 root txt unknown /proc/7782/exe
এবং এটি একটি মৃত syMLink:
# ls -l /proc/7782/exe
ls: cannot read symbolic link /proc/7782/exe: No such file or directory
lrwxrwxrwx 1 root root 0 May 4 09:56 /proc/7782/exe
# ps -ef | awk '$2 == "7782" { print $0 }'
root 7782 1 0 Apr22 ? 00:00:20 [drbd1_worker]
লক্ষ্য করুন যে এই প্রক্রিয়াটি বর্গাকার বন্ধনীগুলিতে আবৃত রয়েছে:
args COMMAND command with all its arguments as a string. Modifications to the arguments may be shown. The
output in this column may contain spaces. A process marked <defunct> is partly dead, waiting to
be fully destroyed by its parent. Sometimes the process args will be unavailable; when this
happens, ps will instead print the executable name in brackets.
সুতরাং, চূড়ান্ত প্রশ্নটি: আমরা কীভাবে পুনরায় বুট ছাড়াই ডিআরবিডি পুনরুদ্ধার করতে পারি ?
@Andreask- কে উত্তর দিন:
আমার বিভাজন সারণী:
# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/VolGroup00-LogVol00
35G 6.9G 27G 21% /
/dev/xvda1 99M 20M 74M 22% /boot
tmpfs 1.0G 0 1.0G 0% /dev/shm
/dev/drbd1 100G 902M 100G 1% /data
ডিভাইসের নাম:
# dmsetup ls --tree -o inverted
(202:2)
├─VolGroup00-LogVol01 (253:1)
└─VolGroup00-LogVol00 (253:0)
ব্লক ডিভাইসটিতে মনোযোগ দিন ( 253:0
), এটির ফলাফল যেমন lsof
:
# lvdisplay
--- Logical volume ---
LV Name /dev/VolGroup00/LogVol00
VG Name VolGroup00
LV UUID vCd152-amVZ-GaPo-H9Zs-TIS0-KI6j-ej8kYi
LV Write Access read/write
LV Status available
# open 1
LV Size 35.97 GB
Current LE 1151
Segments 1
Allocation inherit
Read ahead sectors auto
- currently set to 256
Block device 253:0
প্রত্যুত্তর
# vgdisplay
--- Volume group ---
VG Name VolGroup00
System ID
Format lvm2
Metadata Areas 1
Metadata Sequence No 3
VG Access read/write
VG Status resizable
MAX LV 0
Cur LV 2
Open LV 2
Max PV 0
Cur PV 1
Act PV 1
VG Size 39.88 GB
PE Size 32.00 MB
Total PE 1276
Alloc PE / Size 1276 / 39.88 GB
Free PE / Size 0 / 0
VG UUID OTwzII-AP5H-nIbH-k2UA-H9nw-juBv-wcvmBq
আপডেট শুক্র 17 মে 16:08:16 আইসিটি 2013
এখানে লার্স এলেনবার্গের কিছু ধারণা দেওয়া হয়েছে :
যদি ফাইল সিস্টেমটি এখনও মাউন্ট করা থাকে ... ওহ ভাল। এটি আনমাউন্ট করুন। অলস নয়, তবে সত্যই।
আমি নিশ্চিত, ওসিএফএস 2 ইতিমধ্যে আনমাউন্ট করা ছিল।
এনএফএস জড়িত থাকলে, চেষ্টা করুন
killall -9 nfsd killall -9 lockd echo 0 > /proc/fs/nfsd/threads
না, এনএফএস জড়িত ছিল না।
যদি lvm / dmsetup / kpartx / multipath / udev জড়িত থাকে, চেষ্টা করুন
dmsetup ls --tree -o inverted
এবং dbd থেকে নির্ভরতা আছে কিনা তা পরীক্ষা করে দেখুন।
আপনি আমার উপরের আউটপুট থেকে দেখতে পাচ্ছেন, এলভিএম ডিআরবিডি সম্পর্কিত নয়:
pvdisplay -m
--- Physical volume ---
PV Name /dev/xvda2
VG Name VolGroup00
PV Size 39.90 GB / not usable 20.79 MB
Allocatable yes (but full)
PE Size (KByte) 32768
Total PE 1276
Free PE 0
Allocated PE 1276
PV UUID 1t4hkB-p43c-ABex-stfQ-XaRt-9H4i-51gSTD
--- Physical Segments ---
Physical extent 0 to 1148:
Logical volume /dev/VolGroup00/LogVol00
Logical extents 0 to 1148
Physical extent 1149 to 1275:
Logical volume /dev/VolGroup00/LogVol01
Logical extents 0 to 126
fdisk -l
Disk /dev/xvda: 42.9 GB, 42949672960 bytes
255 heads, 63 sectors/track, 5221 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/xvda1 * 1 13 104391 83 Linux
/dev/xvda2 14 5221 41833260 8e Linux LVM
Disk /dev/xvdb: 107.3 GB, 107374182400 bytes
255 heads, 63 sectors/track, 13054 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/xvdb1 1 13054 104856223+ 83 Linux
যদি লুপ / ক্রিপ্টোলোপ / ইত্যাদি জড়িত থাকে তবে সেগুলির মধ্যে একটি এখনও তাদের অ্যাক্সেস করছে কিনা তা পরীক্ষা করে দেখুন।
যদি কিছু ভার্চুয়ালাইজেশন টেকনিকের ব্যবহার হয়, তবে সমস্ত কন্টেইনারগুলি / ভিএমগুলি বন্ধ করুন / ধ্বংস করুন যা তাদের জীবনের সময়কালে এই ড্রাবডিকে অ্যাক্সেস করতে পারে।
না, তা হয় না।
কখনও কখনও এটি কেবল উডেভ বা সমকক্ষ একটি জাতি করে doing
আমি multipath
নিয়মটি অক্ষম করে দিয়েছি এবং এমনকি বন্ধ করে দিয়েছি udevd
, এবং কোনও পরিবর্তন নেই।
কখনও কখনও এটি একটি ইউনিক্স ডোমেন সকেট বা অনুরূপ এখনও অবধি খোলা থাকে (lsof / fuser- তে প্রদর্শিত হবে না)।
যদি তা হয় তবে আমরা এই ইউনিক্স সকেটটি কীভাবে খুঁজে পাব?
আপডেট বুধবার 22 মে 22:10:41 আইসিটি 2013
জাদু SysRq কী মাধ্যমে ডাম্প করার সময় ডিআরবিডি কর্মী প্রক্রিয়াটির স্ট্যাকট্রেস এখানে রয়েছে :
kernel: drbd1_worker S ffff81007ae21820 0 7782 1 7795 7038 (L-TLB)
kernel: ffff810055d89e00 0000000000000046 000573a8befba2d6 ffffffff8008e82f
kernel: 00078d18577c6114 0000000000000009 ffff81007ae21820 ffff81007fcae040
kernel: 00078d18577ca893 00000000000002b1 ffff81007ae21a08 000000017a590180
kernel: Call Trace:
kernel: [<ffffffff8008e82f>] enqueue_task+0x41/0x56
kernel: [<ffffffff80063002>] thread_return+0x62/0xfe
kernel: [<ffffffff80064905>] __down_interruptible+0xbf/0x112
kernel: [<ffffffff8008ee84>] default_wake_function+0x0/0xe
kernel: [<ffffffff80064713>] __down_failed_interruptible+0x35/0x3a
kernel: [<ffffffff885d461a>] :drbd:.text.lock.drbd_worker+0x2d/0x43
kernel: [<ffffffff885eca37>] :drbd:drbd_thread_setup+0x127/0x1e1
kernel: [<ffffffff800bab82>] audit_syscall_exit+0x329/0x344
kernel: [<ffffffff8005dfb1>] child_rip+0xa/0x11
kernel: [<ffffffff885ec910>] :drbd:drbd_thread_setup+0x0/0x1e1
kernel: [<ffffffff8005dfa7>] child_rip+0x0/0x11
আমি নিশ্চিত নই যে এই ওসিএফএস 2 হার্টবিট অঞ্চলটি ডিআরবিডিকে মাধ্যমিক পরিবর্তন করতে বাধা দিচ্ছে:
kernel: o2hb-C3E41CA2 S ffff810002536420 0 9251 31 3690 (L-TLB)
kernel: ffff810004af7d20 0000000000000046 ffff810004af7d30 ffffffff80063002
kernel: 1400000004000000 000000000000000a ffff81007ec307a0 ffffffff80319b60
kernel: 000935c260ad6764 0000000000000fcd ffff81007ec30988 0000000000027e86
kernel: Call Trace:
kernel: [<ffffffff80063002>] thread_return+0x62/0xfe
kernel: [<ffffffff8006389f>] schedule_timeout+0x8a/0xad
kernel: [<ffffffff8009a41d>] process_timeout+0x0/0x5
kernel: [<ffffffff8009a97c>] msleep_interruptible+0x21/0x42
kernel: [<ffffffff884b3b0b>] :ocfs2_nodemanager:o2hb_thread+0xd2c/0x10d6
kernel: [<ffffffff80063002>] thread_return+0x62/0xfe
kernel: [<ffffffff800a329f>] keventd_create_kthread+0x0/0xc4
kernel: [<ffffffff884b2ddf>] :ocfs2_nodemanager:o2hb_thread+0x0/0x10d6
kernel: [<ffffffff800a329f>] keventd_create_kthread+0x0/0xc4
kernel: [<ffffffff80032632>] kthread+0xfe/0x132
kernel: [<ffffffff8005dfb1>] child_rip+0xa/0x11
kernel: [<ffffffff800a329f>] keventd_create_kthread+0x0/0xc4
kernel: [<ffffffff80032534>] kthread+0x0/0x132
kernel: [<ffffffff8005dfa7>] child_rip+0x0/0x11
umount
ocfs
এটিকে মাধ্যমিকতে নামানোর চেষ্টা করার আগে?