Cassandraのインストール
Apache Cassandraは、多くのLinuxディストリビューションにインストールできます
-
AlmaLinux
-
Amazon Linux Amazon Machine Images(AMI)
-
Debian
-
RedHat Enterprise Linux(RHEL)
-
SUSE Enterprise Linux
-
Ubuntu
これは、オペレーティングシステムプラットフォームの網羅的なリストではなく、規定でもありません。ただし、あまり一般的でないLinuxディストリビューションを使用する場合は、徹底的なテストを実施することをお勧めします。本番環境で古いディストリビューションの経験がない限り、古いLinuxバージョンへのデプロイはお勧めしません。
前提条件
-
次のいずれかの場所から、最新バージョンのJava 11またはJava 17をインストールします
-
インストールされているJavaのバージョンを確認します。例えば
$ java -version
openjdk version "11.0.20" 2023-07-18
OpenJDK Runtime Environment Temurin-11.0.20+8 (build 11.0.20+8)
OpenJDK 64-Bit Server VM Temurin-11.0.20+8 (build 11.0.20+8, mixed mode)
-
CQLシェル`cqlsh`を使用するには、最新バージョンのPython 3.8-3.11をインストールします。
正しいバージョンのPythonがインストールされていることを確認するには、`python --version`と入力します。
Python 2.7のサポートは廃止されました。 |
インストール方法の選択
Cassandraをインストールするには、次の3つの一般的な方法があります
-
Dockerイメージ
-
Tarballバイナリファイル
-
パッケージインストール(RPM、YUM)
Dockerユーザーの場合は、Dockerイメージのインストールは簡単です。Macの場合はDocker Desktop for Mac、Windowsの場合はDocker Desktop for Windowsをインストールするか、Linuxに`docker`をインストールする必要があります。Docker Hubから適切なイメージをプルし、`docker run`コマンドでCassandraを起動します。
多くのユーザーにとって、バイナリtarballのインストールも簡単な選択肢です。tarballは、すべてのコンテンツを単一の場所に解凍し、バイナリと設定ファイルは独自のサブディレクトリに配置されます。tarballインストールの最も明白な利点は、`root`権限が不要で、任意のLinuxディストリビューションにインストールできることです。
パッケージインストールには`root`権限が必要であり、本番環境のインストールに最適です。YUMを使用してCassandraをインストールする場合は、CentOSおよびRHELベースのディストリビューションにRPMビルドをインストールします。APTを使用してCassandraをインストールする場合は、Ubuntuおよびその他のDebianベースのディストリビューションにDebianビルドをインストールします。
YUMメソッドとAPTメソッドの両方で`root`権限が必要であり、バイナリと設定ファイルが`cassandra` OSユーザーとしてインストールされることに注意してください。 |
Dockerでインストール
-
Dockerイメージをプルします。最新のイメージの場合は、次を使用します
docker pull cassandra:latest
この`docker pull`コマンドは、Dockerhubから入手できる公式のDocker Apache Cassandraイメージの最新バージョンを取得します。
-
`docker run`コマンドでCassandraを起動します
docker run --name cass_cluster cassandra:latest
`--name`オプションは、作成されるCassandraクラスタの名前になります。この例では、`cass_cluster`という名前を使用しています。
-
CQLシェル`cqlsh`を起動して、作成されたCassandraノードと対話します
docker exec -it cass_cluster cqlsh
Tarballファイルをインストール
-
インストールされているJavaのバージョンを確認します。例えば
$ java -version
openjdk version "11.0.20" 2023-07-18
OpenJDK Runtime Environment Temurin-11.0.20+8 (build 11.0.20+8)
OpenJDK 64-Bit Server VM Temurin-11.0.20+8 (build 11.0.20+8, mixed mode)
-
Apache Cassandraダウンロードサイトのミラーのいずれかから、バイナリtarballをダウンロードします。たとえば、Cassandra 4.0をダウンロードするには
$ curl -OL http://apache.mirror.digitalpacific.com.au/cassandra/4.0.0/apache-cassandra-4.0.0-bin.tar.gz
ミラーは、サポートされている各メジャーリリースの最新バージョンのみをホストします。Cassandraの以前のバージョンをダウンロードするには、Apacheアーカイブにアクセスしてください。
-
オプション:こちらの方法のいずれかを使用して、ダウンロードしたtarballの整合性を検証します。たとえば、GPGを使用してダウンロードしたファイルのハッシュを検証するには
$ gpg --print-md SHA256 apache-cassandra-4.0.0-bin.tar.gz
apache-cassandra-4.0.0-bin.tar.gz: 28757DDE 589F7041 0F9A6A95 C39EE7E6 CDE63440 E2B06B91 AE6B2006 14FA364D
ダウンロードサイトのSHA256ファイルと署名を比較します
-
tarballを解凍します
$ tar xzvf apache-cassandra-4.0.0-bin.tar.gz
ファイルは`apache-cassandra-4.0.0/`ディレクトリに抽出されます。これは、tarballのインストール場所です。
-
tarballのインストール場所には、スクリプト、バイナリ、ユーティリティ、設定、データ、ログファイルのディレクトリがあります
<tarball_installation>/ bin/ (1) conf/ (2) data/ (3) doc/ interface/ javadoc/ lib/ logs/ (4) pylib/ tools/ (5)
1 cassandra、cqlsh、nodetool、およびSSTableツールを実行するためのコマンドの場所 2 cassandra.yamlおよびその他の設定ファイルの場所 3 コミットログ、ヒント、およびSSTableの場所 4 システムログとデバッグログの場所 <5> cassandra-stressツールの場所 -
Cassandraを起動します
$ cd apache-cassandra-4.0.0/ && bin/cassandra
これにより、認証されたLinuxユーザーとしてCassandraが実行されます。
-
を使用して起動の進行状況を監視します
$ tail -f logs/system.log
`system.log`に次のようなエントリが表示されたら、Cassandraの準備ができています
+
INFO [main] 2019-12-17 03:03:37,526 Server.java:156 - Starting listening for CQL clients on localhost/127.0.0.1:9042 (unencrypted)...
設定情報については、Cassandraの設定を参照してください。
-
Cassandraのステータスを確認します
$ bin/nodetool status
出力のステータスカラムには、 "稼働中/正常"を表す`UN`と表示されます。
または、を使用してデータベースに接続します
$ bin/cqlsh
Debianパッケージとしてインストール
-
インストールされているJavaのバージョンを確認します。例えば
$ java -version
openjdk version "11.0.20" 2023-07-18
OpenJDK Runtime Environment Temurin-11.0.20+8 (build 11.0.20+8)
OpenJDK 64-Bit Server VM Temurin-11.0.20+8 (build 11.0.20+8, mixed mode)
-
CassandraのApacheリポジトリを`cassandra.sources.list`ファイルに追加します。
最新のメジャーバージョンは{50_version}で、対応するディストリビューション名は`50x`(接尾辞として "x"が付く)です。古いリリースの場合は、次を使用します
-
C * {50_version}シリーズの場合は`50x`
-
C * {41_version}シリーズの場合は`41x`
-
C * 4.0シリーズの場合は`40x`
-
たとえば、バージョン{50_version}(`50x`)のリポジトリを追加するには
+
$ echo "deb [signed-by=/etc/apt/keyrings/apache-cassandra.asc] https://debian.cassandra.apache.org 50x main" | sudo tee -a /etc/apt/sources.list.d/cassandra.sources.list
deb https://debian.cassandra.apache.org 50x main
-
Apache Cassandraリポジトリキーをサーバーの信頼できるキーのリストに追加します
-
ソースからパッケージインデックスを更新します
$ sudo apt-get update
-
APTでCassandraをインストールします
$ sudo apt-get install cassandra
-
を使用して起動の進行状況を監視します
$ tail -f logs/system.log
`system.log`に次のようなエントリが表示されたら、Cassandraの準備ができています
+
INFO [main] 2019-12-17 03:03:37,526 Server.java:156 - Starting listening for CQL clients on localhost/127.0.0.1:9042 (unencrypted)...
設定情報については、Cassandraの設定を参照してください。
-
Cassandraのステータスを確認します
$ nodetool status
出力のステータスカラムには、 "稼働中/正常"を表す`UN`と表示されます。
または、を使用してデータベースに接続します
$ cqlsh
RPMパッケージとしてインストール
-
インストールされているJavaのバージョンを確認します。例えば
$ java -version
openjdk version "11.0.20" 2023-07-18
OpenJDK Runtime Environment Temurin-11.0.20+8 (build 11.0.20+8)
OpenJDK 64-Bit Server VM Temurin-11.0.20+8 (build 11.0.20+8, mixed mode)
-
CassandraのApacheリポジトリを`/etc/yum.repos.d/cassandra.repo`ファイルに追加します(`root`ユーザーとして)。
最新のメジャーバージョンは{50_version}で、対応するディストリビューション名は`50x`(接尾辞として "x"が付く)です。古いリリースの場合は、次を使用します
-
C * {50_version}シリーズの場合は`50x`
-
C * {41_version}シリーズの場合は`41x`
-
C * 4.0シリーズの場合は`40x`
-
たとえば、バージョン{50_version}(`50x`)のリポジトリを追加するには
+
[cassandra]
name=Apache Cassandra
baseurl=https://redhat.cassandra.apache.org/42x/
gpgcheck=1
repo_gpgcheck=1
gpgkey=https://downloads.apache.org/cassandra/KEYS
-
ソースからパッケージインデックスを更新します
$ sudo yum update
-
YUMでCassandraをインストールします
$ sudo yum install cassandra
インストールの一部として、新しいLinuxユーザー`cassandra`が作成されます。Cassandraサービスもこのユーザーとして実行されます。
-
Cassandraサービスを開始します
$ sudo service cassandra start
-
を使用して起動の進行状況を監視します
$ tail -f logs/system.log
`system.log`に次のようなエントリが表示されたら、Cassandraの準備ができています
+
INFO [main] 2019-12-17 03:03:37,526 Server.java:156 - Starting listening for CQL clients on localhost/127.0.0.1:9042 (unencrypted)...
設定情報については、Cassandraの設定を参照してください。
-
Cassandraのステータスを確認します
$ nodetool status
出力のステータスカラムには、 "稼働中/正常"を表す`UN`と表示されます。
または、を使用してデータベースに接続します
$ cqlsh
追加のインストール情報
インストールの問題については、トラブルシューティングセクションを参照してください。