제품 설치와 기동
제품 설치
Linux
klicensed 설치 파일을 실행하면 자동으로 설치가 시작된다. 발급받은 licenses.dat 파일은 data/ 폴더 아래로 자동으로 이동된다.
$ ls
Konan-License-2.6.0-linux_ubuntu18-x86_64-64-20250212-r04a1cdbc79.karx
licenses.dat
$ ./Konan-License-2.6.0-linux_ubuntu18-x86_64-64-20250212-r04a1cdbc79.karx
1 [kvm]
2 [uninstall.sh]
3 [common.k]
...
...
Total 40 files.
Windows
klicensed 설치 파일을 실행하면 자동으로 설치가 시작된다. 발급받은 licenses.dat 파일은 data/ 폴더 아래로 자동으로 이동된다.
C:\Users\konan>Konan-License-2.6.0-windows2022-x86_64-64-20250212-r04a1cdbc79.karx.exe
1 [bin\common.sh]
2 [bin\concrt140.dll]
...
Total 53 files.
1개 파일이 복사되었습니다.
기동
Linux
klicensed가 설치된 bin/ 디렉터리로 이동하여 쉘 명령행에 다음과 같이 입력한다.
$ ./start.sh
crontab schedule registered.
>KLICENSED: READY
기동이 실패하는 경우 logs/ 아래의 klicensed.log를 참고하여 문제를 해결한다.
$ ./start.sh
no crontab for cmoh
crontab schedule registered.
**Error** Startup checking failed. Should examine daemon log(../logs/klicensed.log).
Error: startup checking failed
>KLICENSED: ERROR
아래 경우는 발급받은 licenses.dat의 첫번째 라인의 라이선스가 적법하지 않기 때문에 생긴 오류이다.
$ head ../logs/klicensed.log
[2025-02-12 15:15:06,855] >KLICENSED: Start up light weight service daemon.
[2025-02-12 15:15:06,959] >KLICENSED: READY
[2025-02-12 15:15:07,066] ** Error ** executing 'lic_startupCheck' schedule: lic::lic-top.k(164:54) invalid product key at ../data/licenses.dat:1
[2025-02-12 15:15:07,110] Error: startup checking failed
[2025-02-12 15:15:07,111] >KLICENSED: Startup error
start.sh 쉘을 사용하지 않고 직접 데몬을 기동할 수도 있다.
Usage : ./klicensed {start|stop} {-f ../conf/klicensed.rc} or
[--addr <:port>]
[--logs <log_dir>]
[--thrd <n_thrd>]
[--gc-period <n_sec>(1~86400)]
[--parent-loop <true/false>]}
각 인자의 의미는 아래와 같다.
| 인자 | 의미 | klicensed.rc 설정 항목 |
|---|---|---|
| -f klicensed.rc | klicensed.rc의 설정에 따라 데몬을 기동함. | N/A |
| --addr <:port> | 라이선스 데몬의 서비스 포트를 지정. 기본값은 7580. | daemon_service_port |
| --logs |
로그 파일 경로 지정. 기본값은 "../logs"(데몬 바이너리 상대 경로) | N/A |
| --thrd |
작업 스레드 개수 지정. 기본값은 6. | N/A |
| --gc-period |
미사용 중인 라이선스가 n_sec만큼 미사용중이면 회수함. 기본값은 86400. | gc_period |
| --parent-loop |
parent-child 구조로 데몬 기동. 기본값은 true. | N/A |
정지하려면 쉘 명령행에 다음과 같이 입력한다.
$ ./stop.sh
crontab schedule unregistered.
>KLICENSED: SHUTDOWN
엔진 설정
엔진의 설정파일은 설치된 경로에 conf/ 디렉토리 하위에 klicensed.rc” 파일이 있습니다.
기본 엔진포트는 “7580” 포트를 사용합니다. 다음은 설정파일 내용입니다.
$cat klicensed.rc
daemon_service_port = 7580 <- 엔진 포트
gc_period = 180 <- 엔진 내부 체크주기
Windows
klicensed가 설치된 bin/ 디렉터리로 이동하여 쉘 명령행에 다음과 같이 입력한다.
C:\Users\konan\bin>install_service.bat
C:\Users\konan\bin>start.bat
정지하려면 쉘 명령행에 다음과 같이 입력한다.
C:\Users\konan\bin>stop.bat
클러스터링
추가 노드 설치
licenses.dat를 가지고 설치된 노드 외에 클러스터로 묶을 노드에 추가로 데몬을 설치한다. 이 때, 추가 설치되는 서버에는 licenses.dat 파일 없이 설치한다. licenses.dat를 찾을 수 없다는 오류 메시지가 나오지만 무시해도 된다. 설치가 되면 bin/으로 이동하여 ./start.sh를 실행해 준다.
클러스터 지정
편의상, licenses.dat와 같이 설치된 노드의 주소를 [10.10.20.95:7580], 추가로 설치된 노드의 주소를 [10.10.20.94:7580]이라고 하자. 아래와 같이 RESTful API를 실행해 주면 이 두 노드가 클러스터로 묶여 동작한다. 이 때 RESTful API를 실행하는 서버는 최초 설치 노드가 되어야 한다.
$ curl -XPUT "http://10.10.20.95:7580/ksm/raft/members" -d '["10.10.20.94:7580", "10.10.20.95:7580"]'
licenses.dat와 같이 설치된 노드의 klicensed.log에 아래와 같이 클러스터의 leader로 선출됐다는 메시지가 나오면 성공적으로 묶인 것이다.
[2025-02-12 16:31:03,865] became leader (term: 2)
제거
Linux
설치 폴더에서 uninstall.sh를 실행한다.
Windows
설치 폴더에서 uninstall.bat를 실행한다.