> ## Documentation Index
> Fetch the complete documentation index at: https://docs.abbyy.com/llms.txt
> Use this file to discover all available pages before exploring further.

# ABBYY Vantageの更新

> ABBYY Vantageのセルフホスト型インストールを新しいリリースに更新するには、コンテナーイメージを同期し、データをバックアップし、インストーラースクリプトを実行して、必要に応じて復旧します。

<Warning>
  **Vantage 3.0 ではこのデプロイモデルは廃止されました。** Vantage 2.7 以前では、ABBYY が提供する Ansible スクリプトと Azure CLI スクリプトで構築される、ABBYY 指定のインフラストラクチャが必要でした。3.0 ではこのモデルはサポートされておらず、お客様が独自にインフラストラクチャをプロビジョニングする必要があります。また、ABBYY はプロビジョニング スクリプトやその他のインフラストラクチャ自動化を提供しません。このページは Vantage 2.7 にのみ適用されます。[Vantage 3.0 の概要](/ja/vantage/self-hosted/v3.0/introduction) と [Vantage 2.7 からの移行](/ja/vantage/self-hosted/v3.0/migration-from-2.7) を参照してください。
</Warning>

このセクションでは、ABBYY Vantage を 2.7.x リリースライン内で更新する手順について説明します。3.0 への移行は更新ではなくマイグレーションにあたります。詳しくは、[Vantage 2.7 から移行する](/ja/vantage/self-hosted/v3.0/migration-from-2.7)を参照してください。

<Note>
  Vantage を更新する前に、[システム要件](/ja/vantage/self-hosted/v2.7/system-requirements)セクションに記載されている新しいリリースの要件をすべて満たしていることを確認してください。
</Note>

更新手順は、次のステップで構成されます。

