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

# Instalación

> Instale ABBYY Vantage autoalojado en máquinas virtuales o Azure AKS: prepare los recursos, configure las credenciales, ejecute los scripts del instalador y valide la implementación.

<Warning>
  **Vantage 3.0 reemplaza este modelo de implementación.** Vantage 2.7 y las versiones anteriores requerían la infraestructura especificada por ABBYY, creada mediante scripts de Ansible y Azure CLI proporcionados por ABBYY. Este modelo no es compatible con la versión 3.0: usted aprovisiona su propia infraestructura y ABBYY no proporciona scripts de aprovisionamiento ni ningún otro tipo de automatización de infraestructura. Esta página se aplica únicamente a Vantage 2.7. Consulte la [descripción general de Vantage 3.0](/es/vantage/self-hosted/v3.0/introduction) y [Migrar desde Vantage 2.7](/es/vantage/self-hosted/v3.0/migration-from-2.7).
</Warning>

<div id="installation-overview">
  ## Descripción general de la instalación
</div>

Para instalar Vantage, siga estos pasos:

1. Prepare los recursos.
2. Especifique las credenciales de los recursos.
3. Ejecute los scripts de instalación.

<div id="preparing-resources">
  ## Preparación de recursos
</div>

<Tabs>
  <Tab title="Máquinas virtuales">
    Antes de empezar, asegúrese de que se cumplan todos los requisitos indicados en la sección [Requisitos del sistema](/es/vantage/self-hosted/v2.7/system-requirements).
  </Tab>

  <Tab title="Azure AKS">
    <Warning>
      **¡Complete primero la creación de infraestructura de Azure!**

      Antes de continuar, debe crear todos los recursos de Azure necesarios (clúster de AKS, cuentas de almacenamiento, base de datos SQL). Complete primero la guía [creación de infraestructura de Azure](/es/vantage/self-hosted/v2.7/azure-infrastructure).

      Para implementaciones gubernamentales que cumplan con FIPS, consulte [Cumplimiento de FIPS](/es/vantage/self-hosted/v2.7/fips-compliance).
    </Warning>
  </Tab>
</Tabs>

<div id="specifying-resource-credentials">
  ## Especificar las credenciales de los recursos
</div>

Antes de ejecutar el instalador:

1. Configure los archivos de configuración.
2. Prepare los certificados.
3. Descargue las imágenes de contenedor.

<div id="setting-up-configuration-files">
  ### Preparación de los archivos de configuración
</div>

**1. Cree el directorio de instalación:**

Cree un directorio de instalación y sus subdirectorios (**ssh**, **kube**, **ssl**), donde se llevará a cabo la instalación. Vaya al directorio de instalación.

```bash theme={null}
mkdir -p /opt/vantage-install/{ssh,kube,ssl} && cd /opt/vantage-install
```

<Tabs>
  <Tab title="Máquinas virtuales">
    **2. Cree el archivo de clave SSH:**

    Cree un archivo llamado `ansible` en la carpeta `ssh` y coloque en él la clave SSH privada del usuario ansible.

    **3. Cree el archivo de inventario:**

    Cree un archivo `inventory` en el directorio de instalación. Sustituya `X.X.X.X` por las direcciones IP de sus máquinas virtuales:

    ```ini theme={null}
    [localhost]
    127.0.0.1

    ###########################################
    [kube_control_plane]
    ub01master01 ansible_host=X.X.X.X

    [abbyy_services]
    ub01worker12-48-s01 ansible_host=X.X.X.X

    [abbyy_workers]
    ub01worker12-48-w01 ansible_host=X.X.X.X
    ub01worker12-48-w02 ansible_host=X.X.X.X
    ub01worker12-48-w03 ansible_host=X.X.X.X

    ###########################################
    [kube_workers:children]
    abbyy_services
    abbyy_workers

    [kube_cluster:children]
    kube_control_plane
    kube_workers
    ```

    <Note>
      Si solo necesita 1 o 2 máquinas para workers en lugar de 3, elimine las líneas sobrantes de la sección `[abbyy_workers]`.
    </Note>
  </Tab>

  <Tab title="Azure AKS">
    Los pasos 2 y 3 no son necesarios para las implementaciones de Azure AKS. Continúe con el paso 4.
  </Tab>
