GNU/Linux >> Linux の 問題 >  >> Debian

Debian11にCockroachDBクラスタをインストールする方法

CockroachDBは、クラウドアプリケーション向けのオープンソースの分散型でスケーラブルなSQLデータベースです。 CockroachDBは、次のレベルの整合性、レプリケートされたSQLデータベース、およびトランザクションデータストアを提供します。 CockroachDBはデータを複数の場所に保存し、データ配信を高速化します。また、拡張が容易で、アプリケーションに高可用性とフォールトトレランスを提供します。

このチュートリアルでは、Debian11サーバーにCockroachDBクラスターをインストールする方法を示します。

前提条件
  • 2つ以上のDebian11サーバー。
  • ルートパスワードはサーバーで構成されます。

3台のサーバーすべてにCockroachDBをインストールする

インストールの場合、cockroachdbは簡単にインストールできます。これは、cockroachdbがLinuxシステム用のバイナリファイルを提供しており、システムにダウンロードできるためです。

次のコマンドを使用して、Linux用のcockroachdbバイナリファイルをダウンロードします。このコマンドは、cockroachdbバイナリファイルをダウンロードし、圧縮ファイルを抽出してから、cockroachdbのバイナリファイルを / usr / local / binに移動します。 ディレクトリ。

curl https://binaries.cockroachdb.com/cockroach-v21.2.8.linux-amd64.tgz | tar -xz && sudo cp -i cockroach-v21.2.8.linux-amd64/cockroach /usr/local/bin/

cockroachdbは、カスタムの組み込みGEOSライブラリを使用しました。 GEOSライブラリはcockroachdbの圧縮ファイルに含まれており、 libにインストールする必要があります。 ディレクトリ。

新しいディレクトリを作成します/usr / local / lib / cockroach 以下のコマンドを使用します。

mkdir -p /usr/local/lib/cockroach

次に、GEOSライブラリを / usr / local / lib / cockroachにコピーします。 ディレクトリ。

cp -i cockroach-v21.2.8.linux-amd64/lib/libgeos.so /usr/local/lib/cockroach/
cp -i cockroach-v21.2.8.linux-amd64/lib/libgeos_c.so /usr/local/lib/cockroach/

cockroachdbの基本的なインストールはDebianサーバーにインストールされます。

次のコマンドを実行して、cockroachdbバイナリファイルと、インストールしたばかりのcockroachdbの現在のバージョンを確認します。

which cockroach
cockroach version

次の出力が得られます。

ファイアウォールの設定

Debianサーバーでファイアウォールを実行している場合は、ファイアウォール構成にcockroachdbポートを追加する必要があります。

cockroachdbはポート8080を使用しました Webベースの管理cockroachdb、およびポート 26257 ユーザー接続とクラスター構成用。

ポートを追加8080 および25267 次のコマンドを使用してUFWファイアウォールに接続します。

sudo ufw allow 8080/tcp
sudo ufw allow 26257/tcp

次に、UFWファイアウォールルールをリロードし、ファイアウォールルールの現在のステータスを確認します。

sudo ufw reload
sudo ufw status

以下に、ポート 8080を示します。 および25267 UFWファイアウォールに追加されます。

CockroachDBクラスターの初期化

cockroachdbクラスターを初期化するには、server11で以下のコマンドを実行します。

次のオプションの値を変更する必要があります:

  • -ストア: CockroachDBクラスターのデータを保存するため。
  • -listen-addr :cockroachdbがサーバーで実行するIPアドレス。 cockroachdbのデフォルトのポートはポート25267です。
  • -http-addr: cockroachdbWebベースの管理が実行されるIPアドレス。 cockroachdbのデフォルトのWebベースの管理はポート8080です。
cockroach start \
--insecure \
--store=server11 \
--listen-addr=192.168.10.11:26257 \
--http-addr=192.168.10.11:8080 \
--join=192.168.10.11:26257,192.168.10.13:26258,192.168.10.14:26259 \
--background

