서버 설치

본 장에서는 UNIX/Linux 환경에서 AnyLink 8 Console Installer를 사용하여 AnyLink 서버를 설치하는 방법을 설명합니다.

콘솔 설치 과정에서는 이전 단계로 돌아가 입력값을 수정하기 어렵습니다. 설치를 시작하기 전에 설치 경로, Java Home, 데이터베이스 접속 정보, 포트 정보를 확인합니다.

1. 설치

다음은 UNIX/Linux 환경에서 AnyLink 서버를 설치하는 절차입니다.

  1. AnyLink 설치 파일(anylink8_generic.bin)을 설치 대상 서버에 업로드하고, 설치 파일이 있는 디렉터리로 이동합니다.

  2. 설치 파일에 실행 권한을 부여합니다.

    chmod u+x anylink8_generic.bin
  3. Console Installer를 실행합니다.

    anylink@node:~$ ./anylink8_generic.bin
  4. 라이선스 내용을 확인한 후 동의 여부를 입력합니다.

    라이선스에 동의하면 y를 입력하고, 동의하지 않으면 n을 입력합니다. n을 입력하면 설치가 중단됩니다.

    ===============================================================================
    License Agreement
    -----------------
    
    Installation and Use of AnyLink 8 Requires Acceptance of the Following License
    Agreement:
    
    Release AnyLink8
    TmaxSoft Co., Ltd. (hereafter, TmaxSoft) End-User License Agreement
    
    Product : AnyLink
    
    This is a legal agreement between you (either an individual or an company) and
    TmaxSoft, Incorporated.  By opening the sealed software package and/or by
    using the software, you agree to be bound by the terms of this agreement.
    
    TmaxSoft License
    1. Grant of License: This License permits you to use one copy of the software
    on any single computer.
    
    PRESS <ENTER> TO CONTINUE:
    mechanism or process in place to ensure that the number of persons using the
    software concurrently does not exceed the number of licenses.
    
    2. Copyright: The software is owned by TmaxSoft or its suppliers.
    
    3. Other restrictions: You may not reverse engineer, decompile, or disassemble
    the software, except where expressly permitted by law.
    
    PRESS <ENTER> TO CONTINUE:
    DO YOU ACCEPT THE TERMS OF THIS LICENSE AGREEMENT? (Y/N): y
  5. AnyLink 설치 경로를 입력합니다.

    기본값을 사용하려면 값을 입력하지 않고 Enter 키를 누릅니다.

    ===============================================================================
    AnyLink Environment Configuration
    ------------------------------
    
    Enter installation path (default: /home/tmaxsoft/Anylink8): /home/tmaxsoft/Anylink8
    Installing into: /home/tmaxsoft/Anylink8
  6. Java Home 경로를 입력합니다.

    Console Installer는 입력한 경로에서 Java 버전을 확인합니다. JDK 21 이상이 확인되어야 다음 단계로 진행할 수 있습니다.

    This program requires Java version 21.0 or higher.
    
    Enter Java home path (default: /home/tmaxsoft/jdk-21):
    Java version 21.0.2 2024-01-16 LTS detected at /home/iftest/jdk-21 (OK).
  7. AnyLink 서비스(nginx) 포트를 입력합니다.

    Enter web service port (default: 8080): 8080
    Using port: 8080
  8. 데이터베이스 접속 정보를 입력합니다.

    데이터베이스 이름, 사용자 ID, 비밀번호를 입력합니다. 데이터베이스와 사용자는 설치 전에 생성되어 있어야 합니다.

    DB vendor is set to: MariaDB
    Using DB vendor: MariaDB
    
    Prepare DB connection info (will be written to config/profile).
    DB IP (default: 127.0.0.1):
    Using DB IP: 127.0.0.1
    DB Port (default: 3306):
    MariaDB DB name (e.g., anylink8_db):
    DB name cannot be empty.
    MariaDB DB name (e.g., anylink8_db): anylink8_db
    DB user: anylink8
    DB password:
    
    Do you want to execute DB schema now? [Y/N]: n
    Skipping DB schema execution.
  9. 설치가 정상적으로 완료되면 다음과 같은 요약 정보가 표시됩니다.

    ===============================================================================
    Installation Summary
    ------------------------
    Product Name:
        AnyLink 8
    
    Install Folder: /home/iftest/Anylink8
      Settings:
       - JAVA_HOME: /home/tmaxsoft/jdk-21
       - Admin_PORT : 8080
       - MASTER_PORT : 8900
       - MS_PORT : 9999
       - DB_HOST  : 127.0.0.1
       - DB_PORT  : 3306
       - DB_USER  : anylink8
       - DB_PASS  : anylink8
    
     =====================================================
      AnyLink8 Installation Completed Successfully!
     =====================================================
    
     [ Back-end: AnyLink Master ]
      - Start: /home/tmaxsoft/Anylink8/master/bin/start.sh
      - Stop : /home/tmaxsoft/Anylink8/master/bin/stop.sh
    
     [ Back-end: AnyLink MS ]
      - Start: /home/tmaxsoft/Anylink8/ms/bin/start.sh
      - Stop : /home/tmaxsoft/Anylink8/ms/bin/stop.sh
    
     [ Front-end: AnyLink Admin (Nginx) ]
      - sudo systemctl {start|stop|restart|status} nginx
    
     After start, access the AnyLink
       http://127.0.0.1:8080/
    ===============================================================================
  10. WebAdmin을 배포하고 Nginx 설정을 반영합니다.

    AnyLink 서버를 기동하기 전에 admin.sh 스크립트를 실행합니다.

     [IMPORTANT] Post-Installation Steps
     [NOTE] Before starting the backend servers, you MUST deploy the Admin
            frontend and configure the Nginx web server:
            cd /home/iftest/Anylink8/admin && chmod +x admin.sh && ./admin.sh

