GNU/Linux >> Linux の 問題 >  >> Cent OS

CentOS8にApacheCassandraNoSQLデータベースをインストールする方法

Apache Cassandraは、単一障害点のないオープンソースの高性能NoSQLデータベース管理システムです。 Apache Cassandraは、MySQL/PostgreSQLで見られるテーブルモデルの代わりにクラスターモデルを使用します。 Cassandraは、データを失う余裕のないアプリケーションに適しています。データは、フォールトトレランスのために複数のノードに自動的に複製されます。障害が発生したノードは、ダウンタイムなしで自動的に置き換えることができます。

スケーラビリティ、高可用性、および高性能を求めている場合は、ApacheCassandraが最適です。

このチュートリアルでは、CentOS8にApacheCassandraをインストールする方法を紹介します。

要件
  • 2GB以上のRAMを搭載したCentOS8を実行しているサーバー。
  • rootパスワードがシステムに設定されています。
はじめに

開始する前に、サーバーを最新の安定バージョンに更新することをお勧めします。次のコマンドでサーバーを更新できます:

dnf update

サーバーが更新されたら、サーバーを再起動して変更を適用します。

Javaのインストール

Apache Cassandraでは、OpenJDK8とPython2がシステムにインストールされている必要があります。次のコマンドを使用して、OpenJDK8とPython2をインストールできます。

dnf install java-1.8.0-openjdk-devel python2

両方のパッケージがインストールされたら、次のコマンドを使用してJavaのバージョンを確認できます。

java -version

次の出力が表示されます。

openjdk version "1.8.0_232"
OpenJDK Runtime Environment (build 1.8.0_232-b09)
OpenJDK 64-Bit Server VM (build 25.232-b09, mixed mode)

ApacheCassandraをインストールする

デフォルトでは、ApacheCassandraはCentOS8のデフォルトリポジトリでは使用できません。したがって、そのためのリポジトリを作成する必要があります。以下に示すように、新しいリポジトリファイル/etc/yum.repos.d/cassandra.repoを作成できます。

nano /etc/yum.repos.d/cassandra.repo

次の行を追加します:

[cassandra]
name = DataStax Repo for Apache Cassandra
baseurl = http://rpm.datastax.com/community
enabled = 1
gpgcheck = 0

ファイルを保存して閉じてから、次のコマンドを使用してApacheCassandraをインストールします。

dnf install dsc20

インストールが完了したら、次のステップに進むことができます

CassandraのSystemdユニットファイルを作成する

デフォルトでは、ApacheCassandraパッケージはそれ自体のサービスファイルを生成できません。したがって、Cassandraサービスを管理するためにsystemdサービスファイルを作成する必要があります。次のコマンドで作成できます:

nano /etc/systemd/system/cassandra.service

次の行を追加します:

[Unit]
Description=Apache
Cassandra After=network.target
[Service]
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

ファイルを保存して閉じます。次に、次のコマンドを使用してsystemdデーモンをリロードします。

systemctl daemon-reload

次に、Cassandraサービスを開始し、次のコマンドを使用してシステムの再起動後に開始できるようにします。

systemctl start cassandra
systemctl enable cassandra

次のコマンドを使用して、Cassandraサービスのステータスを確認することもできます。

systemctl status cassandra

次の出力が表示されます。

? cassandra.service - Apache
   Loaded: loaded (/etc/systemd/system/cassandra.service; disabled; vendor preset: disabled)
   Active: active (running) since Sat 2019-12-07 01:25:26 EST; 1min 51s ago
 Main PID: 1888 (java)
    Tasks: 53 (limit: 25044)
   Memory: 272.7M
   CGroup: /system.slice/cassandra.service
           ??1888 java -ea -javaagent:/usr/share/cassandra/lib/jamm-0.2.5.jar -XX:+CMSClassUnloadingEnabled -XX:+UseThreadPriorities -XX:Threa>

