ウェブサイト検索

AlmaLinux 9にApache Couch DBをインストールする方法


このページで

  1. 前提条件
  2. Apache CouchDBリポジトリのセットアップ
  3. リポジトリを介してApache CouchDBをインストールする
  4. Firewalldの設定
  5. Apache CouchDBウェブ管理にアクセスする
  6. Apache CouchDBにおけるデータベースの管理

    1. ウェブUIによる基本的なオペレーション管理
    2. Curlを使用した基本的なデータベース操作
  7. 結論

Apache CouchDBは、データを保存するために複数のフォーマットとプロトコルをサポートするオープンソースのNoSQLおよびドキュメント指向データベースです。Erlangで書かれており、高性能の単一ノードデータベースとして実行できます。

Apache CouchDBは、データをJSONで保存することを可能にし、CouchDBシステムを管理するためのWeb UIと、データを簡単にクエリできるHTTP APIを提供します。

このガイドでは、AlmaLinux 9サーバーにApache CouchDBをインストールする手順を説明します。単一ノードクラスターにApache CouchDBをインストールし、CouchDBの管理ユーザーとfirewalldを設定します。さらに、Web UIとCurlを使用したHTTP APIを介してApache CouchDBでデータベースとドキュメントを作成する方法を学びます。

前提条件

このガイドを完了するには、次のものが必要です。

  • AlmaLinux 9サーバー。
  • 管理者権限を持つ非ルートユーザー。
  • 許可モードのSELinux。

Apache CouchDBリポジトリのセットアップ

Apache CouchDBは、Linux、Windows、macOS、FreeBSD、およびDockerやKubernetesなどのコンテナ技術にインストールできるマルチプラットフォームのNoSQLデータベースです。RHELベースのディストリビューションでは、DNFを介して公式リポジトリからCouchDBをインストールします。

まず、次のコマンドを実行して、AlmaLinuxサーバーにdnf-plugins-coreをインストールします。

sudo dnf install dnf-plugins-core -y

次のコマンドを使用して、Apache CouchDBリポジトリをシステムに追加します。

sudo dnf config-manager --add-repo https://couchdb.apache.org/repo/couchdb.repo

次に、以下のdnfコマンドを実行して、システム上の利用可能なリポジトリを確認してください。Apache CouchDBリポジトリが追加されていることを確認してください。

sudo dnf repolist

リポジトリを追加した後、以下のdnfコマンドを使用してApache CouchDBパッケージをインストールします。

sudo dnf install couchdb

yと入力してENTERを押してください。

また、Apache CouchDBのGPGキーについて尋ねられた場合は、キーをシステムに追加するためにyを入力してください。

インストールが完了したら、次に進んでください。

リポジトリを介してApache CouchDBをインストールする

DNFを介してCouchDBをインストールした後、デフォルトのCouchDB設定を変更し、シングルノードクラスターを設定し、管理者ユーザーとパスワードを構成し、ローカルサーバーのIPアドレスでHTTPアドレスを設定します。

nanoエディタコマンドを使用してデフォルト設定&47;opt&47;couchdb&47;etc&47;local.ini<&47;em>を開きます。

sudo nano /opt/couchdb/etc/local.ini

'[couchdb]<&47;strong>'セクション内に、Apache CouchDBのシングルノードを設定するために次の行を追加します。

[couchdb]
single_node=true

作業が完了したら、ファイルを保存して閉じてください。

次に、次のnanoエディタコマンドを使用して新しい設定 &47;opt&47;couchdb&47;etc&47;local.d&47;10-admins.ini<&47;em>を作成します。

sudo nano /opt/couchdb/etc/local.d/10-admins.ini

以下の設定をファイルに追加し、管理者ユーザーとパスワードを自分の詳細に変更してください。このプレーンテキストのパスワードは、Apache CouchDBを実行すると自動的に暗号化されます。

[admins]
admin = password

作業が完了したら、ファイルを保存して閉じてください。

以下のnanoエディタコマンドを使用して、デフォルト設定&47;opt&47;couchdb&47;etc&47;default.ini<&47;em>を開いてください。

sudo nano /opt/couchdb/etc/default.ini

'[chttpd]<&47;strong>'セクション内で、デフォルトの'bind_address<&47;strong>'をローカルIPアドレスに変更します。これにより、ローカルコンピュータからアクセスできるようになります。

[chttpd]
bind_address = 192.168.5.50

作業が完了したら、ファイルを保存して閉じてください。

その後、以下のsystemctlコマンドを実行してサービスを開始し、有効にします。

sudo systemctl start couchdb
sudo systemctl enable couchdb

最後に、サービスが実行されていることを確認するために、以下のコマンドを使用してcouchdb<&47;em>サービスを確認してください。

sudo systemctl status couchdb

CouchDBが実行中であれば、'アクティブ(実行中)<&47;strong>'のような出力が得られるはずです。

Firewalldの設定

CouchDBが実行されているので、firewalldを設定してポート5984/tcp4369/tcpを開放し、Apache CouchDBインストールへのアクセスを許可します。

