Saltar al contenido principal

Descripción general de la instalación

Para instalar Vantage, siga estos pasos:
  1. Prepare los recursos.
  2. Especifique las credenciales de los recursos.
  3. Ejecute los scripts de instalación.

Preparación de recursos

Antes de comenzar, asegúrese de que se cumplan todos los requisitos enumerados en la sección Requisitos del sistema.

Especificar las credenciales de los recursos

Antes de ejecutar el instalador:
  1. Configurar los archivos de configuración.
  2. Preparar los certificados.
  3. Descargar las imágenes de contenedores.

Configuración de los archivos de configuración

1. Cree el directorio de instalación: Cree un directorio de instalación y sus subdirectorios (ssh, kube, ssl), que se utilizarán para llevar a cabo la instalación. Navegue al directorio de instalación.
mkdir -p /opt/vantage-install/{ssh,kube,ssl} && cd /opt/vantage-install
2. Cree el archivo de clave SSH: Cree un archivo llamado ansible en el directorio ssh y coloque en él la clave SSH privada del usuario ansible. 3. Cree el archivo de inventario: Cree un archivo llamado inventory en el directorio de instalación. Sustituya X.X.X.X por las direcciones IP de sus VM:
[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
Si solo necesita 1 o 2 máquinas para workers en lugar de 3, elimine las líneas sobrantes en la sección [abbyy_workers].
4. Cree el archivo env_specific.yml: Especifique sus propios valores.
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: [email protected]

source_container_registry_host: abyvtgonprm27.azurecr.io
source_container_registry_user: null      # reemplazar con las credenciales obtenidas durante el aprovisionamiento
source_container_registry_password: null  # reemplazar con las credenciales obtenidas durante el aprovisionamiento
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

Parámetros de configuración

ParameterDescripción
envPrefijo de instalación que se usa como nombre de subdominio de forma predeterminada.
poctrue para sin alta disponibilidad, false para alta disponibilidad.
domainEl dominio principal.
product_hostNombre DNS para acceder al producto (predeterminado: env.domain).
logging.enabledActiva o desactiva el registro (true/false).
logging.elasticsearch.enabledEspecifica si Elasticsearch debe estar habilitado. Este Parameter se puede configurar en true o false. Nota: Establezca el valor del Parameter en true solo si ya tiene Elasticsearch y desea conectar los registros de Vantage a Elasticsearch. Si no tiene instancias existentes de Elasticsearch y Kibana, puede implementarlas en un clúster siguiendo las instrucciones de Elasticsearch and Kibana. Esto debe hacerse antes de instalar el producto.
logging.elasticsearch.hostLa dirección IP del servidor.
logging.elasticsearch.portEl puerto que se utiliza para conectarse a Elasticsearch.
logging.elasticsearch.usernameEl nombre de usuario que se utiliza para conectarse a Elasticsearch.
logging.elasticsearch.passwordLa contraseña utilizada para conectarse a Elasticsearch.
logging.elasticsearch.schemeEl esquema de protocolo que se utiliza para conectarse a Elasticsearch.
logging.file.enabledEspecifica si se deben escribir los registros en archivos. Este Parameter puede establecerse en true o false.
loadbalancer.external_ipDirección IP flotante del balanceador de carga.
k8s.api.ipDirección IP del endpoint de la API de Kubernetes.
securityContext.global.runAsUserEspecifica el identificador del usuario con el que se debe ejecutar el proceso del contenedor. Esta configuración solo se aplica a pods que trabajan con almacenes rwx externos (como NFS). De forma predeterminada, el parámetro se establece en 65532.
securityContext.global.runAsGroupEspecifica el identificador del grupo como el que debe ejecutarse el proceso del contenedor.

Esta configuración solo se aplica a los pods que utilizan almacenes RWX externos (como NFS). De forma predeterminada, el parámetro se establece en 65532.
securityContext.global.fsGroupEspecifica el identificador del grupo que será propietario de los volúmenes adjuntos al pod. Esta configuración solo se aplica a pods que trabajan con sistemas de almacenamiento externos con acceso rwx (como NFS). De forma predeterminada, el parámetro se establece en 65532.
techcore.nn_training_workers.gpuEspecifica si se deben desplegar los workers de GPU. Los workers de GPU se utilizan para entrenar skills con la actividad Deep Learning para extraer datos de documentos semiestructurados. Este Parameter se puede establecer en true o false. Si el Parameter se establece en true, el Parameter techcore.nn_training_workers.enabled también debe establecerse en true. Puede desplegar esta opción y establecer los Parameters 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 Configuración de GPU.
techcore.nn_training_workers.enabledEspecifica si se deben desplegar los workers nn-extraction-training y nlp-model-train. Estos workers se utilizan para entrenar skills con la actividad Deep Learning para extraer datos de documentos semiestructurados usando la CPU. Este Parameter puede configurarse en true o false.
techcore.keep_previous_versionIndica si debe conservarse la versión 2 del núcleo tecnológico al actualizar Vantage. De manera predeterminada, el parámetro techcore.keep_previous_version no se define y la versión 2 del núcleo tecnológico se elimina. Para conservarla, establezca el valor del parámetro en true.
platform_admin_emailCorreo electrónico del administrador del sistema.
container_registry_hostNombre de dominio del registro de contenedores.
container_registry_userEl nombre del usuario con permisos para descargar imágenes del registro de contenedores. Este Parameter se deja en blanco si no hay registro de contenedores.
container_registry_passwordContraseña o token para descargar imágenes del registro de contenedores. Este Parameter se deja en blanco si no hay registro de contenedores.
container_registry_nameEl directorio del registro de contenedores en el que se alojan las imágenes.
smtp.hostDirección IP o nombre de host del servidor SMTP.
smtp.loginEl nombre de usuario utilizado para conectarse al servidor SMTP.
smtp.passwordLa contraseña que se utiliza para conectarse al servidor SMTP.
smtp.portEl puerto del servidor SMTP.
smtp.useSSLIndica si debe usarse una conexión cifrada. Este Parameter puede establecerse en true o false.
smtp.secureSocketOptionsEspecifica el tipo de cifrado SSL y/o TLS que se debe utilizar para la conexión.
database.enabledIndica si se debe habilitar el servidor de base de datos.
database.hostDirección IP del servidor SQL.
database.portEl puerto del servidor de bases de datos.
database.usernameEl nombre de usuario que se utiliza para conectarse a la base de datos (este usuario debe tener los privilegios necesarios para crear bases de datos).
database.passwordLa contraseña utilizada para conectarse a la base de datos.
reporting.enabledEspecifica si se debe implementar el servicio de informes de Warehouse. Este Parameter se puede establecer en true o false.
id_reading.enabledEspecifica si se debe desplegar el complemento Identity Documents. Este parámetro puede establecerse en true o false.
Los cuatro parámetros siguientes son opcionales y solo son necesarios si se está instalando la configuración de alta disponibilidad y si el instalador de Vantage requiere instalar Redis.
ParameterDescription
redis.ipsLa 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 dentro del clúster.
redis.portEl puerto utilizado para conectarse al clúster de Redis.
redis.passwordLa contraseña utilizada para conectarse a Redis.
redis.sslEspecifica si se debe utilizar una conexión cifrada con el clúster de Redis. Este parámetro se puede establecer en true o false.
Todos los demás parámetros permanecen sin cambios.

Preparar certificados

  1. Vaya al directorio ssl. Coloque el certificado wildcard (junto con el certificado intermedio) correspondiente al nombre de dominio principal dentro de ese directorio y la clave (en formato PEM) en los siguientes archivos, respectivamente: ./ssl/cert.pem, ./ssl/key.pem. Debe convertir su archivo CRT a formato PEM cambiando el contenido del archivo al siguiente formato:
-----BEGIN CERTIFICATE-----
[your certificate]
-----END CERTIFICATE-----
  1. Si utiliza un proveedor de autenticación externo (ADFS) con un certificado firmado por una autoridad de certificación interna, coloque el certificado raíz en ./ssl/adfs-root.pem.
Si Vantage accede a endpoints de terceros (scripts de actividades personalizadas o autenticación externa), el endpoint externo debe contar con un certificado emitido por una autoridad de certificación pública.

Descarga de imágenes de contenedores

Los scripts de migración se basan en las siguientes propiedades del archivo env_specific.yml
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"
¡Importante! Asegúrate de añadir las propiedades necesarias del registro de contenedores de origen y destino a tu env_specific.yml en el tipo de instalación correspondiente, ya sea AKS o VM.
Para /ansible/inventories/azure/group_vars/all/env_specific.yml, ejecuta:
ansible-playbook -i inventories/azure playbooks/validate-artifact-manifest.yml
ansible-playbook -i inventories/azure playbooks/oci-migration.yml
En /ansible/inventories/k8s/group_vars/all/env_specific.yml, ejecute:
ansible-playbook -i inventories/k8s playbooks/validate-artifact-manifest.yml
ansible-playbook -i inventories/k8s playbooks/oci-migration.yml

Ejecución de los scripts de instalación

La instalación de ABBYY Vantage es automática. Se ejecuta con la herramienta Ansible, que se instala y configura dentro del contenedor que se utiliza para la instalación. Ansible interactúa con las máquinas mediante distintos escenarios de configuración (playbooks de YAML). Para instalar ABBYY Vantage, siga estos pasos: 1. Vaya al directorio de instalación. 2. Ejecute el instalador desde una imagen de Docker si aún no lo ha ejecutado:
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 \
registry.local/vantage-installer:2.7.1
ParameterDescripción
-v \$PWD/kube:/root/.kubeLa ruta al directorio de Kubernetes donde se almacena el archivo kube/config.
-v \$PWD/ssh/ansible:/root/ansibleLa ruta a la clave privada SSH necesaria para instalar y configurar el clúster de Kubernetes y algunos prerrequisitos.
-v "//var/run/docker.sock:/var/run/docker.sock"Necesario para sincronizar imágenes con su registro de contenedores.
-v \$PWD/inventory:/ansible/inventories/k8s/inventoryLa ruta al archivo inventory.
-v \$PWD/env_specific.yml:/ansible/inventories/k8s/group_vars/all/env_specific.y mlLa ruta al archivo env_specific.yml.
-v \$PWD/ssl:/ansible/files/ssl:roLa ruta a la carpeta con certificados SSL, que debe contener los siguientes archivos: cert.pem, key.pem, adfsroot.pem.
3. Configurar los permisos de la clave SSH:
chmod 600 /root/.ssh/ansible
4. Ejecute el siguiente comando para instalar y configurar el clúster de Kubernetes en las máquinas virtuales definidas en el archivo de inventario:
ansible-playbook -i inventories/k8s -v playbooks/4-Kubernetes-k8s.yml
5. Ejecute la verificación previa al despliegue y acepte los documentos legales:
ansible-playbook -i inventories/k8s -v playbooks/0-PreflightCheck-k8s.yml
ansible-playbook -i inventories/k8s -v playbooks/legal.yml
El playbook hará lo siguiente:
  • Realizará una comprobación preliminar de los recursos cuyos parámetros se definen en el archivo env_specific.yml del playbook (como las conexiones a la base de datos y a SMTP).
  • Pedirá al administrador del sistema que acepte los términos del EULA y de la Política de privacidad de ABBYY.
6. Instale el producto:
ansible-playbook -i inventories/k8s -v playbooks/site-k8s-deploy.yml
El playbook desplegará el sistema de recopilación de métricas y registros y desplegará ABBYY Vantage. El tiempo necesario para completar el proceso de instalación dependerá del rendimiento de las máquinas seleccionadas. Por lo general, el proceso tomará unos 10 minutos. Puede supervisar los pods y la ejecución de la tarea en un clúster utilizando cualquier herramienta para trabajar con 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 instalación de Ansible en su máquina local siguiendo los pasos que se indican a continuación:
  1. Salga del contenedor de Docker.
  2. Ejecute el siguiente comando para obtener la lista de contenedores:
docker ps -a
Busque el nombre del contenedor que contiene el instalador.
  1. Ejecute el siguiente comando, reemplazando container_name por el nombre del contenedor, para obtener los registros:
docker cp container_name:/ansible/ansible.log ansible.log
Una vez que se haya completado la implementación, se le proporcionará lo siguiente:
  • URL del nombre de dominio proporcionado.
  • Usuario y contraseña de administrador del sistema que podrá utilizar para iniciar sesión, crear tenants y procesar documentos.

Obtención de los registros de instalación

# Exit the Docker container, then:
docker ps -a
# Encuentre el nombre del contenedor, luego:
docker cp container_name:/ansible/ansible.log ansible.log

Despliegues opcionales

Implementación del sistema de registro

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 su instalación, puede activarlo 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:
ansible-playbook -i inventories/k8s playbooks/6-DeployMonitoring-k8s.yml

Implementación de Business Processing Reporting Warehouse

Business Processing Reporting Warehouse se utiliza para analizar el proceso de negocio y para el seguimiento de datos en períodos de tiempo específicos. Durante la instalación de Vantage, Business Processing Reporting Warehouse también se instalará si el valor del parámetro reporting.enabled en el archivo env_specific.yml se ha establecido en true. Si el valor del parámetro reporting.enabled se ha establecido en false, puede instalar Business Processing Reporting Warehouse después de instalar Vantage ejecutando el siguiente comando:
ansible-playbook -i inventories/k8s -v playbooks/deploy-reporting.yml

Implementación del complemento Identity Documents

El complemento Identity Documents requiere que Vantage tenga acceso a internet a https://lic.regulaforensics.com y https://lic2.regulaforensics.com.
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 ha establecido en true. Si el valor del parámetro id_reading.enabled se ha establecido en false, puede instalar el complemento Identity Documents después de instalar Vantage ejecutando el siguiente comando: ansible-playbook -i inventories/k8s -v playbooks/12-DeployDocumentReader.yml Es necesario que se proporcione acceso a las siguientes direcciones desde el clúster que contiene la instalación de Vantage: https://lic.regulaforensics.com https://lic2.regulaforensics.com