3.엔진 구동 방법 및 도구

Edit

3.1엔진 구동 방법

3.1.1엔진 정지

3.1.1.1싱글모드(single)

  1. ./nxstop 명령어로 엔진을 정지합니다.

  2. y를 입력하면 프로세스가 종료됩니다.

  3. ./sh.ddd 명령어로 프로세스가 모두 종료되었는지 확인합니다.

그림 3-1싱글모드(single) 에서 엔진 정지 화면

3.1.1.2이중화모드(HA)

3.1.1.2.1터미널에서 엔진 정지

(Standby stop)

  1. ./nxstop -force 명령어로 Standby 엔진을 정지합니다.

  2. y를 입력하면 프로세스가 종료됩니다.

  3. ./sh.ddd 명령어로 프로세스가 모두 종료되었는지 확인합니다.

(Active stop)

  1. ./nxstop -force 명령어로 Active 엔진을 정지합니다.

  2. y를 입력하면 프로세스가 종료됩니다.

  3. ./sh.ddd 명령어로 프로세스가 모두 종료되었는지 확인합니다.

그림 3-2엔진 정지(이중화) 화면

3.1.1.2.2NEXUSCUBE-A에서 엔진 정지

NEXUSCUBE A 서버 정지를 참고합니다.

그림 3-3이중화 A정지

NEXUCCUBE-A에서 정지시에는 엔진만 정지되고 Adaptor 프로세스는 살아 있습니다.

3.1.2엔진 시작

3.1.2.1싱글모드(single)

  1. ./nxstart 명령어로 엔진을 시작합니다.

  2. ./sh.ddd 명령어로 프로세스가 실행되었는지 확인합니다.

그림 3-4엔진 시작(단중화)

3.1.2.2이중화모드(HA)

이중화 모드에서 nxAdaptor_A 는 이중화를 담당하는 모듈로써 절대 kill 로 종료하시면 안됩니다.

서버 전체를 failover 하는 방법을 사용하셔야 합니다.

3.1.2.2.1터미널에서 엔진 시작

(Active Adaptor start)

  1. ./sh.startha 명령어로 Active Adaptor start 합니다.

그림 3-5이중화 어댑터1

(Standby Adaptor start)

  1. ./sh.startha 명령어로 Standby Adaptor start 합니다.

그림 3-6이중화 어댑터2

(Active Engine start)

1

./nxstart -ha 명령어로 Active Engine start 합니다.

그림 3-7이중화 엔진1

(Standby Engine start)

1

./nxstart -ha 명령어로 Standby Engine start 합니다.

그림 3-8이중화 엔진2

2

./sh.ddd 명령어로 프로세스 start 되었는지 확인합니다.

3.1.2.2.2NEXUSCUBE-A에서 엔진 시작

NEXUSCUBE A 서버 시작을 참고합니다.

그림 3-9이중화 A시작

3.1.2.2.3엔진 fault 시 재시작

엔진이 fault 상태일 때 자동 재시작 설정 방법입니다.


process.conf 에 세팅됩니다.

#엔진 상태가 fault 시 엔진 재시작하는 기능을 위한 옵션 입니다.

#ha.reload = on | 1 | off | no | 0 |

#엔진 재시작 시 원시dbfile을 DBMS에서 조회 후 dbfile생성작업 실행 유무 설정

#on/yes/1 이면 db를 로딩하지 않고 파일에서 데이터를 로딩합니다. off/no/0 이면 db를 로딩하여 동작합니다.

#ha.period = 30

#엔진 정지 후 재 실행시킬 시간 설정 ( 초단위 설정 ),설정 시간이 10분 이상이면 60초로 강제 설정 합니다.

3.1.3엔진 절체

NEXUSCUBE A 서버 절체를 참고합니다.

그림 3-10이중화 절체

3.2엔진 구동 도구

3.2.1nxstart

3.2.1.1역할

NEXUSCUBE 엔진을 시작합니다.

3.2.1.2사용방법

엔진 비가동 중일 때 사용합니다.

[cube@kmt-vm42 bin]$ ./nxstart
[cube@kmt-vm42 bin]$ ./nxstart -ha

3.2.1.3실행화면

