در این مقاله به راه اندازی و نصب کسندرا بر روی چند سرور در حالت خوشه پردازشی، خواهیم پرداخت.
قبل از شروع به عنوان پیش نیاز باید بدانیم که کامپوننت های اصلی در کاساندرا از قرار شکل زیر است.
کسندرا را میتوان به آسانی مانند بسیاری از بسته های نرم افزاری متن باز در سیستم عامل لینوکس، به صورت دستی نصب کرد. بدین صورت که ابتدا نسخه باینری (بیلد شده) و فشرده کسندرا از پایگاه وب آپاچی دانلود میکنیم و سپس فایل tarball دانلود شده را از حالت فشرده خارج نموده و بعد دایرکتوری ریشه کسندرا را به متغیر محیطی شل لینوکس اضافه میکنیم. در نهایت هم با اجرای اسکریپت bin/cassandra –f، کسندرا در پیش زمینه اجرا میشود.
$ -> wget http://archive.apache.org/dist/cassandra/3.10/apache-cassandra-3.10-bin.tar.gz
$ -> tar –xvzf apache-cassandra-3.10-bin.tar.gz
$ -> export CASSANDRA_HOME=/YOUR ROOT CASSANDRA DIRECTORY
$ -> PATH=$PATH:$CASSANDRA_HOME/bin:
$ -> cassandra -f
راه اندازی و نصب کسندرا بر روی چند سرور در حالت خوشه پردازشی
در این بخش، نحوه ساخت کلاستر پردازشی با مجموعه سه نود از کسندرا توضیح داده میشود.
گام اول- نصب کسندرا
فرض میکنیم جاوا و کسندرا (دقیقا مانند حالت تک گره ای) در گره های مورد نظر با آدرس های IP ذیل وجود دارند:
۱۰٫۱۰٫۱۰٫۱۱۱
۱۰٫۱۰٫۱۰٫۱۱۲
۱۰٫۱۰٫۱۰٫۱۱۳
گام دوم- پیکربندی cassandra.yml
در این مرحله، فایل $CASSANDRA_HOME/conf/cassandra.yml در نمونه های کسندرا در تمام گرهها به صورت ذیل پیکربندی میشود:
در گره ۱۰٫۱۰٫۱۰٫۱۱۱:
cluster_name: ‘Cluster1’
seeds: “10.10.10.111, 10.10.10.112,10.10.10.113”
listen_address: 10.10.10.111
broadcast_address: 10.10.10.111
rpc_address: 0.0.0.0
broadcast_rpc_address: 10.10.10.111
در گره ۱۰٫۱۰٫۱۰٫۱۱۲:
cluster_name: ‘Cluster1’
seeds: “10.10.10.111, 10.10.10.112,10.10.10.113”
listen_address: 10.10.10.112
broadcast_address: 10.10.10.112
rpc_address: 0.0.0.0
broadcast_rpc_address: 10.10.10.112
در گره ۱۰٫۱۰٫۱۰٫۱۱۳:
cluster_name: ‘Cluster1’
seeds: “10.10.10.111, 10.10.10.112,10.10.10.113”
listen_address: 10.10.10.113
broadcast_address: 10.10.10.113
rpc_address: 0.0.0.0
broadcast_rpc_address: 10.10.10.113
مشخصه seeds در فایل cassandra.yml بیان میکند که گره مورد نظر، برای اطلاع از توپولوژی کل خوشه و همچنین اعلام وضعیت خود، به چه گره(ها)ای باید ارتباط برقرار کند. برای مثال اگر گره های چهارم یا پنجمی نیز پس از راه اندازی این خوشه، چند روز بعد به خوشه اضافه شوند، گره جدید با گره های دانه ارتباط برقرار کرده و اعلام حضور میکند و متعاقبا، گره های جاری دیگر نیز از حضور گره جدید باخبر میشوند (با کمک گره های دانه). همچنین، به منظور افزایش تحمل پذیری خطا در خوشه، توصیه میشود که چند گره، به عنوان گره دانه انتخاب شود.
مقدار IP مشخصه listen_address، در واقع آدرسی است که گره های دیگر در خوشه توسط آن به این گره (گره ای که درحال پیکربندی و تنظیم مشخصه listen_address در آن هستیم)، میتوانند متصل شوند. در حالت نصب خوشه کسندرا، این مقدار حتما باید برابر با آدرس رابط اترنت (IP) میزبان باشد (باید توجه کرد که این مقدار نباید برابر با localhost باشد).
مقدار IP مشخصه rpc_address، آدرس IP جهت فراخوانی رویه های راه دور [۱] در میزبان مورد نظر که گره میزبان به آن گوش میکند است. این مقدار میتواند برابر با آدرس loopback یا ۰٫۰٫۰٫۰ یا ۱۲۷٫۰٫۰٫۱ باشد.
گام سوم) اجرا
در این مرحله، ابتدا باید نمونه های کسندرا در گره های دانه [۲] (۱۰٫۱۰٫۱۰٫۱۱۱, ۱۰٫۱۰٫۱۰٫۱۱۲) را و پس از چند ثانیه، گره های دیگر را مانند حالت تگ گرهای (cassandra –f) اجرا کرد.
گام چهارم) بررسی وضعیت
در این مرحله نیز مانند حالت تک گره ای، با اجرای دستور nodetool status در هر گره ای، میتوان وضعیت کل خوشه را مشاهده کرد:
[۱] Remote procedure call
[۲] seed nodes
---------------------------------
منبع : خانه بیگ دیتای ایران