د drbd+ocfs2 پر بنسټ د کوچني ویب کلسترونو لپاره د کلستر ذخیره

هغه څه چې موږ به یې په اړه خبرې وکړو:
د drbd + ocfs2 حلونو پراساس د دوه سرورونو لپاره د ګډ ذخیره کولو ګړندي ځای په ځای کولو څرنګوالی.

دا به د چا لپاره ګټور وي:
ټیوټوریل به د سیسټم مدیرانو او هر هغه چا لپاره ګټور وي چې د ذخیره کولو پلي کولو میتود غوره کوي یا غواړي د حل هڅه وکړي.

کومې پرېکړې مو رد کړې او ولې؟

ډیری وختونه موږ د داسې وضعیت سره مخ کیږو چیرې چې موږ اړتیا لرو په کوچني ویب کلستر کې د ښه لوستلو لیکلو فعالیت سره شریک ذخیره پلي کړو. موږ د خپلو پروژو لپاره د شریک ذخیره کولو پلي کولو لپاره مختلف انتخابونه هڅه وکړه، مګر یو څو په یو وخت کې د څو شاخصونو په اړه موږ ته قناعت ورکړ. اوس موږ به تاسو ته ووایو چې ولې.

  • ګلسټرفس موږ د لوستلو او لیکلو فعالیت سره مطمین نه کړ؛ د ډیری فایلونو په یوځل لوستلو کې ستونزې شتون درلود ، او په CPU کې لوړ بار شتون درلود. د فایلونو لوستلو ستونزه د خښتو څخه مستقیم لاسرسي سره حل کیدی شي ، مګر دا تل د پلي کیدو وړ ندي او عموما غلط وي.

  • سیف ډیر پیچلتیا نه خوښوله ، کوم چې د 2-4 سرورونو سره پروژې ته زیان رسولی شي ، په ځانګړي توګه که چیرې پروژه وروسته ساتل کیږي. یوځل بیا ، د فعالیت جدي محدودیتونه شتون لري چې موږ دې ته اړ باسي چې جلا ذخیره کلسترونه جوړ کړو ، لکه د ګلسټرفس سره.

  • د شریک ذخیره کولو پلي کولو لپاره د یو NFS سرور کارول د غلطۍ زغم په شرایطو کې پوښتنې راپورته کوي.

  • s3 د دندو د یوې ټاکلې لړۍ لپاره یو غوره مشهور حل دی، مګر دا د فایل سیسټم ندی، کوم چې د هغې ساحه محدودوي.

  • lsyncd. که موږ دمخه د "غیر فایل سیسټمونو" په اړه خبرې پیل کړي ، نو دا د دې مشهور حل په اړه ارزښت لري. نه یوازې دا د دوه اړخیز تبادلې لپاره مناسب نه دی (مګر که تاسو واقعیا غواړئ ، نو تاسو کولی شئ) ، دا په لوی شمیر فایلونو کې هم په ثابت ډول کار نه کوي. د ټولو شیانو لپاره یو ښه اضافه دا ده چې دا یو واحد تار دی. دلیل د برنامه په جوړښت کې دی: دا د کار توکي څارلو لپاره inotify کاروي ، کوم چې دا د پیل کولو او بیا سکین کولو پرمهال ګماري. rsync د لیږد وسیلې په توګه کارول کیږي.

ټیوټوریل: د drbd + ocfs2 پراساس د شریک ذخیره کولو څرنګوالی

زموږ لپاره یو له خورا اسانه حلونو څخه لینک و ocfs2+drbd. اوس موږ به تاسو ته ووایو چې تاسو څنګه کولی شئ د حل ډیټابیس پراساس د دوه سرورونو لپاره ګډ ذخیره په چټکۍ سره ځای په ځای کړئ. مګر لومړی، د اجزاوو په اړه لږ څه:

DRBD - د معیاري لینکس توزیع څخه د ذخیره کولو سیسټم چې تاسو ته اجازه درکوي په بلاکونو کې د سرورونو ترمینځ ډیټا نقل کړئ. اصلي غوښتنلیک د غلطۍ زغمونکي ذخیره رامینځته کول دي.

OCFS2 - د فایل سیسټم چې د ډیری سیسټمونو لخوا د ورته ذخیره کولو شریک کارول چمتو کوي. د لینکس توزیع کې شامل دی او د FS سره کار کولو لپاره د کرنل ماډل او د کارونکي ځای وسیلې دي. OCFS2 نه یوازې په DRBD کې کارول کیدی شي ، بلکه د ډیری ارتباطاتو سره په iSCSI کې هم کارول کیدی شي. زموږ په مثال کې موږ DRBD کاروو.

ټولې کړنې په اوبنټو سرور 18.04 کې په لږترلږه ترتیب کې ترسره کیږي.

مرحله 1. د DRBD تنظیم کول:

په فایل کې /etc/drbd.d/drbd0.res موږ خپل مجازی بلاک وسیله تشریح کوو /dev/drbd0:

resource drbd0 {
    syncer { rate 1000M; }
    net {
        allow-two-primaries;
        after-sb-0pri discard-zero-changes;
        after-sb-1pri discard-secondary;
        after-sb-2pri disconnect;
    }
    startup { become-primary-on both; }
    on drbd1 {
        meta-disk internal;
        device /dev/drbd0;
        disk /dev/vdb1;
        address 10.10.10.192:7789;
}
    on drbd2 {
        meta-disk internal;
        device /dev/drbd0;
        disk /dev/vdb1;
        address 10.10.10.193:7789;
}
}

