Apache Cassandraは、単一障害点のない無料のオープンソースNoSQLデータベースです。パフォーマンスを損なうことなく、線形のスケーラビリティと高可用性を提供します。 Apache Cassandraは、Reddit、NetFlix、Instagram、Githubなど、大規模でアクティブなデータセットを持つ多くの企業で使用されています。
この記事では、ApacheCassandraをDebian10、Busterにインストールする方法を説明します。
前提条件#
手順は、rootまたはsudo権限を持つユーザーとしてログインしていることを前提としています。
Javaのインストール#
この記事を書いている時点で、ApacheCassandraの最新の安定バージョンは3.11
です。 公式のDebianBusterリポジトリでは利用できないOpenJDK8が必要です。
AdoptOpenJDKrepositoryを有効にして、ビルド済みのOpenJDK8パッケージをインストールします。
パッケージリストを更新し、HTTPS経由で新しいリポジトリを追加するために必要な依存関係をインストールします:
sudo apt update
sudo apt install apt-transport-https ca-certificates wget dirmngr gnupg software-properties-common
リポジトリのGPGキーをインポートし、AdoptOpenJDKAPTリポジトリをシステムに追加します。
wget -qO - https://adoptopenjdk.jfrog.io/adoptopenjdk/api/gpg/key/public | sudo apt-key add -
sudo add-apt-repository --yes https://adoptopenjdk.jfrog.io/adoptopenjdk/deb/
次のコマンドを実行してJava8をインストールします。
sudo apt update
sudo apt install adoptopenjdk-8-hotspot
完了したら、Javaバージョンを印刷して確認します。
java -version
出力は次のようになります。
openjdk version "1.8.0_232"
OpenJDK Runtime Environment (AdoptOpenJDK)(build 1.8.0_232-b09)
OpenJDK 64-Bit Server VM (AdoptOpenJDK)(build 25.232-b09, mixed mode)
Apache Cassandraのインストール#
ベンダーリポジトリのdebパッケージを使用してApacheCassandraをインストールします。そのためには、ApacheCassandraリポジトリを有効にする必要があります。
次のwget
を使用して、リポジトリの公開鍵をインポートします コマンド:
wget -q -O - https://www.apache.org/dist/cassandra/KEYS | sudo apt-key add -
上記のコマンドはOK
を出力するはずです 。これは、キーが正常にインポートされ、このリポジトリからのパッケージが信頼できると見なされることを意味します。
以下のコマンドを実行して、Cassandraリポジトリをシステムソースのリストに追加します。
sudo sh -c 'echo "deb https://www.apache.org/dist/cassandra/debian 311x main" > /etc/apt/sources.list.d/cassandra.list'
パッケージのインデックスを更新し、Apache Cassandraパッケージをインストールします:
sudo apt update
sudo apt install cassandra
インストールプロセスが完了すると、Cassandraサービスが自動的に開始されます。 Cassandraが実行されていることを確認するには、次のように入力します。
nodetool status
以下のようなものが表示されます:
Datacenter: datacenter1
=======================
Status=Up/Down
|/ State=Normal/Leaving/Joining/Moving
-- Address Load Tokens Owns (effective) Host ID Rack
UN 127.0.0.1 103.71 KiB 256 100.0% dd8f6709-08ef-45b8-881e-5c1b5bbfc7f7 rack1
それでおしまい。 ApacheCassandraが正常にインストールされました。
Apache Cassandraの構成#
ApacheCassandraデータは/var/lib/cassandra
に保存されます ディレクトリ。構成ファイルは/etc/cassandra
にあります 、およびJava起動オプションは、/etc/default/cassandra
で構成できます。 ファイル。
デフォルトでは、Cassandraはローカルホストでのみリッスンします。データベースに接続しているクライアントも同じマシンで実行されている場合は、バインディングインターフェイスを変更する必要はありません。
コマンドラインを介してCassandraと対話するには、cqlsh
を使用します カサンドラパッケージに同梱されているツール。
cqlsh
Connected to Test Cluster at 127.0.0.1:9042.
[cqlsh 5.0.1 | Cassandra 3.11.5 | CQL spec 3.4.4 | Native protocol v4]
Use HELP for help.
cqlsh>
Apache Cassandraクラスターの名前を変更する#
デフォルトでは、Cassandraクラスターの名前は「TestCluster」です。変更する場合は、以下の手順に従ってください。
-
cqlsh
を使用してCassandraCQLターミナルにログインします :cqlsh
-
次のコマンドを発行して、クラスター名を「LinuxizeCluster」に変更します。
UPDATE system.local SET cluster_name = 'Linuxize Cluster' WHERE KEY = 'local';
「LinuxizeCluster」を希望の名前に変更します。完了したら、
exit
と入力します ターミナルを終了します。 -
cassandra.yaml
を編集します 構成ファイルを作成し、新しいクラスター名を入力します:cluster_name: 'Linuxize Cluster'
-
システムキャッシュをクリアします:
nodetool flush system
-
次のコマンドを実行して、Cassandraサービスを再起動します。
sudo systemctl restart cassandra