1. [コンテナーイメージを同期する](#synchronize-container-images)。
2. [データをバックアップする](#back-up-data)。
3. [インストールスクリプトを実行する](#run-the-installation-scripts)。
4. [Vantage をアンインストールする](#uninstall-vantage)。
5. [ABBYY Vantage を更新する](#update-abbyy-vantage)。

<div id="synchronize-container-images">
  ## コンテナーイメージの同期
</div>

コンテナーイメージを同期するには、[コンテナーイメージのダウンロード](/ja/vantage/self-hosted/v2.7/installation#downloading-container-images)の手順に従ってください。

<div id="back-up-data">
  ## データのバックアップ
</div>

更新時点で稼働していたバージョンに Vantage を復元するには、データベース、Consul、および Kubernetes シークレット のコピーのバックアップが必要です。これらのコンポーネントを適切にバックアップするには、以下の手順に従ってください。

1. データベースと Consul のバックアップを作成する前に、クラスターを停止する必要があります。クラスター内のすべてのノードを停止してください。
2. 次のバックアップを作成します。
   * **Databases**: データベースの一覧は次のとおりです: `apigatewayregistry`, `auth`, `auth-identity`, `catalogstorage`, `cron`, `documentset`, `folderimport`, `interactive-jobs`, `mail`, `mailimport`, `permissions`, `publicapi`, `reporting`, `secretstorage`, `security-audit`, `skillinfo`, `skillmonitor`, `storage`, `subscriptions`, `tokenmanagement`, `transactions`, `workflows`, `workspace`.
   * **Consul**: Kubernetes CronJob は、`[X].consul-backup` という名前の pod によって、Consul を外部 RWX ストレージ (NFS など) にバックアップします。バックアップされた TGZ ファイルは、`consul-backup` という名前の PVC フォルダーから取得できます。
3. クラスターを起動します。クラスター内のすべてのノードを起動してください。
4. **Kubernetes シークレット のコピー**をバックアップします。キーを取得するには、次のコマンドを実行します:

```bash theme={null}
kubectl get secret -n abbyy-vantage secretstorage-encryptionkeys -o yaml
kubectl get secret -n abbyy-vantage tokenmanagement-encryptionkeys -o yaml
```

<Note>
  Kubernetes シークレット のコピーをバックアップする前に、クラスターが起動していることを確認してください。
</Note>

<Note>
  バックアップは念のため作成するものです。アップグレードが正常に完了した場合は、バックアップから復旧する必要はありません。
</Note>

<div id="run-the-installation-scripts">
  ## インストールスクリプトを実行する
</div>

ABBYY Vantageを更新する前に、[インストール](/ja/vantage/self-hosted/v2.7/installation)の手順を実行してください。

インストールスクリプトを実行するには、次の手順に従います。

1. 設定ファイルを準備します。

<Note>
  デフォルトでは、Vantageの更新時にTechnology Core バージョン 2は削除されます。これを保持するには、`env_specific.yml` ファイルに `techcore.keep_previous_version` パラメーターを追加し、その値を `true` に設定します。
</Note>

2. 証明書を準備します。
3. コンテナーイメージをダウンロードします。
4. インストールスクリプトを実行します (手順 1～3) 。

<div id="uninstall-vantage">
  ## Vantage のアンインストール
</div>

製品をアンインストールするには、次のプレイブックを実行します。

```bash theme={null}
ansible-playbook -i inventories/k8s -v playbooks/uninstall-vantage.yml
```

このプレイブックを実行すると、データストアはそのまま残したまま、すべてのサービスが削除されます。

<div id="update-abbyy-vantage">
  ## ABBYY Vantage を更新する
</div>

ABBYY Vantage を更新するには:

1. 次のプレイブックを実行して、デプロイ前チェックを行い、Vantage の法的文書を確認して同意します。

```bash theme={null}
ansible-playbook -i inventories/k8s -v playbooks/0-PreflightCheck-k8s.yml
ansible-playbook -i inventories/k8s -v playbooks/legal.yml
```

プレイブックは次の処理を行います。

* プレイブックの `env_specific.yml` ファイルで指定されたパラメーターに基づき、リソース (データベース、SMTP 接続など) の事前チェックを実行します。
* システム管理者に、EULA および ABBYY プライバシーポリシーへの同意を求めます。

2. Vantage を更新するには、次のプレイブックを実行します。

```bash theme={null}
ansible-playbook -i inventories/k8s -v playbooks/site-k8s-deploy.yml
```

これらのプレイブックを実行すると、製品の新しいバージョンがインストールされます。通常、この処理には約20～30分かかります。

<Note>
  ABBYY Vantage の更新後は、再度認証が必要です。アップグレード前に取得した認証トークンは、以後使用できなくなります。
</Note>

Advanced Designer と Scanning Station を使用するには、それぞれの新しいバージョンをダウンロードして、お使いのマシンにインストールする必要があります。

* `https://<your-vantage-host>/ad/latest` - Advanced Designer のダウンロード用
* `https://<your-vantage-host>/ss/latest` - Scanning Station のダウンロード用

更新処理が失敗した場合は、次の「復旧」セクションを参照してください。

<div id="recovery">
  ## 復旧
</div>

更新プロセスが正常に完了しなかった場合は、次の手順に従ってください。

1. クラスター内のpodが正常に動作していることを確認し、正常に動作していない場合は再起動します。
2. 想定どおりに動作していないpodのログを確認して分析します。
3. podのログに記載されているトラブルシューティング手順に従います。
4. Vantage の新しいバージョンのインストール中のいずれかの手順でアップグレードが失敗した場合 (例: Vantage ジョブの待機、Vantage デプロイの待機) 、エラーの原因を修正してから、install プレイブックを実行します。

```bash theme={null}
ansible-playbook -i inventories/k8s -v playbooks/site-k8s-deploy.yml
```

<div id="installing-vantage-with-data-recovery-on-a-new-cluster">
  ### 新しいクラスターでデータを復旧してVantageをインストールする
</div>

上記の手順で解決しない場合は、次の手順に従って、新しいクラスターでデータを復旧しながらVantageをインストールできます。

1. データの最新バックアップがすべてそろっていることを確認します。
2. 以前に作成したバックアップからデータを復元します。
3. バックアップから復元したデータベースおよび外部ストレージへの接続情報を含む `env_specific` ファイルを準備します。
4. インストールセクションの[インストールスクリプトの実行](/ja/vantage/self-hosted/v2.7/installation#running-the-installation-scripts)の手順に従ってVantageをインストールします。手順 2 (Docker イメージからインストーラーを実行する) では、以下のコマンドを使用します。

```bash theme={null}
docker run -it --net=host \
-v $PWD/kube:/root/.kube \
-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
```

5. `secretstorage-encryptionkeys` および `tokenmanagement-encryptionkeys` シークレット内のキーの値を、先ほどバックアップした値で上書きします。

   a. 次のコマンドを実行します。

   ```bash theme={null}
   kubectl edit secrets -n abbyy-vantage secretstorage-encryptionkeys
   ```

   b. 開いたファイルで、`key-<guid>.xml` の後にある base64 文字列を、先ほど `secretstorage-encryptionkeys` シークレット用にバックアップしたキーに含まれる base64 文字列に置き換えます。

   c. 変更を保存して、エディターを閉じます。

   d. `tokenmanagement-encryptionkeys` シークレットについても、次のコマンドを使用して同じ操作を行います。

   ```bash theme={null}
   kubectl edit secrets -n abbyy-vantage tokenmanagement-encryptionkeys
   ```
6. キーを書き換えたら、`secretstorage` と `tokenmanagement` の pod を再起動します。

```bash theme={null}
kubectl -n abbyy-vantage rollout restart $(kubectl -n abbyy-vantage get deployments -l app.kubernetes.io/component=secretstorage -o name)
```

```bash theme={null}
kubectl -n abbyy-vantage rollout restart $(kubectl -n abbyy-vantage get deployments -l app.kubernetes.io/component=tokenmanagement -o name)
```

7. トランザクションを再開します。クラスターに接続されているマシンで、トランザクションサービスにアクセスするために次のコマンドを実行します。

```bash theme={null}
kubectl port-forward -n abbyy-vantage deployments/abbyy-vantage-transactions 8080:8080
```

ブラウザーで `http://localhost:8080/index.html` にアクセスし、次の API メソッドを実行します。

```
/api/recovery/transactions/restart
```

<Note>
  復旧後にVantageのホストアドレスが変更され、システム内に承諾待ちの招待がある場合は、それらの招待を再送信する必要があります。
</Note>