د میټا ډیسک داخلي - د میټاډاټا ذخیره کولو لپاره ورته بلاک وسیلې وکاروئ
وسیله /dev/drbd0 - د drbd حجم ته د لارې په توګه /dev/drbd0 وکاروئ.
ډیسک /dev/vdb1 - وکاروئ /dev/vdb1
همغږي { شرح 1000M؛ } - د ګیګابایټ چینل بینډ ویت وکاروئ
اجازه - دوه لومړني - یو مهم انتخاب چې په دوه لومړني سرورونو کې د منلو وړ بدلونونو ته اجازه ورکوي
وروسته-sb-0pri، وروسته-sb-1pri، وروسته-sb-2pri - اختیارونه د نوډ د کړنو لپاره مسؤل دي کله چې سپلیټ برین کشف شي. نور جزییات په اسنادو کې موندل کیدی شي.
په دواړو باندې لومړني شي - دواړه نوډونه لومړني ته تنظیموي.

زموږ په قضیه کې، موږ دوه بالکل ورته ورته VMs لرو، د 10 ګیګابایټ له لارې د وقف شوي مجازی شبکې سره.

زموږ په مثال کې، د دوو کلستر نوډونو شبکې نومونه drbd1 او drbd2 دي. د سم عملیات لپاره، تاسو اړتیا لرئ چې په /etc/hosts کې د کوربه نومونو او IP پتې سره سمون ومومي.

10.10.10.192 drbd1
10.10.10.193 drbd2

مرحله 2. نوډونه تنظیم کړئ:

په دواړو سرورونو کې موږ چلوو:

drbdadm create-md drbd0

د drbd+ocfs2 پر بنسټ د کوچني ویب کلسترونو لپاره د کلستر ذخیره

modprobe drbd
drbdadm up drbd0
cat /proc/drbd

موږ لاندې ترلاسه کوو:

د drbd+ocfs2 پر بنسټ د کوچني ویب کلسترونو لپاره د کلستر ذخیره

تاسو کولی شئ همغږي پیل کړئ. په لومړي نوډ کې تاسو اړتیا لرئ اجرا کړئ:

drbdadm primary --force drbd0

راځئ چې وضعیت وګورو:

cat /proc/drbd

د drbd+ocfs2 پر بنسټ د کوچني ویب کلسترونو لپاره د کلستر ذخیره

عالي ، همغږي پیل شوې. موږ تر پایه انتظار کوو او انځور ګورو:

د drbd+ocfs2 پر بنسټ د کوچني ویب کلسترونو لپاره د کلستر ذخیره

3 ګام. په دوهم نوډ کې همغږي کول پیل کړئ:

drbdadm primary --force drbd0

موږ لاندې ترلاسه کوو:

د drbd+ocfs2 پر بنسټ د کوچني ویب کلسترونو لپاره د کلستر ذخیره

اوس موږ کولی شو له دوو سرورونو څخه drbd ته ولیکئ.

4 ګام. ocfs2 نصب او تنظیم کړئ.

موږ به په کافي اندازه کوچني ترتیب وکاروو:

cluster:
     node_count = 2
     name = ocfs2cluster

node:
     number = 1
     cluster = ocfs2cluster
     ip_port = 7777
     ip_address = 10.10.10.192
     name = drbd1

node:
     number = 2
     cluster = ocfs2cluster
     ip_port = 7777
     ip_address = 10.10.10.193
     name = drbd2

دا باید په کې لیکل شي /etc/ocfs2/cluster.conf په دواړو نوډونو کې.

موږ په هر نوډ کې په drbd0 کې FS رامینځته کوو:

mkfs.ocfs2 -L "testVol" /dev/drbd0

دلته موږ د ډیفالټ پیرامیټونو په کارولو سره په drbd0 باندې د ټیسټ وول لیبل سره د فایل سیسټم رامینځته کړی.

د drbd+ocfs2 پر بنسټ د کوچني ویب کلسترونو لپاره د کلستر ذخیره

په /etc/default/o2cb کې تاسو اړتیا لرئ تنظیم کړئ (لکه څنګه چې زموږ د ترتیب فایل کې)

O2CB_ENABLED=true 
O2CB_BOOTCLUSTER=ocfs2cluster 

او په هر نوډ کې اجرا کړئ:

o2cb register-cluster ocfs2cluster

بیا موږ چالان کړو او ټول هغه واحدونه اضافه کړو چې موږ یې د اتومات کولو لپاره اړتیا لرو:

systemctl enable drbd o2cb ocfs2
systemctl start drbd o2cb ocfs2

د دې څخه ځینې به دمخه د تنظیم کولو پروسې په جریان کې روان وي.

5 ګام. په دواړو نوډونو کې fstab ته د ماونټ پوائنټونه اضافه کړئ:

/dev/drbd0 /media/shared ocfs2 defaults,noauto,heartbeat=local 0 0

لارښود /میډیا/شریک دا باید مخکې جوړ شي.

دلته موږ د نوټو اختیارونه کاروو، دا پدې مانا ده چې فایل به په پیل کې نصب نشي (زه د سیسټمډ له لارې د شبکې فایلونو نصبولو ته ترجیح ورکوم) او heartbeat=local، پدې معنی چې په هر نوډ کې د زړه ټکان خدمت کارول. د نړۍ د زړه ضربان هم شتون لري، کوم چې د لویو کلسترونو لپاره ډیر مناسب دی.

بیا تاسو کولی شئ نصب کړئ /میډیا/شریک او د منځپانګې همغږي چک کړئ.

بشپړ شوی د پایلې په توګه، موږ د توزیع او ښه فعالیت سره ډیر یا لږ د غلطۍ زغم ذخیره ترلاسه کوو.

سرچینه: www.habr.com

Add a comment