[cube@kmt-vm42 bin]$ ./nxstart
checking center[1]...
checking connecting to db[oracle] by user[cubeid] pwd[cubepw]...ok.
checking loading the master's information...
loading center master...count of record[1]...ok
loading tenant master...count of record[1]...ok
loading media master...count of record[1]...ok
loading dn master...count of record[4]...ok
loading route master...count of record[1]...ok
loading agent group master...count of record[4]...ok
loading agent team master...count of record[1]...ok
loading agent master...count of record[1]...ok
loading skill master...count of record[0]...ok
loading scenario master...count of record[1]...ok
loading scenario_daily master...count of record[0]...ok
loading scenario_term master...count of record[0]...ok
loading scenario_week master...count of record[0]...ok
ok.
ready to disconnect.
disconnect...ok
checking environment...ok.
checking license...ok.
ready to make shared memories...
checking memory name[ProcessRep] [182b9:99001]...ok.
checking memory name[ConnRep] [182bb:99003]...ok.
checking memory name[CallRep] [182bc:99004]...ok.
checking memory name[AgentGroupRep] [182c7:99015]...ok.
checking memory name[AgentTeamRep] [182c8:99016]...ok.
checking memory name[DnRep] [182c6:99014]...ok.
checking memory name[AgentRep] [182c9:99017]...ok.
checking memory name[RouteRep] [182c5:99013]...ok.
checking license media...1/3...ok
checking memory name[StatisticsRep] [182cb:99019]...ok.
checking memory name[SkillsRep] [182cc:99020]...ok.
done
ready to make message queues...
done

...

3.2.2nxstop

3.2.2.1역할

NEXUSCUBE 엔진을 정지합니다.

3.2.2.2사용방법

엔진 가동 중일 때 사용합니다.

[cube@kmt-vm42 bin]$ ./nxstop
[cube@kmt-vm42 bin]$ ./nxstop -force

3.2.2.3실행화면

[cube@kmt-vm42 bin]$ ./nxstop
Are you sure? [y/n]:y
sh: line 0: kill: (17583) - 그런 프로세스가 없음
cube     17578 17547  3 18:02 pts/2    00:00:00 nxstop
destroyed...
pid[16762] ./nxstate stopping...ok
pid[16764] ./nxlistener 1200 stopping...ok
pid[16766] ./nxlistener 1201  stopping...ok
pid[16768] ./nxlistener 1202  stopping...ok
pid[16770] ./nxlistener 1203  stopping...ok
pid[16772] ./nxlistener 1204  stopping...ok
pid[16784] ./nxlistener 1205  stopping...ok
pid[16790] ./nxlistener 1206  stopping...ok
pid[16794] ./nxlistener 1207  stopping...ok
pid[16798] ./nxlistener 1208  stopping...ok
pid[16802] ./nxlistener 1209  stopping...ok
pid[16807] ./nxlistener 1210  stopping...ok
pid[16811] ./nxlistener 1211 passive ha stopping...ok
pid[16815] ./nxlistener 1212 ha stopping...ok
pid[16819] ./nxlistener 1213  stopping...ok
pid[16823] ./nxlistener 1214  stopping...ok

3.2.3sh.startha

3.2.3.1역할

이중화모드(HA) 일 때, NEXUSCUBE 엔진의 UI 접속을 위한 프로세스를 시작합니다.

3.2.3.2사용방법

엔진 비가동 중일 때 사용합니다.

[cube@kmt-vm42 bin]$ ./sh.startha

3.2.3.3실행화면

[cube@kmt-linux1 bin]$ ./sh.startha
starting nxadaptor

실행되는 프로세스는 다음과 같습니다.

[cube@kmt-linux1 bin]$ ./sh.ddd
cube     22449     1 16 17:58 pts/1    00:00:01 nxAdaptor_A
cube     22508     1  0 17:58 pts/1    00:00:00 nxAdaptor_M 21001
cube     22509     1  0 17:58 pts/1    00:00:00 nxAdaptor_P 21004
cube     22510     1  0 17:58 pts/1    00:00:00 nxAdaptor_S
cube     22511     1  0 17:58 pts/1    00:00:00 nxAdaptor_R
cube     22512     1  0 17:58 pts/1    00:00:00 nxAdaptor_ST -CALL
cube     22513     1  0 17:58 pts/1    00:00:00 nxAdaptor_ST -WORK
cube     22514     1  0 17:58 pts/1    00:00:00 nxAdaptor_ST -DAY
cube     22515     1  0 17:58 pts/1    00:00:00 nxAdaptor_I

3.2.4sh.stopha

3.2.4.1역할

이중화모드(HA) 일 때, NEXUSCUBE 엔진의 주요 프로세스를 종료합니다. 
엔진에서 자동으로 호출하며, 사용자가 별도의 명령어로 실행하지 않습니다.

3.2.5sh.start

3.2.5.1역할

싱글모드(single) 일 때, NEXUSCUBE 엔진의 프로세스를 시작합니다. 
nxstart 실행 시 자동으로 호출됩니다.

3.2.6sh.stop

3.2.6.1역할

싱글모드(single) 일 때, NEXUSCUBE 엔진의 프로세스를 종료합니다. 
nxstop 실행 시 자동으로 호출됩니다.