메인 콘텐츠로 건너뛰기

설치 개요

Vantage를 설치하려면 다음 단계를 따르십시오.
  1. 리소스를 준비합니다.
  2. 리소스에 대한 자격 증명을 설정합니다.
  3. 설치 스크립트를 실행합니다.

리소스 준비

시작하기 전에 System Requirements 섹션에 나열된 모든 요구 사항이 충족되었는지 확인하십시오.

리소스 자격 증명 지정

설치 프로그램을 실행하기 전에 다음 작업을 수행하십시오.
  1. 구성 파일을 설정합니다.
  2. 인증서를 준비합니다.
  3. 컨테이너 이미지를 다운로드합니다.

구성 파일 설정

1. 설치 디렉터리 생성: 설치를 수행할 설치 디렉터리와 그 하위 디렉터리(ssh, kube, ssl)를 생성합니다. 그런 다음 설치 디렉터리로 이동합니다.
mkdir -p /opt/vantage-install/{ssh,kube,ssl} && cd /opt/vantage-install
2. SSH 키 파일 생성:ssh 폴더에 ansible이라는 이름의 파일을 만들고, 이 파일에 ansible 사용자용 개인 SSH 키를 저장합니다.3. inventory 파일 생성:설치 디렉터리에 inventory 파일을 만듭니다. X.X.X.X를 VM IP 주소로 바꿉니다:
[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
워커용 머신이 3대가 아니라 1대 또는 2대만 필요하다면, [abbyy_workers] 섹션에서 불필요한 줄을 삭제하십시오.
4. env_specific.yml 파일 생성: 사용자 환경에 맞는 값을 지정하십시오.
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      # 구매 과정에서 받은 자격 증명으로 교체
source_container_registry_password: null  # 구매 과정에서 받은 자격 증명으로 교체
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

구성 Parameter

Parameter설명
env기본적으로 서브도메인 이름으로 사용되는 설치 접두사입니다.
poc고가용성을 사용하지 않는 경우 true, 고가용성을 사용하는 경우 false.
domain기본 도메인입니다.
product_host제품에 접속하기 위한 DNS 이름(기본값: env.domain).
logging.enabled로깅을 활성화하거나 비활성화합니다 (true/false).
logging.elasticsearch.enabledElasticsearch를 활성화할지 여부를 지정합니다. 이 Parameter는 true 또는 false로 설정할 수 있습니다. 참고: 이미 Elasticsearch가 있고 Vantage 로그를 이곳에 연결하려는 경우에만 이 Parameter 값을 true로 설정하십시오. 기존 Elasticsearch 및 Kibana 인스턴스가 없는 경우, Elasticsearch 및 Kibana 설명서의 지침에 따라 클러스터에 배포할 수 있습니다. 이는 제품을 설치하기 전에 완료해야 합니다.
logging.elasticsearch.host서버 IP 주소입니다.
logging.elasticsearch.portElasticsearch에 연결할 때 사용할 포트입니다.
logging.elasticsearch.usernameElasticsearch에 연결할 때 사용할 사용자 이름입니다.
logging.elasticsearch.passwordElasticsearch에 연결할 때 사용할 비밀번호입니다.
logging.elasticsearch.schemeElasticsearch에 연결할 때 사용할 프로토콜 스킴입니다.
logging.file.enabled로그를 파일로 기록할지 여부를 지정합니다. 이 Parameter 값은 true 또는 false로 설정할 수 있습니다.
loadbalancer.external_ip로드 밸런서를 위한 플로팅 IP 주소입니다.
k8s.api.ipKubernetes API 엔드포인트의 IP 주소입니다.
securityContext.global.runAsUser컨테이너 프로세스가 실행될 사용자 식별자를 지정합니다. 이 설정은 외부 rwx 스토리지(예: NFS)를 사용하는 포드에만 적용됩니다. 기본적으로 이 Parameter는 65532로 설정됩니다.
securityContext.global.runAsGroup컨테이너 프로세스가 실행될 그룹의 식별자를 지정합니다.

이 설정은 외부 RWX 스토리지(예: NFS)를 사용하는 파드에만 적용됩니다. 기본적으로 이 Parameter의 값은 65532로 설정됩니다.
securityContext.global.fsGroupPod에 연결된 볼륨의 소유 그룹 ID를 지정합니다. 이 설정은 NFS와 같은 외부 RWX 스토리지를 사용하는 Pod에만 적용됩니다. 기본적으로 Parameter는 65532로 설정됩니다.
techcore.nn_training_workers.gpuGPU 워커를 배포할지 여부를 지정합니다. GPU 워커는 Deep Learning activity를 사용하여 반정형 문서에서 데이터를 추출하기 위한 스킬 학습에 사용됩니다. 이 Parameter는 true 또는 false로 설정할 수 있습니다. Parameter가 true로 설정된 경우 techcore.nn_training_workers.enabled Parameter도 true로 설정해야 합니다. 이 옵션을 사용하도록 설정하고 techcore.nn_training_workers.gputechcore.nn_training_workers.enabled Parameter를 Vantage 설치 전이나 설치 후에 true로 설정할 수 있습니다. 자세한 내용은 Setting up GPU를 참조하세요.
techcore.nn_training_workers.enablednn-extraction-training 및 nlp-model-train 워커를 배포할지 여부를 지정합니다. 이 워커들은 CPU를 사용하여 Deep Learning activity로 스킬을 학습시켜 반정형 문서에서 데이터를 추출하는 데 사용됩니다. 이 Parameter는 true 또는 false로 설정할 수 있습니다.
techcore.keep_previous_versionVantage를 업데이트할 때 기술 코어 버전 2를 유지할지 여부를 지정합니다. 기본적으로 techcore.keep_previous_version parameter는 지정되지 않으며, 기술 코어 버전 2는 삭제됩니다. 이를 유지하려면 이 parameter 값을 true로 설정합니다.
platform_admin_email시스템 관리자 이메일 주소입니다.
container_registry_host컨테이너 레지스트리의 도메인 이름입니다.
container_registry_user컨테이너 레지스트리에서 이미지를 다운로드할 수 있는 권한을 가진 사용자의 이름입니다. 컨테이너 레지스트리가 없는 경우 이 Parameter는 비워 둡니다.
container_registry_password컨테이너 레지스트리에서 이미지를 다운로드하기 위한 비밀번호/토큰입니다. 컨테이너 레지스트리가 없는 경우 이 Parameter는 비워 둡니다.
container_registry_name이미지가 호스팅되는 컨테이너 레지스트리의 디렉터리입니다.
smtp.hostSMTP 서버의 IP 주소 또는 호스트 이름입니다.
smtp.loginSMTP 서버에 연결할 때 사용할 사용자 이름입니다.
smtp.passwordSMTP 서버에 연결할 때 사용할 비밀번호입니다.
smtp.portSMTP 서버의 포트입니다.
smtp.useSSL암호화된 연결 사용 여부를 지정합니다. 이 Parameter는 true 또는 false로 설정할 수 있습니다.
smtp.secureSocketOptions연결에 사용할 SSL 및/또는 TLS 암호화를 지정합니다.
database.enabled데이터베이스 서버를 사용할지 여부를 지정합니다.
database.hostSQL Server의 IP 주소입니다.
database.port데이터베이스 서버의 포트입니다.
database.username데이터베이스에 연결하는 데 사용할 사용자 이름입니다(사용자는 데이터베이스를 생성할 수 있는 권한을 가지고 있어야 합니다).
database.password데이터베이스에 액세스하는 데 사용할 비밀번호입니다.
reporting.enabledWarehouse Reporting 서비스를 배포할지 여부를 지정합니다. 이 Parameter는 true 또는 false로 설정할 수 있습니다.
id_reading.enabledIdentity Documents 애드온을 배포할지 여부를 지정합니다. 이 Parameter는 true 또는 false로 설정할 수 있습니다.
The following four Parameter는 선택 사항이며, 고가용성 구성(Highly available configuration)을 설치하고 Vantage 설치 프로그램에서 Redis 설치를 요구하는 경우에만 필요합니다.
ParameterDescription
redis.ipsRedis 클러스터 IP 주소를 다음 형식으로 지정합니다: [‘192.168.0.1”192.168.0.2’,,‘192.168.0.3’]. 해당 Parameter가 []로 설정된 경우, 클러스터 내 Redis 인스턴스가 배포됩니다.
redis.portRedis 클러스터에 연결하는 데 사용되는 포트입니다.
redis.passwordRedis에 연결하는 데 사용되는 비밀번호입니다.
redis.sslRedis 클러스터에 대한 암호화된 연결을 사용할지 여부를 지정합니다. 이 Parameter는 true 또는 false로 설정할 수 있습니다.
그 외 모든 Parameter는 변경되지 않습니다.

인증서 준비

  1. ssl 디렉터리로 이동합니다. 해당 디렉터리 안에 기본 도메인 이름에 해당하는 와일드카드 인증서(중간 인증서 포함)를 두고, 키(PEM 형식)는 각각 다음 파일에 저장합니다: ./ssl/cert.pem, ./ssl/key.pem. CRT 파일의 내용을 아래 형식으로 변경하여 PEM으로 변환해야 합니다:
-----BEGIN CERTIFICATE-----
[your certificate]
-----END CERTIFICATE-----
  1. 내부 CA에서 서명한 인증서를 사용하는 외부 인증 공급자(ADFS)의 인증서를 사용하는 경우, 루트 인증서를 ./ssl/adfs-root.pem에 저장합니다.
Vantage에서 타사 엔드포인트(사용자 정의 활동 스크립트 또는 외부 인증)에 액세스하는 경우, 해당 외부 엔드포인트에는 공인 기관이 발급한 인증서가 있어야 합니다.

설치 스크립트 실행

ABBYY Vantage의 설치는 자동으로 수행됩니다. 설치용 컨테이너 내부에 설치·구성된 Ansible 도구를 사용해 실행됩니다. Ansible은 다양한 구성 시나리오(YAML 플레이북)를 사용하여 머신과 상호 작용합니다. ABBYY Vantage를 설치하려면 다음 단계를 수행하세요. 1. 설치 디렉터리로 이동합니다. 2. 설치 프로그램 배포 레지스트리에 로그인합니다.
# <username>과 <password>를 구매 시 받은 자격 증명으로 교체하세요
docker login abyvtgonprm27.azurecr.io -u <username> -p <password>
3. 아직 설치 프로그램을 실행하지 않았다면 Docker 이미지에서 설치 프로그램을 실행합니다:
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
Parameter설명
-v $PWD/kube:/home/ansible/.kubekube/config 파일이 저장된 Kubernetes 디렉터리 경로입니다.
-v $PWD/ssh/ansible:/home/ansible/.ssh/ansibleKubernetes 클러스터와 일부 사전 요구 사항을 설치 및 구성하는 데 필요한 개인 SSH 키의 경로입니다.
-v "//var/run/docker.sock:/var/run/docker.sock"이미지를 컨테이너 레지스트리와 동기화하는 데 필요합니다.
-v $PWD/inventory:/ansible/inventories/k8s/inventoryinventory 파일 경로입니다.
-v $PWD/env_specific.yml:/ansible/inventories/k8s/group_vars/all/env_specific.ymlenv_specific.yml 파일 경로입니다.
-v $PWD/ssl:/ansible/files/ssl:ro다음 파일이 포함되어야 하는 SSL 인증서 폴더의 경로입니다: cert.pem, key.pem, adfsroot.pem.
4. Azure AKS 클러스터에 연결합니다:
가상 머신 배포의 경우 이 단계를 건너뜁니다. 클러스터 자격 증명은 7단계에서 Kubernetes 설치 중에 자동으로 구성됩니다.
5. 컨테이너 이미지 다운로드 마이그레이션 스크립트는 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"
ansible-playbook -i inventories/k8s playbooks/validate-artifact-manifest.yml
ansible-playbook -i inventories/k8s playbooks/oci-migration.yml
6. SSH 키 권한 설정:
chmod 600 /home/ansible/.ssh/ansible
7. Kubernetes 클러스터 설치 및 설정:
ansible-playbook -i inventories/k8s -v playbooks/4-Kubernetes-k8s.yml
8. 사전 배포 검사 실행 및 법적 문서 동의:
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 Privacy Policy 약관에 동의하도록 요청합니다.
9. 제품 설치:
ansible-playbook -i inventories/k8s -v playbooks/site-k8s-deploy.yml
플레이북은 메트릭 및 로그 수집 시스템을 배포하고 ABBYY Vantage를 배포합니다. 설치 완료에 필요한 시간은 선택한 머신의 성능에 따라 달라집니다. 평균적으로 이 프로세스는 약 10분 정도 소요됩니다. Kubernetes 관리 도구(예: Lens 유틸리티)를 사용하여 클러스터의 파드 및 Job 실행을 모니터링할 수 있습니다. 이를 위해, 가상 머신에 Kubernetes를 설치한 후 kube 폴더에 생성되는 kubeconfig 파일을 사용하십시오. 또한 아래 단계에 따라 Ansible 설치 로그 파일을 로컬 머신으로 다운로드할 수도 있습니다:
  1. Docker 컨테이너에서 로그아웃합니다.
  2. 다음 명령을 실행하여 컨테이너 목록을 가져옵니다:
docker ps -a
설치 프로그램이 포함된 컨테이너의 이름을 확인합니다.
  1. 로그를 확인하기 위해 container_name을(를) 컨테이너의 이름으로 바꿔서 다음 명령을 실행합니다:
docker cp container_name:/ansible/ansible.log ansible.log
배포가 완료되면 다음 정보가 제공됩니다.
  • 제공된 도메인 이름에 대한 URL
  • 로그인, 테넌트 생성 및 문서 처리를 위해 사용할 수 있는 시스템 관리자 계정과 비밀번호

설치 로그 확인하기

# Docker 컨테이너를 종료한 다음:
docker ps -a
# Find the container name, then:
docker cp container_name:/ansible/ansible.log ansible.log

선택적 배포 옵션

로깅 시스템 배포

Vantage를 설치하는 동안 env_specific.yml 파일의 logging.enabled parameter 값이 false로 설정되어 로깅 시스템이 활성화되지 않았다면, Vantage 설치 후에 이를 활성화할 수 있습니다. 이를 위해 env_specific.yml 파일에서 logging.enabled parameter 값을 true로 변경한 다음, 다음 명령을 실행하십시오:
ansible-playbook -i inventories/k8s playbooks/6-DeployMonitoring-k8s.yml

비즈니스 프로세싱 리포팅 웨어하우스 배포

비즈니스 프로세싱 리포팅 웨어하우스는 비즈니스 프로세스를 분석하고 특정 기간 동안의 데이터를 추적하는 데 사용됩니다. Vantage 설치 시 env_specific.yml 파일의 reporting.enabled parameter 값이 true로 설정된 경우 비즈니스 프로세싱 리포팅 웨어하우스도 함께 설치됩니다. reporting.enabled parameter 값이 false로 설정된 경우 다음 명령을 실행하여 Vantage 설치 후에 비즈니스 프로세싱 리포팅 웨어하우스를 설치할 수 있습니다:
ansible-playbook -i inventories/k8s -v playbooks/deploy-reporting.yml

Identity Documents 애드온 배포

Identity Documents 애드온을 사용하려면 Vantage가 https://lic.regulaforensics.comhttps://lic2.regulaforensics.com에 인터넷으로 접속할 수 있어야 합니다.
Identity Documents 애드온 서비스는 여러 국가에서 발급된 신원 확인 문서에서 데이터를 추출하는 데 사용되는 Identity Documents 스킬을 실행할 수 있게 해 줍니다. Vantage 설치 중에 env_specific.yml 파일의 id_reading.enabled 매개변수 값이 true로 설정되어 있으면 Identity Documents 애드온도 함께 설치됩니다. id_reading.enabled 매개변수 값이 false로 설정된 경우, Vantage 설치 후 다음 명령을 실행하여 Identity Documents 애드온을 설치할 수 있습니다:
ansible-playbook -i inventories/k8s -v playbooks/12-DeployDocumentReader.yml
Vantage가 설치된 클러스터에서 다음 주소에 접속할 수 있어야 합니다: https://lic.regulaforensics.com https://lic2.regulaforensics.com