2. 설치 확인

본 절에서는 설치가 완료된 후 디렉터리 구조를 확인하고 AnyLink 서버를 기동하는 방법을 설명합니다.

2.1. 디렉터리 구조

AnyLink 서버 설치가 완료되면 설치 경로($AnyLink_HOME) 아래에 다음과 같은 디렉터리가 생성됩니다.

$AnyLink_HOME/
   |----master
         |--- bin
                +----start.sh
                +----stop.sh
         |--- libs
                +----common-{version}-plain.jar
                +----slf4j-api-2.0.17.jar
                +----anylink8-master-{version}.jar
         |--- config
                +----datasource.config
         |--- deployment
         |--- db_script
                +----anylink8-meta-db-create-1.0.0.sql
         |--- logs
   |---- ms
           |--- bin
                 +----start.sh
                 +----stop.sh
           |--- config
                 +----master.config
                 +----engine.config
                |--- logging
                      |---system
                            +----logging.config
                      |---trace
                            +----trace_logging.config
           |--- resource
                |--- adapter
                      |--- internal
                            +----internal.adt
                            +----internal.ep
                |--- biz-tx
                |--- bpmn
                |--- orule
                |--- classes
           |--- libs
                 +----anylink8-engine-{version}.jar
           |--- logs
   |---- admin
           |--- build
           +----anylink8-admin-{version}.tar.gz
           +----admin.sh
           +----update_nginx.sh
   |---- monitoring
           |--- fluent-bit
                |--- db
                |--- buffer
           |--- observability
                +----docker-compose.yml
                |--- config
                       +----prometheus.yml
                |--- data
                       |--- perses
                       |--- prometheus
           |--- opensearch
                +----create-indices.sh
   |---- License
master

AnyLink 마스터 서버의 실행 스크립트, 설정 파일, 라이브러리, 메타데이터 데이터베이스 스크립트가 위치합니다.

ms

AnyLink 엔진 서버의 실행 스크립트, 엔진 설정 파일, 라이브러리, 로그 설정, 연계 리소스가 위치합니다.

admin

AnyLink WebAdmin 배포 파일과 Nginx 설정 반영 스크립트가 위치합니다.

monitoring/fluent-bit

AnyLink 로그를 수집하고 전달하기 위한 Fluent Bit 관련 파일이 위치합니다.

monitoring/observability

Prometheus와 Perses 기반 모니터링 구성 파일과 데이터 디렉터리가 위치합니다.

monitoring/opensearch

OpenSearch 인덱스 초기화를 위한 스크립트가 위치합니다.

License

오픈소스 라이선스 파일이 위치합니다.

2.2. 서버 기동

모든 설치가 정상적으로 완료되면 다음 순서로 AnyLink 서버를 기동합니다.

  1. Master 서버를 기동합니다.

    $sh /home/tmaxsoft/Anylink8/master/start.sh
  2. 엔진 서버를 기동합니다.

    $sh /home/tmaxsoft/Anylink8/ms/engine/start.sh