خانه > بسترهای پردازش توزیع شده > راه اندازی و نصب کسندرا بر روی چند سرور و ایجاد خوشه پردازشی

راه اندازی و نصب کسندرا بر روی چند سرور و ایجاد خوشه پردازشی

در پست های قبلی به نصب و راه اندازی پایگاه داده غیر رابطه ای کاساندرا از روی فایل تربال پرداختیم که به صورت خلاصه در زیر اشاره شده است در ادامه  به راه اندازی و نصب کسندرا بر روی چند سرور در حالت خوشه پردازشی، خواهیم پرداخت. (چند روز پیش یک جستجوی مختصر بر روی گوگل کردم و دیدم سایت های زیادی این مطلب را کپی برداری کرده اند. البته از یک طرف جای خوشحالی هست که مطلبی که می نویسم خواننده های بیشتری آن را مطالعه کنند)

قبل از شروع به عنوان پیش نیاز باید بدانیم که کامپوننت های اصلی در کاساندرا از قرار شکل زیر است. و سه مولفه Replicator و Partitioner و Failure Detector در حوزه راه اندازی کاساندرا ر روی چند سرور و ایجاد خوشه پردازشی نقش اصلی را دارند. البته در پست های قبل پروتکل گوسیپ که نقش اصلی در این فرایند را دارد را بررسی کریم.

اجزای اصلی در کاساندرا
کامپوننت های اصلی در کاساندرا

کسندرا را می­توان به آسانی مانند بسیاری از بسته­ های نرم­ افزاری متن باز در سیستم­ عامل لینوکس، به­ صورت دستی نصب کرد (که قبلا در اینجا توضیح داده ام). بدین صورت که ابتدا نسخه باینری (بیلد شده) و فشرده کسندرا از پایگاه وب آپاچی دانلود میکنیم و سپس فایل tarball دانلود شده را از حالت فشرده خارج نموده و بعد دایرکتوری ریشه کسندرا را به متغیر محیطی شل لینوکس اضافه میکنیم. در نهایت هم با اجرای اسکریپت bin/cassandra –f، کسندرا در پیش زمینه اجرا می­شود.

راه اندازی و نصب کسندرا بر روی چند سرور در حالت خوشه پردازشی

در این بخش، نحوه ساخت کلاستر پردازشی با مجموعه سه نود ­از کسندرا توضیح داده می­شود.

گام اول- نصب کسندرا

فرض میکنیم جاوا و کسندرا (دقیقا مانند حالت تک گره­ ای) در گره ­های مورد نظر با آدرس ­های IP ذیل وجود دارند:

10.10.10.111

10.10.10.112

10.10.10.113

گام دوم- پیکربندی cassandra.yml

در این مرحله،  فایل cassandra.yml که مسیر آن در زیر آمده است را در تمامی سرورهای کسندرا در تمام گره ­ها به صورت ذیل پیکربندی می­شود:

پیکربندی در گره 10.10.10.111:

پیکربندی در گره 10.10.10.112:

پیکربندی در گره 10.10.10.113:

 

نصب کسندرا بر روی چند سرور
نصب کسندرا بر روی چند سرور

مشخصه seeds در فایل cassandra.yml بیان می­کند که گره مورد نظر، برای اطلاع از توپولوژی کل خوشه و همچنین اعلام وضعیت خود، به چه گره(ها)ای باید ارتباط برقرار کند. برای مثال اگر گره های چهارم یا پنجمی نیز پس از راه­ اندازی این خوشه، چند روز بعد به خوشه اضافه شوند، گره جدید با گره­ های دانه ارتباط برقرار کرده و اعلام حضور می­کند و متعاقبا، گره ­های جاری دیگر نیز از حضور گره جدید باخبر می­شوند (با کمک گره ­های دانه). همچنین، به منظور افزایش تحمل­ پذیری خطا در خوشه، توصیه می­شود که چند گره، به عنوان گره دانه انتخاب شود.

مقدار IP مشخصه listen_address، در واقع آدرسی است که گره های دیگر در خوشه توسط آن به این گره (گره ­ای که درحال پیکربندی و تنظیم مشخصه listen_address در آن هستیم)، می­توانند متصل شوند. در حالت نصب خوشه کسندرا، این مقدار حتما باید برابر با آدرس رابط اترنت (IP) میزبان باشد (باید توجه کرد که این مقدار نباید برابر با localhost باشد).

مقدار IP مشخصه rpc_address، آدرس IP جهت فراخوانی رویه ­های راه دور [1] در میزبان مورد نظر که گره میزبان به آن گوش می­کند است. این مقدار می­تواند برابر با آدرس loopback یا 0.0.0.0 یا 127.0.0.1 باشد.

گام سوم) اجرا

در این مرحله، ابتدا باید نمونه ­های کسندرا در گره­ های دانه [2] (10.10.10.111, 10.10.10.112) را و پس از چند ثانیه، گره­ های دیگر را مانند حالت تگ گره­ای (cassandra –f) اجرا کرد.

گام چهارم) بررسی وضعیت

در این مرحله نیز مانند حالت تک گره­ ای، با اجرای دستور nodetool status در هر گره­ ای، می­توان وضعیت کل خوشه را مشاهده کرد:

یکی از مواردی که دوستان زیادی با من تماس می گیرند و مطرح می کنند در راه اندازی خوشه پردازشی کاساندرا با شکست مواجه می شوند. به علت داده های قبل از راه اندازی خوشه است که با دستور زیر برطرف می شود.

 

[1] Remote procedure call

[2] seed nodes

آدرس کانال تلگرام سایت بیگ دیتا:

t.me/bigdata_channel

آدرس کانال سروش ما:
https://sapp.ir/bigdata_channel

جهت دیدن سرفصل های دوره های آموزشی بر روی اینجا کلیک کنید.

 

پاسخی بگذارید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *