Rocky Linux 9/8 に Apache Cassandra をインストールする方法

Apache Cassandra は、多くのコモディティ サーバー間で大量のデータを処理するように設計された、拡張性に優れた高性能の分散データベースで、単一障害点のない高可用性を実現します。複数のデータ センターにまたがるクラスターを強力にサポートし、非同期のマスターレス レプリケーションにより低レイテンシと操作のシンプルさを実現していることで知られています。Cassandra は、高い書き込みスループット、フォールト トレランス、線形スケーラビリティを必要とするアプリケーションに最適です。

次のガイドでは、コマンドライン コマンドを使用して Rocky Linux 9 または 8 に Apache Cassandra をインストールする手順を説明します。このプロセスでは、適切なリポジトリを設定し、分散データベース環境の最適なパフォーマンスと信頼性を確保するためにシステムを構成する必要があります。

Apache Cassandra をインストールする前に Rocky Linux システムを更新する

まず、Apache Cassandra をインストールする前に、NoSQL データベースのインストール時に潜在的な問題を回避するために、すべてのシステム パッケージが最新であることを確認することをお勧めします。

ターミナルで次のコマンドを実行し、未処理のパッケージをアップグレードします。

sudo dnf upgrade --refresh

Apache Cassandra リポジトリをインポートする

最初のステップは、Apache Cassandra のリポジトリをインポートすることです。幸い、これは 1 つのコマンドで実行できます。チュートリアルでは、5.0、4.0、または 4.1 ブランチをインポートする方法を説明します。3.xx ブランチは終了に近づいているため、チュートリアルにはこれらを追加する手順は含まれません。

4.0 Apache Cassandra RPM インポート

sudo tee /etc/yum.repos.d/cassandra-4.0.repo<<EOF
[cassandra]
name=Apache Cassandra 4.0
baseurl=https://redhat.cassandra.apache.org/41x/
gpgcheck=1
repo_gpgcheck=1
gpgkey=https://downloads.apache.org/cassandra/KEYS
EOF

4.1 Apache Cassandra RPM インポート

sudo tee /etc/yum.repos.d/cassandra-4.1.repo<<EOF
[cassandra]
name=Apache Cassandra 4.1
baseurl=https://redhat.cassandra.apache.org/41x/
gpgcheck=1
repo_gpgcheck=1
gpgkey=https://downloads.apache.org/cassandra/KEYS
EOF

5.0 Apache Cassandra RPM インポート

sudo tee /etc/yum.repos.d/cassandra-5.0.alpha.repo<<EOF
[cassandra]
name=Apache Cassandra 5.0
baseurl=https://redhat.cassandra.apache.org/50x/
gpgcheck=1
repo_gpgcheck=1
gpgkey=https://downloads.apache.org/cassandra/KEYS
EOF

DNF コマンドで Apache Cassandra をインストールする

次のコマンドで Cassandra をインストールできます。リポジトリがインポートされました。

sudo dnf install cassandra -y

次のコマンドを実行して、インストールされているバージョンを確認します。

cassandra -v

GPG キーのインポート時に次のエラーが表示される場合は注意してください。

Key import failed (code 2). Failing package is: cassandra-4.1~alpha1-1.noarch
 GPG Keys are configured as: https://www.apache.org/dist/cassandra/KEYS
The downloaded packages were saved in cache until the next successful transaction.
You can remove cached packages by executing 'dnf clean packages'.

暗号化ポリシーを変更し、ポリシーを LEGACY に設定します。

sudo update-crypto-policies --set LEGACY

場合によっては、この変更を正常に行うために再起動が必要になることがあります。再起動は必要ないことがわかりましたが、お勧めします。

reboot

Apache Cassandra Systemd サービスを作成する

インストールが完了したら、systemd サービスを作成する必要があります。これも簡単な作業です。次のコマンドをコピーして貼り付け、ファイルを作成します。