</Tabs>

**4. Cree el archivo env\_specific.yml:**

Especifique sus valores.

<Tabs>
  <Tab title="Máquinas virtuales">
    ```yaml theme={null}
    env: null
    poc: true

    domain: null
    product_host: "{{ env }}.{{ domain }}"

    logging:
      enabled: true
      elasticsearch:
        enabled: false
        host: null
        port: 9200
        username: null
        password: null
        scheme: https
      file:
        enabled: true

    loadbalancer:
      external_ip: X.X.X.X

    k8s:
      api:
        ip: X.X.X.X

    techcore:
      use_gpu_workers: false
      use_nn_extraction_training_workers: false

    platform_admin_email: admin@yourdomain.tld

    source_container_registry_host: abyvtgonprm27.azurecr.io
    source_container_registry_user: null      # reemplazar con las credenciales obtenidas durante el proceso de adquisición
    source_container_registry_password: null  # reemplazar con las credenciales obtenidas durante el proceso de adquisición
    source_container_registry_name: "{{ source_container_registry_host }}"

    container_registry_host: registry.yourdomain.tld
    container_registry_user: null
    container_registry_password: null
    container_registry_name: "{{ container_registry_host }}/vantage"

    smtp:
      host: null
      login: null
      password: null
      port: 587
      useSSL: false
      secureSocketOptions: null

    database:
      host: X.X.X.X
      port: 1433
      username: null
      password: null

    reporting:
      enabled: false

    id_reading:
      enabled: false
    ```
  </Tab>

  <Tab title="Azure AKS">
    ```yaml theme={null}
    env: vantage
    poc: false  # Establézcalo en true para la configuración sin alta disponibilidad

    domain: yourdomain.tld
    product_host: "vantage.{{ domain }}"

    loadbalancer:
      external_ip: X.X.X.X  # Dirección IP pública de Azure

    container_registry_host: "registry.yourdomain.tld"
    container_registry_user: "service"
    container_registry_password: "password"
    container_registry_name: "{{ container_registry_host }}/vantage"

    techcore:
      use_gpu_workers: false
      use_nn_extraction_training_workers: false

    logging:
      enabled: true
      elasticsearch:
        enabled: false
        host: null
        port: 9200
        username: null
        password: null
        scheme: https
        ilm:
          create: false
      file:
        enabled: true

    platform_admin_email: admin@yourdomain.tld

    # Configuración de correo electrónico: use SendGrid o SMTP
    sendgrid:
      enabled: false
      apiKey: ""

    smtp:
      host: X.X.X.X
      login: null
      password: ""
      port: 587
      useSSL: false

    mailFrom: noreply@yourdomain.tld

    # Configuración de la base de datos SQL de Azure
    database:
      type: sqlserver
      host: X.X.X.X  # nombre de host de Azure SQL Server
      username: login
      password: password
      encrypt: false

    # Cuentas de almacenamiento de Azure: reemplácelas por las credenciales de su cuenta de almacenamiento
    s3storage:
      skills:
        accessKey: skills_storage_account_name
        secretKey: skills_storage_account_key
      processing:
        accessKey: processing_storage_account_name
        secretKey: processing_storage_account_key
      temporary:
        accessKey: temporary_storage_account_name
        secretKey: temporary_storage_account_key
      sharedfolder:
        accessKey: sharedfolder_storage_account_name
        secretKey: sharedfolder_storage_account_key
        resourcegroup: your_resource_group
      archive:
        accessKey: archive_storage_account_name
        secretKey: archive_storage_account_key

    # Configuración del clúster de Redis (obligatoria solo para alta disponibilidad)
    # Deje arrays vacíos para la configuración sin alta disponibilidad
    redis:
      ips: ['172.16.10.101', '172.16.10.102', '172.16.10.103', '172.16.10.104', '172.16.10.105', '172.16.10.106']
      port: 6379
      password: redispassword
      ssl: false

    reporting:
      enabled: false

    id_reading:
      enabled: false

    k8s_fips_enabled: false
    ```

    <Note>
      En la sección `s3storage`, `accessKey` es el nombre de la cuenta de almacenamiento de Azure y `secretKey` es la clave de acceso de la cuenta de almacenamiento. Puede obtenerlos en Azure portal o con Azure CLI.
    </Note>
  </Tab>
