DB 변경

DDL 스크립트

  • 권한관리 : security/table_oracle.sql
  • Glue JobMeta : scheduler/table_oracle.sql
  • Quartz JobStore : quartz-2.2.2/table_oracle.sql

Oracle

계정은 POSBATCH 라고 가정합니다.

  1. '권한관리' Table은 제공된 스크립트 파일을 이용을 이용합니다.
    에러가 나도 계속 진행합니다.
    setup data가 포함되어 있습니다.

    @sercurity/table_oracle.sql
    
  2. 'Glue JobMeta' Table은 Data를 유지해야 하므로 alter 명령어를 통해 Table을 변경합니다.
    에러가 나도 계속 진행합니다.
    JOB_CLASS의 값을 변경합니다.

    alter table "SCHEDULE_SERVER" add(VERSION VARCHAR2(20));
    alter table "SCHEDULE_JOB_INFO" rename column "JOB_CLASSS" to "JOB_CLASS";
    alter table "SCHEDULE_JOB_INFO" drop column "STAND_ALONE";
    update SCHEDULE_JOB_INFO set JOB_CLASS='com.poscoict.app.quartz.GlueJavaProcessStartJobImpl';
    commit;
    
  3. 'Quartz JobStore' Table은 신규로 생성합니다.

  4. 필요시 public synonym 을 생성합니다.
    synonym 생성 script는 다음을 참고합니다.

    create public synonym REMOTE_SERVERS_INFO for posbatch.REMOTE_SERVERS_INFO;
    

Scheduler Server 변경

Scheduler Server는 다음과 같은 Directory로 구성되어 있습니다.

  • ROOT 디렉토리
  • apps 디렉토리
  • bin 디렉토리
  • conf 디렉토리
  • lib 디렉토리
  • logs 디렉토리

Window

Scheduler Server는 C:/scheduler-server 에 설치되어 있다고 가정합니다.
설치파일( scheduler-server-1.2.0.zip )을 이용해 패치한다고 가정합니다.

  1. Scheduler Server 를 중지합니다. ( CTRL + C )

  2. ROOT 디렉토리의 scheduler-server.jar 은 설치파일에 포함된 것으로 변경합니다.

    C:/scheduler-server/scheduler-server.jar
    
  3. apps 디렉토리의 라이브러리를 변경합니다.
    posco-scheduler-job-{version}.jar 파일을 삭제하고,
    설치파일( scheduler-server-1.2.0.zip )에 포함된 apps/lib/glue-scheduler-job-1.2.0.jar 을 추가합니다.

    C:/scheduler-server/apps/usrlib/posco-scheduler-job-1.1.3.jar   <- 삭제
    C:/scheduler-server/apps/usrlib/glue-scheduler-job-1.2.0.jar    <- 추가
    
  4. conf 디렉토리의 glue.properties 에 다음을 추가합니다.  로그파일을 삭제하기 위한 설정입니다.

    purge.scheduled.job.cron.expression=0 29 * * * ?
    purge.scheduled.job.day.time=15
    
    • purge.scheduled.job.cron.expression 을 통해 purge 주기를 지정할 수 있습니다./ 매 시간마다 purge를 수행할 수 있습니다. ( 1:29, 2:29, 3:29 .. )
    • purge.scheduled.job.day.time 을 통해 15일 이전의 log 파일을 삭제할 수 있습니다.
  5. Scheduler Server 를 시작합니다.

    C:/scheduler-server/bin/startup.bat
    

Unix/Linux