次の出力が得られます。

次に、 server2に移動します 次のコマンドを実行してcockroachdbを起動し、クラスターに参加します。 --listen-addrでIPアドレスを変更します および--http-addr server2のIPアドレスに送信します。

cockroach start \
--insecure \
--store=server2 \
--listen-addr=192.168.10.13:26257 \
--http-addr=192.168.10.13:8080 \
--join=192.168.10.11:26257,192.168.10.13:26258,192.168.10.14:26259 \
--background

server2から次の出力が得られます。

次に、 server3に移動します 次のコマンドを実行してcockroachdbを起動し、cockroachdbクラスターに参加します。また、-listen-addrのIPアドレスを変更します および--http-addr server3のIPアドレスに送信します。

cockroach start \
--insecure \
--store=server3 \
--listen-addr=192.168.10.14:26257 \
--http-addr=192.168.10.14:8080 \
--join=192.168.10.11:26257,192.168.10.13:26258,192.168.10.14:26259 \
--background

server3から次の出力が得られます。

すべて完了したら、server11に戻り、以下のコマンドを実行して、cockroachdbクラスターを初期化します。

cockroach init --insecure --host=192.168.10.11:26257

出力メッセージ「クラスターが正常に初期化されました」が表示されます '、これは、cockroachdbクラスターが正常に初期化されたことを意味します。

以下のgrepコマンドを実行して、cockroachdb初期化のログを確認できます。 server11ディレクトリを--storeで変更します cockroachdbディレクトリ。

grep 'node starting' server11/logs/cockroach.log -A 11

以下に、server11cockroachdbクラスターの初期化からのログを示します。

最後に、Webブラウザを開き、サーバーのIPアドレスに続いてポート8080にアクセスします。

http://192.168.10.11:8080/

以下に、cockroachdbクラスターに3つのノードがあることを示します。

CockroachDBでの新しいデータベースの作成のテスト

これで、cockroachdbクラスターが実行されたので、任意のサーバーをSQLゲートウェイとして使用してcockroachdbにアクセスできます。

server11でゴキブリコマンドを実行します cockroachdbクラスターに接続します。

cockroach sql --insecure --host=192.168.10.11:26257

SQLシェルに接続したら、以下のクエリを実行して新しいデータベースを作成します。

CREATE DATABASE bank;

次に、次のクエリを使用してデータベースに新しいテーブルを作成します。

CREATE TABLE bank.accounts (id INT PRIMARY KEY, balance DECIMAL);

次に、サンプルデータをテーブルにインポートします。

INSERT INTO bank.accounts (1, 1000.50);

次のクエリを使用して、データベースのデータを確認します。

SELECT * FROM bank.accounts;

次の出力が得られます。

次に、 server2に移動します またはserver3 次のコマンドを使用して、cockroachdbSQLシェルにログインします。

cockroach sql --insecure --host=192.168.10.14:26257

server3のSQLシェルに接続したら、次のクエリを実行してデータベースのレプリケーションを確認および確認します。

SELECT * FROM bank.accounts;

server11のデータベースとデータがserver2とserver3に自動的に複製されていることがわかります。

結論

おめでとうございます!これで、Debian11サーバーにcockroachdbクラスターがインストールおよび構成されました。また、cockroachdbシェルに接続する方法と、データベースを作成してデータを挿入するための基本的なSQLコマンドについても学びました。


Debian
  1. Debian 10(バスター)のインストール方法

  2. Python3.9をDebian10にインストールする方法

  3. Debian10にTeamViewerをインストールする方法

  1. Debian10にMemcachedをインストールする方法

  2. Debian9にGitをインストールする方法

  3. Debian9にGoをインストールする方法

  1. Debian9にPipをインストールする方法

  2. Debian9にRをインストールする方法

  3. Debian9にRubyをインストールする方法