</Tabs>

<div id="configuration-parameters">
  ### Parámetros de configuración
</div>

| Parameter                              | Descripción                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| -------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `env`                                  | Prefijo de instalación, usado de forma predeterminada como nombre de subdominio.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| `poc`                                  | `true` para sin alta disponibilidad, `false` para alta disponibilidad.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| `domain`                               | El dominio principal.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| `product_host`                         | Nombre DNS para acceder al producto (predeterminado: `env.domain`).                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| `logging.enabled`                      | Habilita o deshabilita el registro (`true`/`false`).                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| `logging.elasticsearch.enabled`        | Especifica si Elasticsearch debe estar habilitado. Este parámetro puede establecerse en **true** o **false**. **Nota:** Establezca el valor del parámetro en **true** solo si ya tiene Elasticsearch y desea conectar los logs de Vantage a él. Si no tiene instancias existentes de Elasticsearch y Kibana, puede implementarlas en un cluster siguiendo las instrucciones de Elasticsearch y Kibana. Esto debe hacerse antes de instalar el producto.                                                                                                                                                                                                                                                 |
| `logging.elasticsearch.host`           | La dirección IP del servidor.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| `logging.elasticsearch.port`           | El puerto usado para conectarse a Elasticsearch.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| `logging.elasticsearch.username`       | El nombre de usuario usado para conectarse a Elasticsearch.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| `logging.elasticsearch.password`       | La contraseña usada para conectarse a Elasticsearch.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| `logging.elasticsearch.scheme`         | El esquema de protocolo usado para conectarse a Elasticsearch.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| `logging.file.enabled`                 | Especifica si los logs deben escribirse en archivos. Este parámetro puede establecerse en **true** o **false**.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| `loadbalancer.external_ip`             | Dirección IP flotante del balanceador.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| `k8s.api.ip`                           | Dirección IP del API endpoint de Kubernetes.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| `securityContext.global.runAsUser`     | Especifica el identificador del usuario con el que debe ejecutarse el proceso del container. Esta configuración solo se aplica a los pods que trabajan con almacenes rwx externos (como NFS). De forma predeterminada, el parámetro se establece en **65532**.                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| `securityContext.global.runAsGroup`    | Especifica el identificador del grupo con el que debe ejecutarse el proceso del container.<br /><br />Esta configuración solo se aplica a los pods que trabajan con almacenes rwx externos (como NFS). De forma predeterminada, el parámetro se establece en **65532**.                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| `securityContext.global.fsGroup`       | Especifica el identificador del grupo que será el propietario de los volúmenes adjuntos al pod. Esta configuración solo se aplica a los pods que trabajan con almacenes rwx externos (como NFS). De forma predeterminada, el parámetro se establece en **65532**.                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| `techcore.nn_training_workers.gpu`     | Especifica si deben implementarse los workers de GPU. Los workers de GPU se usan para entrenar skills con la actividad Deep Learning a fin de extraer datos de documentos semiestructurados. Este parámetro puede establecerse en **true** o **false**. Si el parámetro se establece en **true**, el parámetro `techcore.nn_training_workers.enabled` también debe establecerse en **true**. Puede implementar esta opción y establecer los parámetros `techcore.nn_training_workers.gpu` y `techcore.nn_training_workers.enabled` en **true** antes o después de instalar Vantage. Para obtener más información, consulte [Setting up GPU](/es/vantage/self-hosted/v2.7/configuration#setting-up-gpu). |
| `techcore.nn_training_workers.enabled` | Especifica si deben implementarse los workers nn-extraction-training y nlp-model-train. Estos workers se usan para entrenar skills con la actividad Deep Learning y extraer datos de documentos semiestructurados mediante la CPU. Este parámetro puede establecerse en **true** o **false**.                                                                                                                                                                                                                                                                                                                                                                                                           |
| `techcore.keep_previous_version`       | Especifica si la versión 2 de Technology Core debe conservarse al actualizar Vantage. De forma predeterminada, el parámetro `techcore.keep_previous_version` no se especifica y la versión 2 de Technology Core se elimina. Para conservarla, establezca el valor del parámetro en **true**.                                                                                                                                                                                                                                                                                                                                                                                                            |
| `platform_admin_email`                 | Correo electrónico del Administrador del sistema.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| `container_registry_host`              | Nombre de dominio del container registry.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| `container_registry_user`              | El nombre del usuario con permisos para descargar imágenes del container registry. Este parámetro se deja en blanco si no hay container registry.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| `container_registry_password`          | Contraseña o token para descargar imágenes del container registry. Este parámetro se deja en blanco si no hay container registry.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| `container_registry_name`              | El directorio del container registry donde se alojan las imágenes.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| `smtp.host`                            | Dirección IP o nombre de host del SMTP Server.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| `smtp.login`                           | El nombre de usuario usado para conectarse al SMTP Server.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| `smtp.password`                        | La contraseña usada para conectarse al SMTP Server.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| `smtp.port`                            | El puerto del SMTP Server.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| `smtp.useSSL`                          | Especifica si debe usarse una conexión cifrada. Este parámetro puede establecerse en **true** o **false**.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| `smtp.secureSocketOptions`             | Especifica el cifrado SSL y/o TLS que debe usarse para la conexión.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| `database.enabled`                     | Especifica si el servidor de base de datos debe habilitarse.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| `database.host`                        | Dirección IP de SQL Server.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| `database.port`                        | Puerto del servidor de base de datos.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| `database.username`                    | Nombre de usuario utilizado para conectarse a la base de datos (el usuario debe tener los privilegios necesarios para crear bases de datos).                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| `database.password`                    | Contraseña utilizada para acceder a la base de datos.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| `reporting.enabled`                    | Especifica si debe desplegarse el Reporting Service de Warehouse. Este parámetro puede establecerse en **true** o **false**.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| `id_reading.enabled`                   | Especifica si debe desplegarse el complemento de documentos de identidad. Este parámetro puede establecerse en **true** o **false**.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |

Los siguientes cuatro parámetros son opcionales y solo se requieren si se está instalando la configuración de alta disponibilidad y si el instalador de Vantage requiere la instalación de Redis.

| Parámetro        | Descripción                                                                                                                                                                                           |
| :--------------- | :---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `redis.ips`      | La dirección IP del clúster de Redis en el siguiente formato: \['192.168.0.1''192.168.0.2',,'192.168.0.3']. Si el parámetro se define como \[], se implementará una instancia de Redis en el clúster. |
| redis.port       | El puerto utilizado para conectarse al clúster de Redis.                                                                                                                                              |
| `redis.password` | La contraseña utilizada para conectarse a Redis.                                                                                                                                                      |
| `redis.ssl`      | Especifica si debe utilizarse una conexión cifrada al clúster de Redis. Este parámetro puede establecerse en **true** o **false**.                                                                    |

Todos los demás parámetros permanecen sin cambios.

<div id="preparing-certificates">
  ### Preparación de certificados
</div>

1. Vaya al directorio ssl. Coloque en ese directorio el certificado comodín (junto con el certificado intermedio) correspondiente al nombre de dominio principal y la clave (en formato PEM) en los siguientes archivos, respectivamente: ./ssl/cert.pem, ./ssl/key.pem. Debe convertir el archivo CRT a PEM cambiando su contenido al siguiente formato:

```text theme={null}
-----BEGIN CERTIFICATE-----
[your certificate]
-----END CERTIFICATE-----
```

2. Si utiliza un proveedor de autenticación externo (ADFS) con un certificado firmado por una CA interna, coloque el certificado raíz en `./ssl/adfs-root.pem`.

<Note>
  Si se accede a endpoints de terceros desde Vantage (scripts de actividad personalizada o autenticación externa), el endpoint externo debe tener un certificado emitido por una autoridad pública.
</Note>

<div id="running-the-installation-scripts">
  ## Ejecución de los scripts de instalación
</div>

La instalación de ABBYY Vantage es automática. Se lleva a cabo con la herramienta Ansible, que se instala y configura dentro del contenedor utilizado para la instalación. Ansible interactúa con las máquinas mediante varios escenarios de configuración (playbooks de YAML).

Para instalar ABBYY Vantage, siga estos pasos:

**1. Vaya al directorio de instalación.**

**2. Inicie sesión en el registro de distribución del instalador**

```bash theme={null}
# reemplace <username> y <password> con las credenciales obtenidas durante la adquisición
docker login abyvtgonprm27.azurecr.io -u <username> -p <password>
```

**3. Ejecute el instalador desde una imagen de Docker si aún no lo ha hecho:**

<Tabs>
  <Tab title="Máquinas virtuales">
    ```bash theme={null}
    docker run -it \
    -v $PWD/kube:/home/ansible/.kube \
    -v $PWD/ssh/ansible:/home/ansible/.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 \
    abyvtgonprm27.azurecr.io/vantage-installer:2.7.1
    ```

    | Parámetro                                                                           | Descripción                                                                                                                        |
    | :---------------------------------------------------------------------------------- | :--------------------------------------------------------------------------------------------------------------------------------- |
    | `-v $PWD/kube:/home/ansible/.kube`                                                  | La ruta al directorio de Kubernetes donde se almacena el archivo kube/config.                                                      |
    | `-v $PWD/ssh/ansible:/home/ansible/.ssh/ansible`                                    | La ruta a la clave SSH privada necesaria para instalar y configurar el clúster de Kubernetes y algunos prerrequisitos.             |
    | `-v "//var/run/docker.sock:/var/run/docker.sock"`                                   | Obligatorio para sincronizar imágenes con su registro de contenedores.                                                             |
    | `-v $PWD/inventory:/ansible/inventories/k8s/inventory`                              | La ruta al archivo **inventory**.                                                                                                  |
    | `-v $PWD/env_specific.yml:/ansible/inventories/k8s/group_vars/all/env_specific.yml` | La ruta al archivo **env\_specific.yml**.                                                                                          |
    | `-v $PWD/ssl:/ansible/files/ssl:ro`                                                 | La ruta a la carpeta con certificados SSL, que debe contener los siguientes archivos: **cert.pem**, **key.pem**, **adfsroot.pem**. |
  </Tab>

  <Tab title="Azure AKS">
    ```bash theme={null}
    docker run -it \
    -v $PWD/env_specific.yml:/ansible/inventories/azure/group_vars/all/env_specific.yml \
    -v $PWD/ssl:/ansible/files/ssl:ro \
    abyvtgonprm27.azurecr.io/vantage-installer:2.7.1
    ```

    | Parámetro                                                                             | Descripción                                                                                                                        |
    | :------------------------------------------------------------------------------------ | :--------------------------------------------------------------------------------------------------------------------------------- |
    | `-v $PWD/env_specific.yml:/ansible/inventories/azure/group_vars/all/env_specific.yml` | La ruta al archivo **env\_specific.yml**.                                                                                          |
    | `-v $PWD/ssl:/ansible/files/ssl:ro`                                                   | La ruta a la carpeta con certificados SSL, que debe contener los siguientes archivos: **cert.pem**, **key.pem**, **adfsroot.pem**. |
  </Tab>
</Tabs>

**4. Conéctese al clúster de Azure AKS:**

<Tabs>
  <Tab title="Máquinas virtuales">
    Omita este paso en implementaciones en máquinas virtuales; las credenciales del clúster se configuran automáticamente durante la instalación de Kubernetes en el paso 7.
  </Tab>

  <Tab title="Azure AKS">
    Cuando se inicie el contenedor Docker, autentíquese en Azure y conéctese a su clúster de AKS:

    ```bash theme={null}
    # Inicie sesión en Azure
    az login

    # Establezca la suscripción (reemplace con su ID de suscripción)
    az account set --subscription <subscription_id>

    # Obtenga las credenciales del clúster de AKS (reemplace con su grupo de recursos y el nombre del clúster)
    az aks get-credentials --resource-group <resource_group_name> --name <cluster_name>

    # Verifique la conectividad del clúster
    kubectl cluster-info
    ```
  </Tab>
</Tabs>

**5. Descargue las imágenes de contenedor**

Los scripts de migración dependen de las siguientes propiedades de `env_specific.yml`

```yaml theme={null}
source_container_registry_host: sourcerepo.azurecr.io
source_container_registry_user: user
source_container_registry_password: pass
source_container_registry_name: "{{ source_container_registry_host }}/optional/subpath"

container_registry_host: destinationrepo.azurecr.io
container_registry_user: user
container_registry_password: pass
container_registry_name: "{{ container_registry_host }}/optional/subpath"
```

<Tabs>
  <Tab title="Máquinas virtuales">
    ```bash theme={null}
    ansible-playbook -i inventories/k8s playbooks/validate-artifact-manifest.yml
    ansible-playbook -i inventories/k8s playbooks/oci-migration.yml
    ```
  </Tab>

  <Tab title="Azure AKS">
    ```bash theme={null}
    ansible-playbook -i inventories/azure playbooks/validate-artifact-manifest.yml
    ansible-playbook -i inventories/azure playbooks/oci-migration.yml
    ```
  </Tab>
</Tabs>

<Tabs>
  <Tab title="Máquinas virtuales">
    **6. Configure los permisos de la clave SSH:**

    ```bash theme={null}
    chmod 600 /home/ansible/.ssh/ansible
    ```

    **7. Instale y configure el clúster de Kubernetes:**

    ```bash theme={null}
    ansible-playbook -i inventories/k8s -v playbooks/4-Kubernetes-k8s.yml
    ```
  </Tab>

  <Tab title="Azure AKS">
    Los pasos 6 y 7 no son necesarios para las implementaciones en Azure AKS; el clúster de Kubernetes ya se aprovisionó mediante la guía de creación de infraestructura de Azure. Continúe con el paso 8.
  </Tab>
</Tabs>

**8. Ejecute la comprobación previa a la implementación y acepte los documentos legales:**

<Tabs>
  <Tab title="Máquinas virtuales">
    ```bash theme={null}
    ansible-playbook -i inventories/k8s -v playbooks/0-PreflightCheck-k8s.yml
    ansible-playbook -i inventories/k8s -v playbooks/legal.yml
    ```
  </Tab>

  <Tab title="Azure AKS">
    ```bash theme={null}
    ansible-playbook -i inventories/azure playbooks/0-PreflightCheck-azure.yml
    ansible-playbook -i inventories/azure playbooks/legal.yml
    ```
  </Tab>
</Tabs>

El playbook hará lo siguiente:

* Realizará una comprobación preliminar de los recursos cuyos parámetros se especifican en el archivo `env_specific.yml` del playbook (como la base de datos y la conexión SMTP).
* Pedirá al Administrador del sistema que acepte los términos del EULA y la Política de privacidad de ABBYY.

**9. Instale el producto:**

<Tabs>
  <Tab title="Máquinas virtuales">
    ```bash theme={null}
    ansible-playbook -i inventories/k8s -v playbooks/site-k8s-deploy.yml
    ```
  </Tab>

  <Tab title="Azure AKS">
    ```bash theme={null}
    ansible-playbook -i inventories/azure playbooks/site-azure-deploy.yml
    ```
  </Tab>
</Tabs>

El playbook implementará el sistema de recopilación de métricas y registros, e implementará ABBYY Vantage. El tiempo necesario para completar el proceso de instalación dependerá del rendimiento de las máquinas seleccionadas. En promedio, el proceso tardará unos 10 minutos. Puede supervisar los pods y la ejecución del trabajo en un clúster con cualquier herramienta para Kubernetes, por ejemplo, la utilidad Lens. Para ello, utilice el archivo `kubeconfig` que se creará en la carpeta `kube` después de instalar Kubernetes en las máquinas virtuales. También puede descargar los archivos de registro de la instalación de Ansible en su equipo local siguiendo los pasos que se indican a continuación:

1. Cierre sesión en el contenedor Docker.
2. Ejecute el siguiente comando para obtener la lista de contenedores:

```bash theme={null}
docker ps -a
```

Busque el nombre del contenedor que contiene el instalador.

3. Ejecute el siguiente comando y reemplace **container\_name** por el nombre del contenedor para obtener los logs:

```bash theme={null}
docker cp container_name:/ansible/ansible.log ansible.log
```

Una vez finalizada la implementación, se le proporcionará lo siguiente:

* La URL del nombre de dominio proporcionado.
* El login y la contraseña del Administrador del sistema, que se pueden usar para iniciar sesión, crear tenants y procesar documentos.

<div id="getting-installation-logs">
  ### Cómo obtener los registros de instalación
</div>

```bash theme={null}
# Salga del contenedor Docker y, a continuación:
docker ps -a
# Busque el nombre del contenedor y, a continuación:
docker cp container_name:/ansible/ansible.log ansible.log
```

<div id="optional-deployments">
  ## Implementaciones opcionales
</div>

<div id="deploying-the-logging-system">
  ### Despliegue del sistema de registro
</div>

Si el sistema de registro no estaba habilitado en Vantage (el valor del parámetro `logging.enabled` en el archivo `env_specific.yml` era **false**) durante la instalación, puede habilitarlo después de instalar Vantage. Para ello, establezca el valor del parámetro `logging.enabled` en el archivo `env_specific.yml` en **true** y ejecute el siguiente comando:

<Tabs>
  <Tab title="Máquinas virtuales">
    ```bash theme={null}
    ansible-playbook -i inventories/k8s playbooks/6-DeployMonitoring-k8s.yml
    ```
  </Tab>

  <Tab title="Azure AKS">
    ```bash theme={null}
    ansible-playbook -i inventories/azure playbooks/6-DeployMonitoring-azure.yml
    ```
  </Tab>
</Tabs>

<div id="deploying-business-processing-reporting-warehouse">
  ### Despliegue de Business Processing Reporting Warehouse
</div>

Business Processing Reporting Warehouse se utiliza para analizar el proceso de negocio y los datos de seguimiento durante períodos específicos. Durante la instalación de Vantage, Business Processing Reporting Warehouse también se instalará si el valor del parámetro `reporting.enabled` del archivo env\_specific.yml se estableció en **true**. Si el valor del parámetro `reporting.enabled` se estableció en **false**, puede instalar Business Processing Reporting Warehouse después de instalar Vantage ejecutando el siguiente comando:

<Tabs>
  <Tab title="Máquinas virtuales">
    ```bash theme={null}
    ansible-playbook -i inventories/k8s -v playbooks/deploy-reporting.yml
    ```
  </Tab>

  <Tab title="Azure AKS">
    ```bash theme={null}
    ansible-playbook -i inventories/azure -v playbooks/deploy-reporting.yml
    ```
  </Tab>
</Tabs>

<Warning>
  Después de la instalación, debe reiniciar los pods de Public API para que se cargue la URL de reporting correcta.
</Warning>

<div id="deploying-the-identity-documents-add-on">
  ### Implementación del complemento Identity Documents
</div>

<Note>
  El complemento Identity Documents requiere que Vantage tenga acceso a Internet a `https://lic.regulaforensics.com` y `https://lic2.regulaforensics.com`.
</Note>

El servicio del complemento Identity Documents permite ejecutar la skill Identity Documents, que se utiliza para extraer datos de documentos de identidad emitidos en distintos países.

Durante la instalación de Vantage, el complemento Identity Documents también se instalará si el valor del parámetro `id_reading.enabled` en el archivo `env_specific.yml` se estableció en **true**. Si el valor del parámetro `id_reading.enabled` se estableció en false, puede instalar el complemento Identity Documents después de instalar Vantage ejecutando el siguiente comando:

<Tabs>
  <Tab title="Máquinas virtuales">
    ```bash theme={null}
    ansible-playbook -i inventories/k8s -v playbooks/12-DeployDocumentReader.yml
    ```
  </Tab>

  <Tab title="Azure AKS">
    ```bash theme={null}
    ansible-playbook -i inventories/azure -v playbooks/12-DeployDocumentReader.yml
    ```
  </Tab>
</Tabs>

Es necesario habilitar el acceso a las siguientes direcciones desde el clúster donde está instalada Vantage:

[https://lic.regulaforensics.com](https://lic.regulaforensics.com)

[https://lic2.regulaforensics.com](https://lic2.regulaforensics.com)