Scheduler Server는 /DBMS/DCCM/GLUE 에 설치되어 있다고 가정합니다.
Scheduler Server 이름은 dmmes 라고 가정합니다.
설치파일( scheduler-server-1.2.0.zip )을 이용해 패치한다고 가정합니다.

  1. Scheduler Server 를 중지합니다. ( kill )

    ps -ef | grep dmmes
    
    kill ?
    
  2. ROOT 디렉토리의 scheduler-server.jar 은 설치파일에 포함된 것으로 변경합니다.

    /DBMS/DCCM/GLUE/scheduler-server.jar
    
  3. apps 디렉토리의 라이브러리를 변경합니다.
    posco-scheduler-job-{version}.jar 파일을 삭제하고,
    설치파일( scheduler-server-1.2.0.zip )에 포함된 apps/lib/glue-scheduler-job-1.2.0.jar 을 추가합니다.

    /DBMS/DCCM/GLUE/apps/usrlib/posco-scheduler-job-1.1.3.jar       <- 삭제
    /DBMS/DCCM/GLUE/apps/usrlib/glue-scheduler-job-1.2.0.jar        <- 추가
    
  4. conf 디렉토리의 glue.properties 에 다음을 추가합니다.  로그파일을 삭제하기 위한 설정입니다.

    purge.scheduled.job.cron.expression=0 29 * * * ?
    purge.scheduled.job.day.time=15
    
    • purge.scheduled.job.cron.expression 을 통해 purge 주기를 지정할 수 있습니다./ 매 시간마다 purge를 수행할 수 있습니다. ( 1:29, 2:29, 3:29 .. )
    • purge.scheduled.job.day.time 을 통해 15일 이전의 log 파일을 삭제할 수 있습니다.
  5. Scheduler Server 를 시작합니다.

    nohup /DBMS/DCCM/GLUE/scheduler-server/bin/startup.sh > /DBMS/DCCM/GLUE/scheduler-server/logs/scheduler-server.out &
    

Scheduler Manager 변경

Scheduler Manager는 2가지 파일로 배포되며, WAS 환경에 맞는것으로 패치합니다.

  • glue-scheduler-manager-1.3.0.war : Tomcat, Jboss 에 deploy 하는 경우에 사용하세요.
    scheduler-manager.war 파일로 변경해서 deploy 되어있다고 가정합니다.
  • M0SA010APP.ear : POSCO 탄소강 표준모델에서만 사용하세요.
    Context Root(/M0S/M0S010)와 library-ref(M00A60GSI, M00A60GLUE) 가 사용되었습니다.

Tomcat

Local(윈도우환경)에 Tomcat은 C:/apache-tomcat-8.0.30 에 설치되어 있다고 가정합니다.

  1. Tomcat을 중지합니다.

  2. meta-manager.properties( 또는 M0SA010WEB.properties ) 파일에 다음을 추가합니다.
    dataSource.jndiname.security 의 값은 dataSource.jndiname.scheduler과 같게 합니다.

    dataSource.jndiname.security=jdbc/rw/SchedulerDS
    
  3. war 파일(scheduler-manager.war)과 폴더(scheduler-manager)를 삭제합니다.

    C:\apache-tomcat-8.0.30\webapps\scheduler-manager.war
    C:\apache-tomcat-8.0.30\webapps\scheduler-manager
    
  4. war 파일(scheduler-manager.war)을 webapps 폴더에 복사합니다.

  5. Tomcat을 시작합니다.

  6. 화면을 실행해서 admin/pass 로 로그인해서 화면을 점검합니다.

    http://127.0.0.1:8080/scheduler-manager
    

JBoss

Local(윈도우환경)에 JBoss은 C:/jboss-eap-6.3 에 설치되어 있다고 가정합니다.
Jboss는 standalone으로 사용한다고 가정합니다.

  1. Jboss 을 중지합니다.

  2. meta-manager.properties( 또는 M0SA010WEB.properties ) 파일에 다음을 추가합니다.
    dataSource.jndiname.security 의 값은 dataSource.jndiname.scheduler과 같게 합니다.

    dataSource.jndiname.security=jdbc/rw/SchedulerDS
    
  3. war 파일(scheduler-manager.war)을 덮어씁니다.

    C:/jboss-eap-6.3/standalone/deployments/scheduler-manager.war
    
  4. Jboss 을 시작합니다.

  5. 화면을 실행해서 admin/pass 로 로그인해서 화면을 점검합니다.

    http://127.0.0.1:8080/scheduler-manager