ABBYY Vantage をインストールする際、サービスおよびワーカーの数は負荷によって異なります。ABBYY Vantage は、ドキュメント処理を最適化するためにサービスとワーカーを自動的にスケーリングします。本ガイドでは、負荷に応じて ABBYY Vantage が必要とするリソースに関する情報と、システム管理者が ABBYY Vantage にこれらのリソースを適切に提供するための推奨事項を記載しています。
リソース消費量は、ドキュメント処理シナリオ、つまり処理されるドキュメントの種類、使用される Skill、およびページ負荷(一定時間内に処理されるページ数)によって異なります。
参照用の 高可用性 構成では、デフォルトの Process skill を使用して、次の負荷条件で 3 ページおよび 50 ページの請求書を処理するテストを行いました。
- 8 時間あたり 50,000 ページ
- 8 時間あたり 100,000 ページ
- 8 時間あたり 150,000 ページ
- 8 時間あたり 200,000 ページ
参照用の 高可用性なし 構成では、デフォルトの Process skill を使用して、次の負荷条件で 3 ページの請求書を処理するテストを行いました。
- 8 時間あたり 10,000 ページ
- 8 時間あたり 30,000 ページ
- 8 時間あたり 50,000 ページ
高可用性なし構成では、Deep Learning アクティビティを使用した Skill のトレーニングはサポートしていません。
参照構成のテスト中、ファイルは REST API 経由でシステムに送信されました。次のワークフローを持つデフォルトの Process skill が使用されました。
- ファイルをインポートする。
- ドキュメントを認識する。
- ドキュメントを分類し、ドキュメントタイプを判別する。
- ドキュメントからデータを抽出する。
- データを JSON にエクスポートする。
| ノードタイプ | CPU コア数(各ノード) | RAM(各ノード、GB) | ディスクサイズ(GB) |
|---|
| サービスノード | 12 | 48 | 120* |
| ワーカーノード | 12 | 48 | 120 |
*上記のディスクサイズ要件は最小サイズの要件を示しており、追加のディスク容量が必要となる場合があります。既定では、Vantage は仮想マシン上に NFS ファイルストレージをインストールします。この場合、最初のサービスノードとして使用される仮想マシンには、負荷に応じて追加のディスク容量が必要になります。
| 構成 | ストレージ | ストレージの場所 | ディスク サイズ (GB) |
|---|
| 高可用性なし | 内部 NFS | サービス ノード | 500 (8 時間ごとに 10,000 ページを処理する場合) |
| 高可用性なし | 外部 NFS | NFS サーバー マシン | 500 (8 時間ごとに 10,000 ページを処理する場合) |
| 高可用性あり | 外部 NFS | NFS サーバー マシン | 50 (8 時間ごとに 10,000 ページを処理する場合) |
| 高可用性あり | ローカル永続ボリューム | 最初のサービス ノード (インベントリ ファイルで定義) | 500 (8 時間ごとに 10,000 ページを処理する場合) |
大規模なデータ カタログ、多数のアクティビティを含む Skill、または共有フォルダーへのデータ エクスポートを使用する場合は、追加のストレージが必要になることがあります。
8 時間あたり 10,000 ページを超える負荷がある場合は、外部ストレージの使用を推奨します。
ページ数(負荷)に応じて、ABBYY Vantage が各構成でドキュメントを効率的に処理するのに必要なリソースは次のとおりです。
| 負荷(ページ/8時間) | サービス用ノード(3ページの請求書) | サービス用ノード(50ページの請求書) | ワーカー用ノード(3ページの請求書) | ワーカー用ノード(50ページの請求書) |
|---|
| 50,000 | 4 | 4 | 4 | 4 |
| 100,000 | 4 | 4 | 5 | 7 |
| 150,000 | 4 | 4 | 7 | 9 |
| 200,000 | 4 | 4 | 8 | 11 |
テスト時には、BLOB ストレージに使用されるディスクの入出力(I/O)操作に関する統計も収集しました。実運用環境でも、これらの数値を超えることはないと見込めます。
| 負荷(ページ数/8時間) | ディスク I/O 操作数/秒(3ページの請求書) | ディスク I/O 操作数/秒(50ページの請求書) |
|---|
| 50,000 | 100 | 50 |
| 100,000 | 250 | 100 |
| 150,000 | 400 | 170 |
| 200,000 | 600 | 230 |
| 負荷(ページ/8時間) | サービス用ノード数 | ワーカー用ノード数 |
|---|
| 10,000 | 1 | 1* |
| 30,000 | 1 | 3 |
| 50,000 | 1 | 3 |
*ワーカーノード1台での構成はテスト目的のみの使用を想定しており、どのアクティビティでも Skill のトレーニングはサポートされません。
ABBYY Vantage をスケーリングしても、ドキュメント処理時間の増加は確認されませんでした。
システム管理者は、処理能力を拡張するために、クラスターに追加のワーカーノードを追加できます。ノードの準備方法の詳細については、System Requirements を参照してください。
Workerノードを追加するには、次の手順に従います。
- インストールディレクトリ内のインベントリファイルを開きます。
[abbyy_workers] セクションで、ノード名とIPアドレスを指定してノードを追加します。
- インストーラーを実行します。
docker run -it \
-v $PWD/kube:/root/.kube \
-v $PWD/ssh/ansible:/root/.ssh/ansible \
-v "//var/run/docker.sock:/var/run/docker.sock" \
-v $PWD/inventory:/ansible/inventories/k8s/inventory \
-v $PWD/env_specific.yml:/ansible/inventories/k8s/group_vars/all/env_specific.yml \
-v $PWD/ssl:/ansible/files/ssl:ro \
--privileged \
registry.local/vantage/vantage-k8s:2.7.1
- 次のプレイブックを実行します。
ansible-playbook -i inventories/k8s -v playbooks/4-Kubernetes-k8s.yml