Dec 07 01:25:29 centos8 cassandra[1888]:  INFO 01:25:29,054 Writing [email protected](10104/101040 serialized/live bytes, 259 ops)
Dec 07 01:25:29 centos8 cassandra[1888]:  INFO 01:25:29,118 Completed flushing /var/lib/cassandra/data/system/local/system-local-jb-4-Data.db >
Dec 07 01:25:29 centos8 cassandra[1888]:  INFO 01:25:29,124 Compacting [SSTableReader(path='/var/lib/cassandra/data/system/local/system-local->
Dec 07 01:25:29 centos8 cassandra[1888]:  INFO 01:25:29,169 Node localhost/127.0.0.1 state jump to normal
Dec 07 01:25:29 centos8 cassandra[1888]:  INFO 01:25:29,294 Compacted 4 sstables to [/var/lib/cassandra/data/system/local/system-local-jb-5,].>
Dec 07 01:25:29 centos8 cassandra[1888]:  INFO 01:25:29,322 Starting listening for CQL clients on localhost/127.0.0.1:9042...
Dec 07 01:25:29 centos8 cassandra[1888]:  INFO 01:25:29,376 Using TFramedTransport with a max frame size of 15728640 bytes.
Dec 07 01:25:29 centos8 cassandra[1888]:  INFO 01:25:29,378 Binding thrift service to localhost/127.0.0.1:9160
Dec 07 01:25:29 centos8 cassandra[1888]:  INFO 01:25:29,391 Using synchronous/threadpool thrift server on localhost : 9160
Dec 07 01:25:29 centos8 cassandra[1888]:  INFO 01:25:29,422 Listening for thrift clients...
ApacheCassandraのインストールをテストする

これで、ApacheCassandraがサーバーにインストールされて実行されます。次のコマンドを使用して、実行されているかどうかを確認できます。

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  46.11 KB   256     100.0%            2a680007-8c30-4bde-9a3f-9fa212b96d11  rack1

ApacheCassandraを構成する

デフォルトでは、Cassandraはローカルホストからの接続のみを受け入れるように構成されています。

Cassandraクエリ言語を使用してCassandraにログインすることもできます。 CQLシェルにアクセスするには、次のコマンドを実行します。

cqlsh

次の出力が表示されます。

Connected to Test Cluster at localhost:9160.
[cqlsh 4.1.1 | Cassandra 2.0.17 | CQL spec 3.1.1 | Thrift protocol 19.39.0]
Use HELP for help.
cqlsh> 
にHELPを使用します

上記の出力では、Cassandraクラスターの名前が「TestCluster」であることがわかります。このデフォルトのクラスター名を変更することもできます。

これを行うには、次のコマンドを使用してCQLシェルにログインします。

cqlsh

次に、次のコマンドを実行して、以下に示すようにクラスター名を「HowtoForgeCluster」に変更します。

cqlsh> UPDATE system.local SET cluster_name = 'HowtoForge Cluster' WHERE KEY = 'local';

次に、次のコマンドを使用してシェルを終了します。

cqlsh>exit;

次に、cassandra.yaml構成ファイルを編集して、新しいクラスター名を定義する必要もあります。

nano /etc/cassandra/default.conf/cassandra.yaml

次の行を変更します:

cluster_name: 'HowtoForge Cluster'

終了したら、ファイルを保存して閉じます。次に、次のコマンドを使用してシステムキャッシュをクリアします。

nodetool flush system

最後に、Apache Cassandraサービスを再起動して、新しい構成を適用します。

systemctl restart cassandra

次に、次のコマンドを使用してCQLシェルにログインします。

cqlsh

クラスタ名が「HowtoForgeCluster」に変更されていることがわかります。

Connected to HowtoForge Cluster at localhost:9160.
[cqlsh 4.1.1 | Cassandra 2.0.17 | CQL spec 3.1.1 | Thrift protocol 19.39.0]
Use HELP for help.
cqlsh> 
にHELPを使用します 結論

おめでとう! CentOS8にApacheCassandraを正常にインストールして構成しました。ご不明な点がございましたら、お気軽にお問い合わせください。


Cent OS
  1. CentOS6にワードプレスをインストールする方法

  2. CentOS7にApacheCassandraをインストールする方法

  3. CentOS7にCassandra分散データベースをインストールする方法

  1. CentOS8にApacheCassandraをインストールする方法

  2. CentOS7にApacheをインストールする方法

  3. CentOS7にApacheMavenをインストールする方法

  1. CentOS7にApacheCassandraをインストールする方法

  2. CentOS8にApacheをインストールする方法

  3. CentOS8にApacheMavenをインストールする方法