sudo tee /etc/systemd/system/cassandra.service<<EOF
[Unit]
Description=Apache Cassandra
After=network.target

[Service]
Type=simple
PIDFile=/var/run/cassandra/cassandra.pid
User=cassandra
Group=cassandra

ExecStart=/usr/sbin/cassandra -f -p /var/run/cassandra/cassandra.pid
Restart=always

[Install]
WantedBy=multi-user.target
EOF

Cassandra サービスの使用を開始するにはデーモンをリロードする必要があり、この手順をスキップすることはできません。

sudo systemctl daemon-reload

次に、Cassandra サービスを開始します。

sudo systemctl start cassandra

次に、Cassandra の systemctl ステータスをチェックして、エラーがないことを確認します。

systemctl status cassandra

オプションで、次のコマンドを使用して、コンピューターまたはサーバーの起動時に Cassandra サービスを自動的に起動するように設定できます。

sudo systemctl enable cassandra

Rocky Linux に Apache Cassandra クライアント (cqlsh) をインストールする

Pythonをインストールする

Cassandraクライアントをインストールする前に、システムでPythonが利用可能であることを確認してください。Apache Cassandraのクライアントは、 cqlshは Python ベースなので、Python が前提条件となります。次のコマンドを実行して、Rocky Linux に Python をインストールします。

sudo dnf install python3 -y

PIPをインストールする

次に、Python パッケージを管理するための Python パッケージ マネージャーである PIP をインストールします。PIP は Cassandra Python ドライバーのインストールに不可欠です。システムに PIP がまだインストールされていない場合は、次のコマンドを実行して追加します。

sudo dnf install python3-pip -y

Cassandra Python ドライバーをインストールする

Cassandra Pythonドライバは、 cqlsh Cassandra データベースに接続します。このドライバーにより、クライアントとデータベース間の通信が可能になります。次のコマンドで PIP を使用してドライバーをインストールします。

pip install cassandra-driver

cqlshのインストール

前提条件が整ったら、インストールの準備が整いました。 cqlshこのコマンドラインインターフェースを使用すると、Apache Cassandraとの対話が可能になり、クエリの実行やデータベースの管理が可能になります。インストール cqlsh 次を実行します:

pip install cqlsh

最後に、次のコマンドを使用して cqlsh に接続します。

cqlsh

接続が成功した場合の出力例:

[cqlsh 6.1.0 | Cassandra 4.1-alpha1 | CQL spec 3.4.5 | Native protocol v5]
Use HELP for help.
cqlsh> 

Apache Cassandra を構成する

Cassandra をセットアップしてカスタマイズするには、構成ファイルの変更と特定のコマンド ライン ユーティリティの使用が必要です。

基本設定のセットアップ

Cassandraの主な設定ファイルは、 /etc/cassandra一方、ログとデータディレクトリは通常、 /var/log/cassandra そして /var/lib/cassandra それぞれ。

ヒープサイズなどのJVMレベルでの調整については、 /etc/cassandra/conf/cassandra-env.sh ファイル。このファイル内で、追加のJVMコマンドライン引数を追加できます。 JVM_OPTS Cassandra が起動時に読み取る変数。

Apache Cassandra でユーザー認証を有効にする

ユーザー認証を有効にする前に、 /etc/cassandra/conf/cassandra.yaml ファイル:

sudo cp /etc/cassandra/conf/cassandra.yaml /etc/cassandra/conf/cassandra.yaml.backup

次に、 cassandra.yaml ファイル:

sudo nano /etc/cassandra/conf/cassandra.yaml

ファイル内で、次のパラメータを検索して変更する必要があります。

authenticator: org.apache.cassandra.auth.PasswordAuthenticator
authorizer: org.apache.cassandra.auth.CassandraAuthorizer
roles_validity_in_ms: 0
permissions_validity_in_ms: 0

必要に応じて他の設定を調整し、コメントアウトされている場合は必ずコメントを解除してください。ファイルを保存して編集プロセスを完了します。