次のコマンドを実行して、Apache CouchDBのためにポート5984&47;tcp<&47;strong>と4369&47;tcp<&47;strong>を開きます。

sudo firewall-cmd --permanent --add-port={5984/tcp,4369/tcp}

firewalldを再読み込みして変更を適用します。

sudo firewall-cmd --reload

次に、以下のコマンドを使用してfirewalldで利用可能なポートのリストを確認します。ポート5984/tcpと4369/tcpが利用可能であることを確認してください。

sudo firewall-cmd --list-all

最後に、以下のcurlコマンドを実行してApache CouchDBを確認してください。

curl http://192.168.5.50:5984/

または、DNFを介して'jq'をインストールし、JSON出力を解析して読みやすくすることができます。

sudo dnf install -y

このようにコマンドを使ってJSON出力を解析します:

curl http://192.168.5.50:5984/ | jq .

CouchDBのインストールが成功していれば、次のような結果が得られるはずです。

Apache CouchDBウェブ管理にアクセスする

この時点で、Apache CouchDBとfirewalldを設定したので、CouchDBのインストールにアクセスする準備が整いました。

Apache CouchDBにアクセスするには、お使いのウェブブラウザでサーバーのIPアドレスの後にポート5984を追加して訪問してください(例:http://192.168.5.50:5984/_utilssetup)。Apache CouchDBのログインページが表示されるはずです。

管理者ユーザー名とパスワードを入力し、次にログインをクリックしてください。

正しいユーザー名とパスワードがあれば、Apache CouchDB管理ダッシュボードにアクセスできるはずです。

Apache CouchDBにおけるデータベースの管理

Apache CouchDB管理ダッシュボードにログインしたので、次のステップは、Web UIとCurlを使用してHTTP API経由でデータベースを作成し、データを挿入する方法を学ぶことです。

ウェブUIによる基本的なオペレーション管理

始める前に、Apache CouchDB管理ダッシュボードにログインしていることを確認してください。

まず、Apache CouchDBのウェブインターフェースを介して新しいデータベースを作成します。

データベースメニューをクリックし、データベースを作成ボタンをクリックします。

新しいデータベース名を入力し、作成<&47;strong>をクリックします。

Apache CouchDBでデータベースを作成したので、データベース名をクリックしてください。

新しいドキュメントを作成するには、ドキュメントを作成するボタンをクリックしてください。

JSONデータを入力し、次にドキュメントを作成する<&47;strong>をクリックして確認してください。

{
    "item": "apple",
   "prices": {
       "Fresh Mart": 1.59,
       "Price Max": 5.99,
       "Apples Express": 0.79
   }
}

ドキュメントが作成されると、結果は'ドキュメントを保存中<&47;strong>'となります。

データベースの詳細で、テーブルタブをクリックすると、作成したJSONドキュメントが表示されるはずです。

ドキュメントを修正する必要がある場合は、ドキュメント名をクリックしてドキュメントを編集し、次に変更を保存<&47;strong>をクリックしてください。また、右側のメニューの削除ボタンを使ってドキュメントを削除することもできます。

Curlを使用した基本的なデータベース操作

次のセクションでは、Curlを使用してHTTP API経由でApache CouchDBにデータベースを作成し、データを挿入する方法を学びます。

まず、次のコマンドを実行してApache CouchDBに認証し、curlを使用して利用可能なデータベースをリストします。管理者ユーザーとパスワードは自分の詳細に変更してください。

curl -X GET http://admin:[email :5984/_all_dbs | jq .

成功すれば、利用可能なウェブUIを通じて作成したデータベースfruitsが表示されるはずです。

次に、以下のようなcurlのPUTオプションを使用して新しいCouchDBデータベースを作成します。

curl -X PUT http://admin:[email :5984/players | jq .

データベースが作成されると、次のような出力が得られるはずです。

データベースが作成されたら、以下のコマンドを使用してデータベースplayersの詳細を確認してください。

curl -X GET http://admin:[email :5984/players | jq .

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

次に、新しいドキュメントを作成し、CouchDBにデータを挿入するには、次のcurlコマンドを使用します。

curl -X PUT http://admin:[email :5984/players/documents \
-d '{"Name": "Nikola Jokic", "Team": "Denver Nuggets"}' | jq .

成功すると、出力は「"ok": true」となります。

以下のコマンドを使用して、ドキュメントの詳細を確認してください。Apache CouchDBでドキュメントが利用可能であることがわかるはずです。

curl -X GET http://admin:[email :5984/players/documents

あなたが追加したデータを見てみるべきです。以下のようなものです。

結論

おめでとうございます!AlmaLinux 9サーバーにApache CouchDBを正常にインストールしました。また、シングルノードクラスターを構成し、管理者ユーザーとパスワードを追加し、CouchDBを内部IPアドレスで実行するように設定しました。

さらに、ウェブUIとCurlを使用したHTTP APIを介してCouchDBで新しいデータベースを作成し、データを挿入する方法も学びました。これで、より多くのノードを追加し、パフォーマンスを最大化するためにApache CouchDBクラスターを設定できます。