
آموزش نصب Cassandra و راه اندازی کلاستر با یک سرور در Ubuntu 14.04
How To Install Cassandra and Run a Single-Node Cluster on Ubuntu 14.04
معرفی
Cassandra یا Apache Cassandra یک پایگاه داده متن باز بر اساس سیستم NoSQL می باشد که بسیار مقیاس پذیر و قابل انعطاف می باشد و کارایی بسیار بالایی در کلاسترینگ با چندین سرور را دارد. در این آموزش خواهید آموخت که چطور این پایگاه داده را به صورت تک گره Node را بر روی سرور Ubuntu 14.04 نصب و استفاده کنید.
پیش نیاز ها
در این آموزش به موارد زیر نیاز دارید :
- یک سرور Ubuntu 14.04
- دسترسی یک کاربر non-root با مجوز sudo برای اجرای دستورات
مرحله اول – نصب Oracle Java Virtual Machine
برای اجرای Cassandra نیاز است که Oracle Java SE Runtime Environment (JRE) روی سرور نصب باشد. پس در این مرحله JRE را نصب می کنیم و بررسی می کنیم که به صورت پیش فرض فعال باشد.
برای فعال کردن بسته های Oracle JRE باید با استفاده از دستور زیر Personal Package Archives (PPA) را به سیستم اضافه کنید :
1 |
$ sudo add-apt-repository ppa:webupd8team/java |
سپس دیتابیس بسته ها را به روز رسانی می کنیم :
1 |
$ sudo apt-get update |
سپس Oracle JRE را نصب می کنیم. همراه با نصب بسته ، برنامه JRE به صورت پیش فرض سیستم قرار می گیرد. در ادامه نصب باید مجوز را تایید کنید :
1 |
$ sudo apt-get install oracle-java8-set-default |
بعد از نصب با دستور زیر ، بررسی می کنیم که نصب با موفقیت انجام شده یا خیر :
1 |
$ java -version |
باید خروجی مشابه زیر را مشاهده کنید :پ
1 2 3 4 5 |
java version "1.8.0_60" Java(TM) SE Runtime Environment (build 1.8.0_60-b27) Java HotSpot(TM) 64-Bit Server VM (build 25.60-b23, mixed mode) |
مرحله دوم – نصب Cassandra
در ادامه برنامه Cassandra را از منابع رسمی نرم افزار های Apache نصب می کنیم ، و برای این کار باید منابع مورد نیاز را به منابع موجود سیستم اضافه کنیم. در زمان تهیه این آموزش آخرین نسخه Cassandra ، شماره ۲٫۲٫۲ می باشد اگر هنگام نصب نسخه جدیدتری ارائه شده ، شماره نسخه را به صورت ۲۲x جایگزین کنید. مثلا اگر نسخه ۲٫۳ را می خواهید نصب کنید مقدار ۲۳x را قرار دهید.
1 |
$ echo "deb http://www.apache.org/dist/cassandra/debian 22x main" | sudo tee -a /etc/apt/sources.list.d/cassandra.sources.list |
آدرس منبع را اضافه می کنیم :
1 |
$ echo "deb-src http://www.apache.org/dist/cassandra/debian 22x main" | sudo tee -a /etc/apt/sources.list.d/cassandra.sources.list |
برای رفع مشکل خطای تایید بسته ها هنگام نصب ، باید این سه کلید را از Apache Software Foundation که مربوط به مخازن بسته ها است را اضافه کنید.
کلید ها را یکی یکی به صورت جداگانه نصب کنید و برای نصب هر کدام از دو دستور داده شده استفاده کنید :
1 2 3 |
$ gpg --keyserver pgp.mit.edu --recv-keys F758CE318D77295D $ gpg --export --armor F758CE318D77295D | sudo apt-key add - |
دومین کلید :
1 2 3 |
$ gpg --keyserver pgp.mit.edu --recv-keys 2B5C1B00 $ gpg --export --armor 2B5C1B00 | sudo apt-key add - |
سومین کلید :
1 2 3 |
$ gpg --keyserver pgp.mit.edu --recv-keys 0353B12C $ gpg --export --armor 0353B12C | sudo apt-key add - |
دیتابیس بسته را یک بار دیگر به روز رسانی کنید :
1 |
$ sudo apt-get update |
در انتها Cassandra را نصب کنید :
1 |
$ sudo apt-get install cassandra |
مرحله سوم – عیب یابی و اجرای Cassandra
به طور معمول بعد از نصب Cassandra به صورت خودکار اجرا می شود ، ولی اگر به دلیل بروز مشکلی برنامه اجرا نشد ، برای بررسی وضعیت برنامه دستور زیر را وارد کنید :
1 |
$ sudo service cassandra status |
اگر برنامه اجرا نشده باشد ، خروجی زیر نمایش داده می شود :
1 |
* could not access pidfile for Cassandra |
این یک مشکل شناخته شده و قابل رفع برای آخرین نسخه Cassandra در سیستم عامل Ubuntu می باشد. برای رفع مشکل ابتدا اسکریپت init مربوط به Cassandra را ویرایش می کنیم. مقداری که باید تغییر دهیم در خط شماره ۶۰ قرار دارد. ابتدا فایل را با یک ویرایشگر متنی باز می کنیم :
1 |
$ sudo nano +60 /etc/init.d/cassandra |
این خط را پیدا کنید :
1 |
CMD_PATT="cassandra.+CassandraDaemon" |
و به این صورت تغییر دهید :
1 |
CMD_PATT="cassandra" |
فایل را ذخیره کنید و خارج شوید ، سپس سرور را ریبوت کنید :
1 |
$ sudo reboot |
یا
1 |
$ sudo shutdown -r now |
بعد از راه اندازی مجدد سرور ، سرویس Cassandra باید اجرا شده باشد ، برای بررسی این موضوع دستور زیر را وارد کنید :
1 |
$ sudo service cassandra status |
خروجی باید به صورت زیر باشد :
1 |
* Cassandra is running |
مرحله چهارم – اتصال به کلاستر
اگر توانستید با موفقیت Cassandra را اجرا کنید ، برای بررسی وضعیت کلاستر دستور زیر را وارد کنید :
1 |
$ sudo nodetool status |
در خروجی کلمه UN به این معنی است که سرویس بالا Up و در حالا عادی Normal است :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
Datacenter: datacenter1 ======================= Status=Up/Down |/ State=Normal/Leaving/Joining/Moving -- Address Load Tokens Owns Host ID Rack UN 127.0.0.1 142.02 KB 256 ? 2053956d-7461-41e6-8dd2-0af59436f736 rack1 Note: Non-system keyspaces don't have the same replication settings, effective ownership information is meaningless |
سپس با استفاده از خط فرمان مختص به cassandra به عنوان یک رابط استفاده کنید و به آن متصل شوید :
1 |
$ cqlsh |
خواهید دید که اتصال برقرار است :
1 2 3 4 5 6 7 |
Connected to Test Cluster at 127.0.0.1:9042. [cqlsh 5.0.1 | Cassandra 2.2.2 | CQL spec 3.3.1 | Native protocol v4] Use HELP for help. cqlsh> |
برای خروج دستور exit را وارد کنید :
1 |
sqlsh> exit |
پایان
تبریک میگم ، شما توانستید کلاستر Cassandra را با یک گره Node بر روی سرور Ubuntu 14.04 راه اندازی کنید. اطلاعات بیشتر در مورد Cassandra در وب سایت این پروژه موجود است.