概要
INFINI Consoleは強力なクラスタ管理と可観測性プラットフォームであり、INFINI Easysearchは軽量で高性能な検索・分析エンジンです。本記事では、インターネットに接続されていない環境でDocker Composeを使用してこれらのコンポーネントを導入する方法を詳細に解説します。
前提条件
導入を開始する前に、以下のソフトウェアがシステムにインストールされていることを確認してください:
- Docker
- Docker Compose
オフラインリソースのダウンロード
公式サイトから以下の2つの必須ファイルをダウンロードします:
infini-console.tar.gz: docker-compose.ymlと関連スクリプトを含むアーカイブinfini-console-easysearch-1.14.2.tar: infinilabs/consoleとinfinilabs/easysearchのDockerイメージを含むアーカイブ
wget https://release.infinilabs.com/easysearch/archive/offline/amd64/infini-console.tar.gz
wget https://release.infinilabs.com/easysearch/archive/offline/amd64/infini-console-easysearch-1.14.2.tar
Dockerイメージの正しい読み込み方法
重要: infini-console-easysearch-1.14.2.tarは複数のイメージを含むアーカイブファイルであるため、直接docker loadコマンドで読み込むことはできません。
正しい読み込み手順は以下の通りです:
- ディレクトリを作成しイメージアーカイブを展開:
mkdir -p docker-images tar -xvf infini-console-easysearch-1.14.2.tar -C docker-imagesこれにより
console.tarとeasysearch.tarなどのファイルがdocker-images/ディレクトリに展開されます。 - すべてのイメージを一括で読み込み:
cd docker-images for img in *.tar; do docker load -i $img; doneこのコマンドはディレクトリ内の各
.tarファイルに対して自動的にdocker loadを実行します。 - イメージの読み込み結果を確認:
docker images | grep infinilabsinfinilabs/console:1.29.8とinfinilabs/easysearch:1.14.2などのイメージが表示されるはずです。
設定ファイルのカスタマイズ
infini-console.tar.gzを展開した後、.envファイルを見つけてください。すべてのカスタム設定はこのファイルで変更する必要があります。
以下に各設定の詳細説明と変更提案を示します:
基本パス設定
DATA_ROOT=/opt/infini-platform
- 目的: すべての永続化データ(ログ、設定、インデックス)のルートディレクトリを定義
- 変更提案: (必須) サーバー上の十分な空き容量があるパスに変更することを強く推奨します(例:
/data/infini)。ディレクトリが存在し、Dockerが書き込み権限を持っていることを確認してください。
ネットワーク設定
NETWORK_NAME=infini-net
- 目的: Docker内部ネットワークの名前を定義
- 変更提案: 通常、変更は不要です。
Console設定
CONSOLE_IMAGE=infinilabs/console
CONSOLE_TAG=1.29.8
CONSOLE_NAME=my-console
CONSOLE_HOST_PORT=9000
CONSOLE_CONTAINER_PORT=9000
- 目的: Consoleのイメージ、バージョン、コンテナ名、ポートマッピングを定義
- 変更提案:
CONSOLE_HOST_PORT: ホストマシンの9000番ポートが既に使用されている場合は、他の利用可能なポート(例:8080)に変更してください。
Easysearch設定
EASYSEARCH_IMAGE=infinilabs/easysearch
EASYSEARCH_TAG=1.14.2
NODE_COUNT=1
CLUSTER_NAME=infini-cluster
- 目的: Easysearchのイメージ、バージョン、ノード数、クラスタ名を定義
- 変更提案:
NODE_COUNT: 単一マシンへの導入の場合は1のままにしてください。
アクセスとセキュリティ設定
ADMIN_PASSWORD=ChangeThisPassword123!
- 目的: Easysearchの
adminユーザーの初期パスワードを設定 - 変更提案: (必須) 必ず強力なパスワードに置き換えてください。Consoleへのログイン時にこのパスワードが必要になります。
EASYSEARCH_HTTP_PORT=9200
EASYSEARCH_TRANSPORT_PORT=9300
- 目的: EasysearchのHTTPおよびTransportインターフェースのホストマシン上のマッピングポートを定義
- 変更提案:
9200または9300ポートが競合する場合は変更してください。
JVMパラメータ設定
JVM_HEAP_SIZE="-Xms4g -Xmx4g"
- 目的: EasysearchのJVMヒープメモリサイズを設定
- 変更提案: (必須) サーバーの物理メモリに応じて調整し、物理メモリの50%を超えないようにしてください。
- 8GBメモリのサーバー:
-Xms2g -Xmx2gを推奨 - 16GBメモリのサーバー:
-Xms4g -Xmx4gを推奨
- 8GBメモリのサーバー:
データ永続化パス
CONSOLE_DATA_PATH=console/data
CONSOLE_LOGS_PATH=console/logs
EASYSEARCH_DATA_PATH=easysearch
- 目的:
DATA_ROOT下のデータとログの相対サブパスを定義 - 変更提案: 通常、変更は不要です。
サービスの起動
設定の変更が完了したら、docker-compose.ymlがあるディレクトリで以下のコマンドを実行します:
docker-compose up -d
サービスが完全に起動するまで待機してください。
コンソールへのアクセス
Webブラウザを開き、http://<サーバーのIPアドレス>:9000にアクセスします。
デフォルトのユーザー名adminとADMIN_PASSWORDで設定したパスワードを使用して初期設定を行います。