기동 및 종료

WebtoB 설치 후 정상적으로 동작하는지 확인하기 위해 간단한 시험 기동을 진행합니다.

WebtoB 기동과 종료에 대한 자세한 내용은 "WebtoB 관리자 안내서"를 참고합니다.

환경 설정 파일 작성

WebtoB를 기동하기 위해서 환경 설정 파일을 작성합니다. 환경 설정 파일은 ${WEBTOB6_HOME_PATH}/config 디렉터리에 기본적으로 제공되는 webtob-config.json 파일을 사용해서 설정합니다.

다음은 webtob-config.json 파일의 작성 예시입니다.

---
{
  "node": {
    "name": "tmaxsoft",
    "hth_count": 1,
    "worker_threads": 8,
    "hth_schedule": "RR"
  },
  "server": {
    "http": {
      "mime_type_file": "mime.types",
      "common_config": {
        "doc_root": "docs",
        "service_order": "uri,ext",
        "access_log": "access_log1",
        "enable_keepalive": true,
        "keepalive_timeout": 60
      },
      "http_servers": [
        {
          "name": "http1",
          "idle_timeout": 300,
          "port": 8080,
          "enable_ssl": false
        }
      ]
    },
    "wjp": {
      "port": 9900,
      "wjp_servers": [
        {
          "name": "MyGroup1",
          "svr_chk_time": 60
        }
      ]
    },
   "admin": {
      "port": 9090
    }
  },
  "logging": {
    "access_log": [
      {
        "name": "access_log1",
        "level": "INFO",
        "format": "DEFAULT",
        "handlers": {
          "file_handler": {
            "file_name": "access.log"
          },
        "enable_console_handler": false
        }
      }
    ],
    "error_log": {
      "level": "INFO",
      "handlers": {
        "file_handler": {
          "file_name": "errors.log"
        },
        "enable_console_handler": false
      }
    },
    "system_log": [
      {
        "name": "webtob",
        "level": "INFO",
        "handlers": {
          "file_handler": {
            "file_name": "webtob.log"
          },
          "enable_console_handler": false
        }
      }
    ]
  },
  "destination": {
    "jeus": [
      {
        "name": "MyGroup1",
        "server_schedule": "RR",
        "connection_schedule": "RR"
      }
    ],
    "reverse_proxy": {
      "reverse_proxy_group": [
        {
          "name": "rproxyGroup1",
          "reverse_proxy_server": [
            {
              "address": "internal.server:8888",
              "name": "rproxy1",
              "enable_proxy_ssl": false
            }
          ]
        }
      ]
    },
    "htmls": [
      {
        "name": "htmls1"
      }
    ]
  },
  "service": {
    "uri": [
      {
        "name": "uri1",
        "target_http_servers": [
          "http1"
        ],
        "match": {
          "type": "prefix",
          "target": "/rproxy",
          "rewrite": "/"
        },
        "destination": {
          "type": "REVERSE_PROXY",
          "target": "rproxyGroup1"
        }
      }
    ],
    "ext": [
      {
        "name": "ext1",
        "target_http_servers": [
          "*"
        ],
        "match": {
          "type": "exact",
          "target": "text/html"
        },
        "destination": {
          "type": "JEUS",
          "target": "MyGroup1"
        }
      }
    ]
  }
}

webtob-config.json 파일 작성 시 수정이 필요한 항목은 다음과 같습니다.

항목 설명

server > http > http_servers > port

HTTP 서버가 사용할 포트를 지정합니다.

server > wjp > port

WJP 서버가 사용할 포트를 지정합니다.

HTTP 서버 및 WJP 서버의 포트 번호를 설정할 때 이미 사용 중인 포트 번호를 지정하면 WebtoB가 기동되지 않을 수 있으므로 중복되지 않는 번호로 지정합니다.

WebtoB 기동

WebtoB 기동은 다음과 같은 과정으로 진행됩니다.

  1. ${WEBTOB6_HOME_PATH}/bin 디렉터리로 이동한 후 wsboot.sh 명령어를 실행합니다.

    $ wsboot.sh
    Booting WebtoB on node (tmax)
    Current maximum open files per node 65535
    Version: WEBTOB 6.0 Fix #0
             Environment variables for WebtoB boot:
                    WEBTOB6_HOME_PATH = /home/webtob/
                    WEBTOB6_CONFIG_FILE_PATH = /home/webto/config/
                    WEBTOB6_LIBRARY_PATH = /home/webtob/lib/
                    WEBTOB6_SSL_PATH = /home/webtob/ssl/
                    WEBTOB6_LICENSE_PATH = /home/webtob/license/
                    WEBTOB6_SCHEMA_PATH = /home/webtob/schema/
                    WEBTOB6_LOG_PATH = /home/webtob/log/
                    WEBTOB6_CONFIG_FILE_NAME = webtob-config.json
    
    Welcome to WebtoB Demo system.
    Enterprise edition License in used.
    Schema file path: /home/webtob/schema/webtob-config-enterprise.schema.json
    
    ******* Start config validation *******
    1. Opened schema file
    2. Opened config file
    3. Config parsing finished
    4. Pre-validation process finished
    5. Validation using json-schema finished
    6. Post-validation process finished
    7. Environment-validation process finished
    Config file "/home/webtob/config/webtob-config.json" is validated with schema file "/home/webtob/schema/webtob-config-enterprise.schema.json"
    Success to load config files : webtob-config.json
    ******* Validation success *******
             Current WebtoB Configuration:
                    Number of client handlers (HTH) = 1
                    Number of worker threads per handler (HTH) = 8
                    Number of connection pool size per handler (HTH) = 8192
    
    Today is 2024-10-07
    License expires on 2024-11-29 (53 days remaining)
    Starting Server(pid:17611) at Mon Oct  7 12:04:18 2024
    Successfully started the server. The server state is now RUNNING.
  2. WebtoB가 기동되면 브라우저로 서비스를 요청합니다. 이때 반드시 index.html까지 요청해야 합니다.

    http://<IP Address>:<Port>/index.html
  3. 정상적으로 WebtoB가 기동된 경우 아래와 같이 화면이 표시됩니다.

    figure 3 1

WebtoB 종료

WebtoB를 종료하려면 wsdown 명령어를 실행합니다. 종료 전에 .webtob.pid 파일을 열어 현재 기동 중인 WebtoB가 있는지 확인 후 ${WEBTOB6_HOME_PATH}/bin 디렉터리로 이동하여 wsdown 명령을 실행해야 합니다.

다음은 WebtoB를 종료하기 위해 wsdown 명령을 실행하는 예시입니다.

$ wsdown
wsdown: Shutting down Webtob.
wsdown: Webtob(pid: 17611) is terminated.