その後、Cassandra を再起動して変更を適用します。

sudo systemctl restart cassandra

Apache Cassandra の管理スーパーユーザーの追加

認証が有効になったので、ユーザーを構成することが重要です。Cassandra コマンド シェル ユーティリティを使用して、デフォルトのユーザー資格情報でログインします。

cqlsh -u cassandra -p cassandra

置き換えて新しいスーパーユーザーを開始する [username] そして [yourpassword] 詳細を記入してください:

CREATE ROLE [username] WITH PASSWORD = '[yourpassword]' AND SUPERUSER = true AND LOGIN = true;

その後、終了し、新しいスーパーユーザーの詳細で再度ログインします。

cqlsh -u username -p yourpassword

デフォルトの Cassandra アカウントの昇格された権限を減らします。

ALTER ROLE cassandra WITH PASSWORD = 'cassandra' AND SUPERUSER = false AND LOGIN = false;
REVOKE ALL PERMISSIONS ON ALL KEYSPACES FROM cassandra;

そして、スーパーユーザーに完全な権限を付与します。

GRANT ALL PERMISSIONS ON ALL KEYSPACES TO '[username]';

ログアウトしてこのセクションを終了します。

コンソール構成のカスタマイズ

Cassandra Shellはニーズに合わせてカスタマイズできます。 cqlshrc ファイルが見つかりました ~/.cassandra ディレクトリ。設定可能な内容を示すサンプルファイルは、 /etc/cassandra/conf/cqlshrc.sample.

まず、このサンプル ファイルをコピーします。

sudo cp /etc/cassandra/conf/cqlshrc.sample ~/.cassandra/cqlshrc

調整する cqlshrc ファイルの権限:

sudo chmod 600 ~/.cassandra/cqlshrc
sudo chown $USER:$USER ~/.cassandra/cqlshrc

編集用に開きます:

nano ~/.cassandra/cqlshrc

スーパーユーザーの資格情報を使用してログインを自動化するには、次のセクションを見つけて編集します。

[authentication]
username = [superuser]
password = [password]

編集が完了したら必ず保存してください。これで、Cassandra シェルにログインすると、変更が反映されます。

cqlsh

クラスターの名前を変更する

システムを識別しやすくするために、クラスタの名前を変更したい場合があります。 cqlsh ターミナル:

cqlsh

交換する [new_name] 希望するクラスター名を入力します:

UPDATE system.local SET cluster_name = '[new_name]' WHERE KEY = 'local';

ターミナルを終了して開く /etc/cassandra/conf/cassandra.yaml さらに編集するには:

sudo nano /etc/cassandra/conf/cassandra.yaml

見つける cluster_name 変数を作成し、その値を選択した名前に置き換えます。変更を保存します。

最後に、Cassandra のシステム キャッシュをクリアします。

nodetool flush system

Cassandraを再起動します。

sudo systemctl restart cassandra

シェルにログインすると、選択したクラスター名が表示されます。

構成の変更を確認する

構成の変更を行った後は、必ず変更が有効になっていることを確認し、Cassandra クラスターの全体的な健全性をチェックすることをお勧めします。

クラスター名の検証: ログインし直したら、名前変更のプロセスを投稿してください。 cqlsh シェル:

cqlsh

プロンプトに新しく設定されたクラスター名が表示されます。

結論

このガイドでは、Apache Cassandra を Rocky Linux にインストールする手順について、バージョン 9 と 8 の両方を取り上げながら説明しました。これらの手順は、ビッグ データのニーズに対応する堅牢でスケーラブルなデータベース ソリューションを提供します。定期的に更新をチェックして、Cassandra のパフォーマンスとセキュリティを維持してください。Cassandra を実際に使用して、その機能を完全に習得してください。実際に使用して実験し、データ管理をどのように変革できるかを確認してください。

Joshua James

コメントを残す