Ubuntu14.04でCassandraをインストールしてシングルノードクラスターを実行する方法
序章
Cassandra、またはApache Cassandraは、高度にスケーラブルなオープンソースのNoSQLデータベースシステムであり、マルチノードセットアップで優れたパフォーマンスを実現します。
このチュートリアルでは、Ubuntu14.04でシングルノードクラスターをインストールして実行する方法を学習します。
前提条件
このチュートリアルを完了するには、次のものが必要です。
- Ubuntu14.04ドロップレット
- sudo権限を持つroot以外のユーザー( Ubuntu 14.04 を使用した初期サーバーセットアップでは、これをセットアップする方法について説明しています。)
ステップ1—OracleJava仮想マシンのインストール
Cassandraでは、Oracle Java SEランタイム環境(JRE)がインストールされている必要があります。 したがって、このステップでは、それがデフォルトのJREであることをインストールして確認します。
Oracle JREパッケージを使用可能にするには、次のコマンドを使用してパーソナルパッケージアーカイブ(PPA)を追加する必要があります。
- sudo add-apt-repository ppa:webupd8team/java
パッケージデータベースを更新します。
- sudo apt-get update
次に、OracleJREをインストールします。 この特定のパッケージをインストールすると、インストールされるだけでなく、デフォルトのJREになります。 プロンプトが表示されたら、ライセンス契約に同意します。
- sudo apt-get install oracle-java8-set-default
インストール後、デフォルトのJREになっていることを確認します。
- java -version
次のような出力が表示されます。
Outputjava version "1.8.0_60"
Java(TM) SE Runtime Environment (build 1.8.0_60-b27)
Java HotSpot(TM) 64-Bit Server VM (build 25.60-b23, mixed mode)
ステップ2—Cassandraをインストールする
公式のApacheSoftwareFoundationリポジトリからのパッケージを使用してCassandraをインストールするので、パッケージをシステムで使用できるようにリポジトリを追加することから始めます。 Cassandra 2.2.2は、この発行時点での最新バージョンであることに注意してください。 変更 22x
最新バージョンと一致します。 たとえば、 23x
Cassandra 2.3が最新バージョンの場合:
- echo "deb http://www.apache.org/dist/cassandra/debian 22x main" | sudo tee -a /etc/apt/sources.list.d/cassandra.sources.list
リポジトリのソースを追加します。
- echo "deb-src http://www.apache.org/dist/cassandra/debian 22x main" | sudo tee -a /etc/apt/sources.list.d/cassandra.sources.list
パッケージ更新中のパッケージ署名の警告を回避するには、パッケージリポジトリに関連付けられたApacheSoftwareFoundationから3つの公開キーを追加する必要があります。
このコマンドのペアを使用して最初のコマンドを追加します。これは次々に実行する必要があります。
- gpg --keyserver pgp.mit.edu --recv-keys F758CE318D77295D
- gpg --export --armor F758CE318D77295D | sudo apt-key add -
次に、2番目のキーを追加します。
- gpg --keyserver pgp.mit.edu --recv-keys 2B5C1B00
- gpg --export --armor 2B5C1B00 | sudo apt-key add -
次に、3番目を追加します。
- gpg --keyserver pgp.mit.edu --recv-keys 0353B12C
- gpg --export --armor 0353B12C | sudo apt-key add -
パッケージデータベースをもう一度更新します。
- sudo apt-get update
最後に、Cassandraをインストールします。
- sudo apt-get install cassandra
ステップ3—Cassandraのトラブルシューティングと起動
通常、Cassandraはこの時点で自動的に開始されているはずです。 ただし、バグがあるため、そうではありません。 実行されていないことを確認するには、次のように入力します。
- sudo service cassandra status
実行されていない場合は、次の出力が表示されます。
Output* could not access pidfile for Cassandra
これは、Ubuntu上のCassandraの最新バージョンでよく知られている問題です。 いくつかの修正を試みます。 まず、initスクリプトを編集することから始めます。 変更するパラメーターは、そのスクリプトの60行目にあるため、次のコマンドを使用して開きます。
- sudo nano +60 /etc/init.d/cassandra
その行は次のようになります。
/etc/init.d/cassandraCMD_PATT="cassandra.+CassandraDaemon"
次のように変更します。
/etc/init.d/cassandra
CMD_PATT="cassandra"
ファイルを閉じて保存してから、サーバーを再起動します。
- sudo reboot
または:
- sudo shutdown -r now
再度ログインすると、Cassandraが実行されているはずです。 確認:
- sudo service cassandra status
成功すると、次のように表示されます。
Output* Cassandra is running
ステップ4—クラスターへの接続
Cassandraを正常に起動できた場合は、クラスターのステータスを確認してください。
- sudo nodetool status
出力で、 UN は、 UpおよびN正常であることを意味します。
OutputDatacenter: datacenter1
=======================
Status=Up/Down
|/ State=Normal/Leaving/Joining/Moving
-- Address Load Tokens Owns Host ID Rack
UN 127.0.0.1 142.02 KB 256 ? 2053956d-7461-41e6-8dd2-0af59436f736 rack1
Note: Non-system keyspaces don't have the same replication settings, effective ownership information is meaningless
次に、インタラクティブなコマンドラインインターフェイスを使用して接続します cqlsh
.
- cqlsh
あなたはそれが接続するのを見るでしょう:
OutputConnected to Test Cluster at 127.0.0.1:9042.
[cqlsh 5.0.1 | Cassandra 2.2.2 | CQL spec 3.3.1 | Native protocol v4]
Use HELP for help.
cqlsh>
タイプ exit
やめること:
- exit
結論
おめでとう! これで、Ubuntu14.04で実行されているシングルノードのCassandraクラスターができました。 Cassandraの詳細については、プロジェクトのWebサイトを参照してください。