AlmaLinux 9にApache Couch DBをインストールする方法
このページで
- 前提条件
- Apache CouchDBリポジトリのセットアップ
- リポジトリを介してApache CouchDBをインストールする
- Firewalldの設定
- Apache CouchDBウェブ管理にアクセスする
Apache CouchDBにおけるデータベースの管理
- ウェブUIによる基本的なオペレーション管理
- Curlを使用した基本的なデータベース操作
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/tcpと4369/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クラスターを設定できます。