Apache Cassandraは、無料のオープンソースの分散データベース管理システムです。多くのサーバー間で大量のデータを処理でき、単一障害点のない高可用性を提供します。 Github、NetFlix、Reddit、Instagramなど多くの企業で使用されています。 Cassandraはピアツーピアアーキテクチャで動作し、各ノードは他のすべてのノードに接続されます。各Cassandraノードはすべてのデータベース操作を実行し、マスターノードを必要とせずにクライアントリクエストを処理できます。
この投稿では、Debian11にApacheCassandraデータベース管理システムをインストールする方法を紹介します。
- Debian11を実行しているサーバー。
- ルートパスワードはサーバーで構成されています。
Javaのインストール
開始する前に、サーバーにJavaをインストールする必要があります。次のコマンドを実行してインストールできます:
apt-get install openjdk-11-jre -y
Javaをインストールした後、次のコマンドを使用してJavaのインストールを確認します。
java -version
次の出力が得られるはずです:
openjdk version "11.0.12" 2021-07-20 OpenJDK Runtime Environment (build 11.0.12+7-post-Debian-2) OpenJDK 64-Bit Server VM (build 11.0.12+7-post-Debian-2, mixed mode, sharing)
デフォルトでは、CassandraパッケージはDebian11デフォルトリポジトリに含まれていません。そのため、CassandraリポジトリをAPTに追加する必要があります。
まず、次のコマンドを使用して必要な依存関係をインストールします。
apt-get install curl gnupg2 -y
次に、次のコマンドを使用して、CassandraGPGキーとリポジトリを追加します。
curl https://downloads.apache.org/cassandra/KEYS | apt-key add -
echo "deb https://downloads.apache.org/cassandra/debian 40x main" | tee -a /etc/apt/sources.list.d/cassandra.list
リポジトリが追加されたら、リポジトリを更新し、次のコマンドを使用してCassandraパッケージをインストールします。
apt-get update -y
apt-get install cassandra -y
Cassandraをインストールしたら、次のコマンドを使用してCassandraのステータスを確認できます。
systemctl status cassandra
次の出力が得られるはずです:
? cassandra.service - LSB: distributed storage system for structured data Loaded: loaded (/etc/init.d/cassandra; generated) Active: active (running) since Sat 2021-09-25 17:23:08 UTC; 23s ago Docs: man:systemd-sysv-generator(8) Process: 24537 ExecStart=/etc/init.d/cassandra start (code=exited, status=0/SUCCESS) Tasks: 53 (limit: 9510) Memory: 2.2G CPU: 23.439s CGroup: /system.slice/cassandra.service ??24666 /usr/bin/java -ea -da:net.openhft... -XX:+UseThreadPriorities -XX:+HeapDumpOnOutOfMemoryError -Xss256k -XX:+AlwaysPreTouc> Sep 25 17:23:08 debian11 systemd[1]: Starting LSB: distributed storage system for structured data... Sep 25 17:23:08 debian11 systemd[1]: Started LSB: distributed storage system for structured data.
ApacheCassandraクラスターを確認する
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 69.09 KiB 16 100.0% 2813344d-5006-4360-a57e-61deeea9fe70 rack1
次に、次のコマンドを使用してCassandraクラスターに接続します。
cqlsh
次の出力が得られるはずです:
Connected to Test Cluster at 127.0.0.1:9042 [cqlsh 6.0.0 | Cassandra 4.0.1 | CQL spec 3.4.5 | Native protocol v5] Use HELP for help. cqlsh>にHELPを使用します
Cassandraクラスター名を変更する場合は、次のコマンドを実行します。
cqlsh> UPDATE system.local SET cluster_name = 'New Cluster' WHERE KEY = 'local';
次に、次のコマンドを使用してcqlshシェルを終了します。
cqlsh> exit
次に、Cassandraのメイン構成ファイルを編集します。
nano /etc/cassandra/cassandra.yaml
以下に示すように、Cassandraクラスター名を変更します。
cluster_name: 'New Cluster'
ファイルを保存して閉じてから、Cassandraサービスを再起動して変更を適用します。
systemctl restart cassandra
次に、次のコマンドを使用してクラスター名を確認します。
cqlsh
次の出力に新しいクラスター名が表示されます。
Connected to New Cluster at 127.0.0.1:9042 [cqlsh 6.0.0 | Cassandra 4.0.1 | CQL spec 3.4.5 | Native protocol v5] Use HELP for help.
おめでとう!これで、Debian11にApacheCassandraが正常にインストールされました。これで、要件に応じてApacheCassandraの使用を開始できます。