این مقاله فرآیند نصب پایگاه داده Cassandra NoSQL را برای نصب سرور TestRail در سرورهای یونیکس یا لینوکس که از TestRail نسخه ۷.۴ یا بالاتر استفاده میکنند، شرح میدهد.
پیش نیازها #
برای نصب پایگاه داده Cassandra، باید برخی از اجزای مورد نیاز را نصب کنید:
مراحل زیر نمونه ای از نصب اوبونتو ۲۰.۰۴ است:
۱. JDK ۸ را نصب کنید #
جاوا نسخه ۸ را با استفاده از دستور زیر نصب کنید:
$ apt-get install openjdk-8-jdk -y
#
اگر روی یک توزیع مبتنی بر RedHat نصب میکنید، بسته فراخوانی میشود java-1.8.0-openjdk
پس از اتمام نصب، نسخه نصب شده جاوا را با دستور زیر تأیید کنید:
$ java -version
JDK با موفقیت نصب می شود اگر نسخه java چیزی شبیه به زیر را خروجی دهد:
Openjdk version “1.8.0_312”
OpenJDK Runtime Environment (build 1.8.0_312-8u312-b07-0ubuntu1~20.04-b07)
OpenJDK 64-bit Server VM (build 25.312-b07, mixed mode)
۲. درایور C++ را نصب کنید #
درایور C++ برای پلتفرم های لینوکس TestRail مورد نیاز است زیرا درایور Cassandra بدون آن اجرا نمی شود.
توزیع اوبونتو #
بسته multiarch-support را دانلود کنید:
$ wget http://archive.ubuntu.com/ubuntu/pool/main/g/glibc/multiarch-support_2.27-3ubuntu1.6_amd64.deb
بسته را نصب کنید.
$ dpkg -i multiarch-support_2.27-3ubuntu1.2_amd64.deb
اکنون درایور C++ را دانلود کنید.
$ wget https://downloads.datastax.com/cpp-driver/ubuntu/18.04/cassandra/v2.16.0/cassandra-cpp-driver_2.16.0-1_amd64.deb
برای نصب این دستور را اجرا کنید.
$ dpkg -i cassandra-cpp-driver_2.16.0-1_amd64.deb
توزیع مبتنی بر RedHat #
بسته multiarch-support را دانلود کنید.
$ wget https://downloads.datastax.com/cpp-driver/centos/7/dependencies/libuv/v1.35.0/libuv-1.35.0-1.el7.x86_64.rpm
بسته را نصب کنید.
$ rpm -i libuv-1.35.0-1.el7.x86_64.rpm
اکنون درایور C++ را دانلود کنید.
$ wget https://downloads.datastax.com/cpp-driver/centos/7/cassandra/v2.16.0/cassandra-cpp-driver-2.16.0-1.el7.x86_64.rpm
برای نصب این دستور را اجرا کنید.
$ rpm -i cassandra-cpp-driver-2.16.0-1.el7.x86_64.rpm
۳. درایور Cassandra برای TestRail #
درایور لینوکس را از اینجا دانلود کنید.
می توانید آن را به صورت دستی دانلود کنید یا Git فایل را در دستگاه خود کلون کند.
$ git clone https://github.com/gurock/CassandraDrivers.git
به دایرکتوری درایورها که فایل در آن قرار دارد بروید.
$ cd Drivers.Cassandra/Linux/7.3
با وارد کردن دستور زیر، محل پوشه extension_dir را پیدا کنید.
$ php -i | grep ^extension_dir
فایل cassandra.so را در پوشه extension_dir کپی کنید.
$ cp cassandra.so /usr/lib64/php/modules/
پسوند داخل php.ini را با افزودن خط زیر به فایل فعال کنید.
extension=cassandra.so
با نوشتن دستور زیر می توانید تأیید کنید که افزونه موجود است.
$ php -m
اینجا یک است صفحه معمولی phpinfo که تمام پسوندهای مورد نیاز php از جمله cassandra را فهرست می کند.
آپاچی کاساندرا را نصب کنید #
مراحل زیر نمونه ای از نصب اوبونتو ۲۲.۰۴ است، اگر روی توزیع مبتنی بر RedHat نصب می کنید، موارد زیر را دنبال کنید. دستورالعمل ها در اسناد DataStax.
#
در حال حاضر، Cassandra ۳.۱۱ تنها نسخه Cassandra پشتیبانی شده برای نصب سرور است.
#
قبل از نصب، برخی از توزیع های لینوکس ممکن است دایرکتوری نداشته باشند /etc/apt/keyrings/ به طور پیش فرض بررسی کنید که آیا این دایرکتوری را دارید، اما اگر ندارید، آن را با دستور زیر ایجاد کنید: mkdir /etc/apt/keyrings/.
این باید مخزن را فعال کند و به شما اجازه می دهد Cassandra را نصب کنید.
وابستگی های مورد نیاز را با دستور زیر نصب کنید:
$ apt-get install apt-transport-https gnupg2 -y
با دستور زیر کلید GPG را دانلود و اضافه کنید:
$ curl -o /etc/apt/keyrings/apache-cassandra.asc https://downloads.apache.org/cassandra/KEYS
برای بررسی اینکه آیا دستور قبلی کار می کند یا خیر، از دستور بعدی استفاده کنید:
$ cat /etc/apt/keyrings/apache-cassandra.asc
منتظر بمانید باشه پاسخ، ممکن است چند ثانیه طول بکشد. سپس مخزن Cassandra را با دستور زیر به APT اضافه کنید:
$ sh -c 'echo "deb [signed-by=/etc/apt/keyrings/apache-cassandra.asc] https://debian.cassandra.apache.org 311x main" | sudo tee -a /etc/apt/sources.list.d/cassandra.sources.list'
کش مخزن را به روز کنید:
$ apt-get update -y
آپاچی کاساندرا را نصب کنید.
$ apt-get install cassandra -y
مطمئن شوید که یک cassandra-lucene-index-plugin-*.jar در فهرست راهنمای Cassandra Home lib خود نصب کرده اید. (معمولا مسیر /usr/share/cassandra/lib است). این فایل jar باید شماره نسخه نصب کاساندرا شما را داشته باشد.
اگر این کار را نکردید، می توانید فایل jar. را از مخزن رسمی maven دانلود کنید.
$ wget https://repo1.maven.org/maven2/com/stratio/cassandra/cassandra-lucene-index-plugin/3.11.3.0/cassandra-lucene-index-plugin-3.11.3.0.jar
فایل را در دایرکتوری Home lib کپی کنید.
$ cp cassandra-lucene-index-plugin-3.11.3.0.jar /usr/share/cassandra/lib
احراز هویت و مجوز را در Cassandra فعال کنید
- فایل پیکربندی Cassandra cassandra.yaml را باز کنید
- AllowAllAuthenticator را با PasswordAuthenticator و AllowAllAuthorizer را با CassandraAuthorizer جایگزین کنید
کاساندرا را مجددا راه اندازی کنید.
$ service cassandra restart
اکنون برای اولین بار آماده اتصال به کاساندرا هستید. نوع:
cqlsh <host> -u <user> -p <password>
شما باید خروجی زیر را دریافت کنید:
Connected to Test Cluster at 127.0.0.1:9042.
[cqlsh 5.0.1 | Cassandra 3.11.11 | CQL spec 3.4.4 | Native protocol v4]
Use HELP for help.
cqlsh>
برای نصب TestRail، لازم است یک فضای کلید Cassandra ایجاد کنید. یکی ایجاد کنید که کوئری CQL زیر را اجرا می کند:
CREATE KEYSPACE IF NOT EXISTS testrail WITH REPLICATION={'class': 'SimpleStrategy', 'replication_factor': 1};
این نصب Cassandra از «cassandra» به عنوان کاربر و «cassandra» به عنوان رمز عبور استفاده می کند. اگر میخواهید کاربر جدیدی ایجاد کنید، باید فایل cassandra.yaml را در ترمینال خود ویرایش کنید:
با ایجاد تغییراتی در دستورالعملهای احراز هویت و مجوز، فایل را ویرایش کنید. خط “authenticator: AllowAllAuthenticator” را نظر دهید و خط زیر را اضافه کنید، به این شکل به نظر می رسد:
#authenticator: AllowAllAuthenticator
authenticator: org.apache.cassandra.auth.PasswordAuthenticator
بعداً در مورد Autorizer خط نظر دهید: “AllowAllAuthorizer” و خط زیر را اضافه کنید تا شبیه به این شود:
#authorizer: AllowAllAuthorizer
authorizer: org.apache.cassandra.auth.CassandraAuthorizer
سپس، کاساندرا را مجددا راه اندازی کنید.
$ service cassandra restart
با استفاده از یوزر و رمز عبور پیش فرض به کاساندرا متصل شوید.
$ cqlsh -u cassandra -p cassandra
سپس، یک کاربر و رمز عبور Cassandra TestRail ایجاد کنید.
cassandra@cqlsh> create user 'username' with password 'password';
همه امتیازات را به کاربر TestRail اعطا کنید.
cassandra@cqlsh> GRANT ALL ON KEYSPACE testrail to 'testrail';
سپس می توانید از کاساندرا خارج شوید.

