> ## 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.

# Azure インフラストラクチャの作成

> インストーラー コンテナー、Azure CLI、ARM テンプレートを使用して、AKS 上の ABBYY Vantage セルフホスト型に必要な Azure インフラストラクチャを手順に沿って作成します。

<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>

<Note>
  このページは、**Azure AKS** へのデプロイにのみ適用されます。仮想マシンへのデプロイについては、[インストール](/ja/vantage/self-hosted/v2.7/installation)ガイドを参照してください。
</Note>

<div id="overview">
  ## 概要
</div>

このガイドでは、Azure CLI と ARM テンプレートを使用して、ABBYY Vantage に必要な Azure インフラストラクチャを作成する手順を説明します。このインフラストラクチャは、Vantage インストーラーコンテナー内から作成します。

<div id="prerequisites">
  ## 前提条件
</div>

開始前に、以下を用意してください。

* リソースを作成および管理する権限を持つ Azure サブスクリプション
* ローカルマシンにインストールされた Docker
* コンテナーイメージをダウンロードするためのインターネットアクセス
* 高可用性構成の場合: VM に Redis クラスターがデプロイされていること ([システム要件](/ja/vantage/self-hosted/v2.7/system-requirements#redis-cluster-azure-aks-only)を参照)

<Note>
  インフラストラクチャの作成中にコンテナーイメージのダウンロードを開始できます。これには時間がかかるためです。
</Note>

<div id="infrastructure-components">
  ## インフラストラクチャ コンポーネント
</div>

次の Azure リソースが作成されます。

```
Azure Subscription
└── Resource Group
    ├── AKS Cluster
    │   ├── Services Node Pool (Standard_D8as_v5)
    │   └── Workers Node Pool (Standard_D16as_v5)
    ├── Storage Accounts (5)
    │   ├── Skills (Premium/Hot)
    │   ├── Processing (Standard/Hot)
    │   ├── Temporary (Standard/Hot)
    │   ├── Shared Folders (Premium FileStorage)
    │   └── Archive (Standard/Cool)
    ├── Azure SQL Server
    │   └── Elastic Pool Database
    └── Public IP Address
```

<div id="step-1-download-the-installer-image">
  ## ステップ 1: インストーラーイメージをダウンロードする
</div>

まず、Vantage のインストーラーイメージをダウンロードし、ご使用のContainer Registryにプッシュします。

```bash theme={null}
# Vantage Docker レジストリにログイン
docker login abyvtgonprm27.azurecr.io -u <username> -p <password>

# インストーラーイメージをプル
docker pull abyvtgonprm27.azurecr.io/vantage-azure:2.7.1

# レジストリ用にタグを付ける
docker tag abyvtgonprm27.azurecr.io/vantage-azure:2.7.1 \
  registry.yourdomain.tld/vantage/vantage-azure:2.7.1

# レジストリにプッシュ
docker push registry.yourdomain.tld/vantage/vantage-azure:2.7.1
```

<Note>
  `<username>` と `<password>` は、調達時に提供された認証情報に置き換えてください。
</Note>

<div id="step-2-run-the-installer-container">
  ## 手順 2: インストーラー コンテナーを実行する
</div>

インストーラー コンテナーを起動します。このガイドで以降に使用するコマンドは、すべてこのコンテナー内で実行します。

```bash theme={null}
docker run -it registry.yourdomain.tld/vantage/vantage-azure:2.7.1
```

<div id="step-3-authenticate-to-azure">
  ## Step 3: Azure にログインする
</div>

コンテナー内で、Azure アカウントにログインします。

```bash theme={null}
# Azureにログイン（認証のためブラウザが開きます）
az login

# サブスクリプションを設定する
az account set --subscription <subscription_id>
```

<Note>
  `<subscription_id>` をお使いの Azure サブスクリプション ID に置き換えてください。
</Note>

<div id="step-4-create-resource-group">
  ## Step 4: リソース グループを作成する
</div>

使用する Azure リージョンにリソース グループを作成します。

```bash theme={null}
az group create --location <location> --resource-group <resource_group_name>
```

**例:**

```bash theme={null}
az group create --location eastus --resource-group vantage-prod-rg
```

よく使用される Azure リージョン: `eastus`, `eastus2`, `westus2`, `westeurope`, `northeurope`

<div id="step-5-create-aks-cluster">
  ## Step 5: AKS Cluster を作成する
</div>

### デプロイのプレビュー

まず、作成されるリソースを確認します。

```bash theme={null}
az deployment group what-if --name aks-cluster \
  --resource-group <resource_group_name> \
  --template-file files/infrastructure/azure/arms/Cluster.Manual.json \
  --parameters kubernetesClusterName=<cluster_name>
```

<Warning>
  クラスター名は **15 文字** を超えないようにしてください。
</Warning>

<div id="create-the-cluster">
  ### クラスターの作成
</div>

```bash theme={null}
az deployment group create --name aks-cluster \
  --resource-group <resource_group_name> \
  --template-file files/infrastructure/azure/arms/Cluster.Manual.json \
  --parameters kubernetesClusterName=<cluster_name> \
  --parameters enableFIPS=false
```

<Note>
  このコマンドは、8 時間で 50,000 ページを処理できる**高可用性なし**構成のクラスターを作成します。その他の構成については、クラスターの作成後に [パフォーマンス ガイド](/ja/vantage/self-hosted/v2.7/performance-guide) を参照してノード プールの設定を変更してください。
</Note>

FIPS 準拠のデプロイでは、`enableFIPS=true` を設定してください。追加の構成については、[FIPS コンプライアンス](/ja/vantage/self-hosted/v2.7/fips-compliance) を参照してください。

<div id="step-6-create-storage-accounts">
  ## Step 6: ストレージ アカウントを作成する
</div>

<div id="preview-the-deployment">
  ### デプロイ内容を事前確認する
</div>

```bash theme={null}
az deployment group what-if --name storage \
  --resource-group <resource_group_name> \
  --template-file files/infrastructure/azure/arms/StorageAccounts.Template.json
```

<div id="create-storage-accounts">
  ### ストレージ アカウントの作成
</div>

```bash theme={null}
az deployment group create --name storage \
  --resource-group <resource_group_name> \
  --template-file files/infrastructure/azure/arms/StorageAccounts.Template.json \
  --parameters kubernetesClusterName=<cluster_name> \
  --parameters enableFIPS=false
```

<div id="retrieve-storage-account-keys">
  ### ストレージ アカウント キーを取得する
</div>

`env_specific.yml` の `s3storage` セクションに設定するアクセス キーとシークレット キーを取得します。

```bash theme={null}
az deployment group show --name storage \
  --resource-group <resource_group_name> \
  --query properties.outputs -o yaml
```

出力内容を保存してください。これらの値は `env_specific.yml` 設定ファイルで使用します。

<div id="step-7-create-azure-sql-server">
  ## Step 7: Azure SQL Serverを作成する
</div>

### デプロイをプレビューする

```bash theme={null}
az deployment group what-if --name dbservers \
  --resource-group <resource_group_name> \
  --template-file files/infrastructure/azure/arms/Databases/DB.Server.Template.json \
  --parameters serverBaseName=<cluster_name> \
  --parameters dbAdminLogin=<db_username> \
  --parameters dbAdminPassword=<db_password>
```

<div id="create-sql-server">
  ### SQL Server を作成する
</div>

```bash theme={null}
az deployment group create --name dbservers \
  --resource-group <resource_group_name> \
  --template-file files/infrastructure/azure/arms/Databases/DB.Server.Template.json \
  --parameters serverBaseName=<cluster_name> \
  --parameters dbAdminLogin=<db_username> \
  --parameters dbAdminPassword=<db_password>
```

<Note>
  `dbAdminLogin` と `dbAdminPassword` のパラメーターは、データベースにアクセスするための認証情報です。`env_specific.yml` の設定に使用するため、これらを保存しておいてください。
</Note>

<div id="step-8-create-azure-sql-database">
  ## Step 8: Azure SQL Database の作成
</div>

### デプロイをプレビューする

```bash theme={null}
az deployment group what-if --name databases \
  --resource-group <resource_group_name> \
  --template-file files/infrastructure/azure/arms/Databases/SQL.Databases.Template.json \
  --parameters serverBaseName=<cluster_name>
```

<div id="create-database">
  ### データベースを作成
</div>

```bash theme={null}
az deployment group create --name databases \
  --resource-group <resource_group_name> \
  --template-file files/infrastructure/azure/arms/Databases/SQL.Databases.Template.json \
  --parameters serverBaseName=<cluster_name>
```

<div id="step-9-get-node-resource-group">
  ## Step 9: ノードの リソース グループ を取得する
</div>

AKS クラスターのノード リソース グループ 名を取得します:

```bash theme={null}
az aks show --name <cluster_name> -g <resource_group_name> \
  --query nodeResourceGroup -o tsv
```

この値は保存しておいてください。後で、このリソース グループにパブリック IP アドレスを配置します。

<div id="step-10-configure-public-ip-address">
  ## ステップ 10: パブリック IP アドレスを設定する
</div>

1. **Azure Public IP** (Standard Static IPv4) を Step 9 のノード リソース グループ に作成するか、既存の Public IP をその リソース グループ に移動します。

2. **`env_specific.yml` の設定で使用する IP アドレスを控えます**。

   ```yaml theme={null}
   loadbalancer:
     external_ip: <your_public_ip_address>
   ```

3. **DNS の A レコードを作成して**、ドメインがこの IP アドレスを指すようにします。

<div id="step-11-install-gpu-driver-optional">
  ## 手順 11: GPU ドライバーをインストールする (任意)
</div>

Deep Learning を使用した Skill の学習用に GPU ワーカーをデプロイする予定がある場合:

```bash theme={null}
ansible-playbook -i inventories/azure -v \
  playbooks/infrastructure/azure/02_install_gpu_driver.yml
```

GPU のデプロイ要件については、[システム要件](/ja/vantage/self-hosted/v2.7/system-requirements)を参照してください。

<div id="summary-of-created-resources">
  ## 作成されるリソースの概要
</div>

これらの手順を完了すると、次のリソースが作成されます。

| リソース                           | 用途                             |
| ------------------------------ | ------------------------------ |
| Resource Group                 | すべての Vantage リソースを格納するコンテナー    |
| AKS Cluster                    | Vantage を実行する Kubernetes クラスター |
| Services Node Pool             | Vantage プラットフォームサービスを実行        |
| Workers Node Pool              | 文書処理ワーカーを実行                    |
| Skills Storage Account         | Skill の定義と構成を保存                |
| Processing Storage Account     | 処理中の文書を保存                      |
| Temporary Storage Account      | トランザクションを一時保存                  |
| Shared Folders Storage Account | インポート/エクスポート用共有フォルダーへのアクセス     |
| Archive Storage Account        | 文書の長期アーカイブを保存                  |
| Azure SQL Server               | データベース サーバー                    |
| Azure SQL Database             | Vantage の運用データベース              |
| Public IP Address              | Vantage への外部アクセス               |

<div id="next-steps">
  ## 次のステップ
</div>

インフラストラクチャを作成したら:

1. **env\_specific.yml を設定** - このガイドに記載されている値を設定します。設定形式の詳細については、[インストール](/ja/vantage/self-hosted/v2.7/installation)を参照してください。

2. **コンテナーイメージをダウンロード** - Vantage のイメージをContainer Registryに同期します。

3. **インストールを実行** - プレイブックを使用してインストールを完了します。

完全なインストール手順については、[インストール](/ja/vantage/self-hosted/v2.7/installation)を参照してください。

<div id="troubleshooting">
  ## トラブルシューティング
</div>

<div id="deployment-fails-with-permission-error">
  ### デプロイが権限エラーで失敗する
</div>

Azure アカウントに次の権限があることを確認してください。

* サブスクリプションまたはリソース グループに対する共同作成者アクセス
* AKS クラスター、ストレージ アカウント、SQL データベースを作成する権限

<div id="cluster-name-too-long">
  ### クラスター名が長すぎます
</div>

クラスター名は15文字以内にしてください。より短い名前を使用してください。

<div id="storage-account-name-already-exists">
  ### ストレージ アカウント名は既に存在します
</div>

Azure ストレージ アカウント名はグローバルで一意である必要があります。ARM テンプレートはクラスター名に基づいて名前を生成します。競合が発生する場合は、別のクラスター名を試してください。

<div id="cannot-connect-to-sql-database">
  ### SQL Database に接続できない
</div>

Azure SQL Database のファイアウォール ルールで、AKS クラスターの送信元 IP アドレスからの接続が許可されていることを確認してください。仮想ネットワーク ルールを追加するか、Azure サービスを許可する必要がある場合があります。

<div id="related-documentation">
  ## 関連 Documentation
</div>

* [システム要件](/ja/vantage/self-hosted/v2.7/system-requirements) - インフラストラクチャ要件の詳細
* [インストール](/ja/vantage/self-hosted/v2.7/installation) - インストール ガイドの詳細
* [FIPS コンプライアンス](/ja/vantage/self-hosted/v2.7/fips-compliance) - FIPS 対応のデプロイメント
* [パフォーマンス ガイド](/ja/vantage/self-hosted/v2.7/performance-guide) - スケーリングとパフォーマンス チューニング
