batchManager 명령행 클라이언트 유틸리티

batchManager 명령행 클라이언트 유틸리티는 Liberty에서 실행되는 일괄처리 작업을 관리하기 위한 명령행 인터페이스를 제공합니다.

batchManager 명령행 클라이언트 유틸리티는 일괄처리 관리자의 REST API를 통해 일괄처리 관리자와 상호작용합니다.  batchManager 명령행 클라이언트 유틸리티를 사용하려면 일괄처리 관리자가 Liberty 서버에서 실행 중이어야 합니다. 일괄처리 관리 기능을 사용하여 Liberty 일괄처리 관리자를 설치하고 사용할 수 있습니다.

SSL 구성

batchManager 명령행 클라이언트 유틸리티는 SSL 연결을 통해 일괄처리 관리자와 통신합니다. Liberty 서버에서 실행 중인 일괄처리 관리자와의 SSL 통신을 용이하게 하려면 유틸리티가 Liberty 서버의 SSL 인증서를 확인할 수 있어야 합니다.

SSL 인증서가 잘 알려진 인증 기관(CA)에 의해 서명되면 유틸리티는 CA로 인증서를 확인할 수 있습니다. 추가 구성은 필요하지 않습니다.

SSL 인증서가 CA에 의해 서명되지 않으면 다음 조치 중 하나를 수행하여 서버의 SSL 인증서를 신뢰하도록 유틸리티를 구성해야 합니다.
  • --trustSslCertificates 옵션을 지정하십시오. 이 옵션은 모든 SSL 인증서를 신뢰하도록 유틸리티를 구성합니다.
  • 서버의 SSL 인증서를 유틸리티의 신뢰 저장소에 포함하십시오.

--trustSslCertificates 옵션을 지정하면 유틸리티가 수신하는 모든 SSL 인증서를 신뢰하며 추가 구성이 필요하지 않습니다.

서버의 SSL 인증서를 유틸리티의 신뢰 저장소에 포함하는 옵션을 선택하는 경우, 유틸리티가 신뢰 저장소를 찾을 수 있도록 유틸리티를 구성해야 합니다. 유틸리티는 독립형 Java 기본입니다. javax.net.ssl.truststore와 같은 시스템 특성을 사용하여 SSL을 구성합니다.

 일괄처리 관리자가 유틸리티와 동일한 시스템에서 실행 중이면 서버 키 저장소에서 직접 유틸리티를 가리킬 수 있습니다.
   $ export JVM_ARGS="-Djavax.net.ssl.trustStore=/path/to/server/keystore.jks"
   $ batchManager submit ...
주의: -D 특성과 같은 JVM 인수는 JVM-ARGS 환경 변수에 의해 batchManager 명령행 클라이언트 유틸리티로 전달됩니다.
서버 키 저장소를 직접 사용할 수 없으면 서버 인증서를 서버 키 저장소에서 내보내고 클라이언트 신뢰 저장소로 가져와야 합니다. 인증서를 내보내고 가져오기 위해 JDK keytool 유틸리티를 사용하십시오. 다음 예에서 서버 인증서는 default 별명 아래의 [server-dir]/resources/security/key.jks 키 저장소 파일에 저장되며 비밀번호는 Liberty입니다.
    $ keytool -export -alias default -file server.crt -keystore [server-dir]/resources/security/key.jks -storepass Liberty
    $ keytool -import -alias server_crt -file server.crt -keystore /path/to/truststore.jks -storepass passw0rd
주의: import 명령은 truststore.jks 파일이 없는 경우 이 파일을 작성합니다.
    $ export JVM_ARGS="-Djavax.net.ssl.trustStore=/path/to/truststore.jks"
    $ batchManager submit ...

명령 및 사용법

batchManager 명령행 클라이언트 유틸리티는 작업 상태를 제출하고, 중지하고, 다시 시작하고, 확인하기 위한 명령을 제공합니다.

일반적으로 유틸리티를 사용할 경우:

$ batchManager [command] [options]

사용 가능한 명령 목록을 확인할 경우:

$ batchManager help

특정 명령에 대한 설명과 옵션을 확인할 경우:

$ batchManager help [command]

다음 예는 작업을 제출하고 작업이 완료될 때까지 기다리는 방법을 보여줍니다.

  $ batchManager submit \
        --batchManager=<host>:<port>
        --user=[credentials for logging into the batch manager]
        --password=[credentials for logging into the batch manager]
        --applicationName=[application name used when packaging the batch app]
        --jobXMLName=[job XML file basename in the app's batch-jobs dir]
        --wait

jobParametersFile 및 jobPropertiesFile

batchManager 클라이언트 유틸리티를 사용하여 일괄처리 작업을 제출할 때, jobParametersFilejobPropertiesFile은 쉼표로 구분된 다중 파일의 사용을 지원합니다. 쉼표로 구분된 목록의 뒷부분에 있는 파일은 목록의 앞 부분에 있는 파일보다 우선순위가 높습니다. 다음 예제는 쉼표로 구분된 목록의 올바른 사용법을 보여줍니다.
jobParametersFile=filePath1,filePath2,filePath3
jobPropertiesFile=filePath1,filePath2,filePath3
예를 들어, --jobParametersFile=<filepath1>는 제어 특성 파일의 --jobParametersFile=<filepath1>,<filepath2>를 대체할 수 있습니다. 결과 매개변수는 --jobParametersFile=<filepath1>입니다.
[17.0.0.3 and later]

제어 특성 및 작업 매개변수

단일 작업 매개변수 세트를 빌드하려면 프로그램은 빈 세트로 시작하여 다양한 소스의 특성을 계속 로드합니다. 그런 다음, 프로그램은 특성을 단일 세트에 병합합니다. 프로그램은 모든 소스를 읽고 로드한 후 단일 특성 세트를 작업 매개변수로 작업 제출에 전달합니다.

이 특성 세트는 이 순서대로 병합하여 빌드됩니다. 동일한 키를 가진 동일한 특성이 두 번 이상 로드되고 설정되면 나중 값이 이전 값을 대체합니다. 이 시퀀스의 이후 단계는 이전 단계보다 우선순위가 높습니다.

  1. --jobParametersFile 매개변수가 명령행 매개변수로 포함되지 않은 경우 오름차순 서열대로 다음 조치가 발생합니다.
    1. --jobParametersFile 제어 특성에 의해 참조되는 파일의 컨텐츠가 로드되고 병합됩니다. 이 제어 특성은 하나의 제어 특성 파일에만 나타날 수도 있고, 특성이 대체된 경우 둘 이상의 파일에 나타날 수도 있습니다.
    2. 작업 매개변수 제어 특성이 로드되고 병합됩니다. 이러한 특성은 제어 특성 파일 내부에 --jobParameter=key=value로 구조화됩니다.
    3. 명령행 작업 매개변수가 로드되고 병합됩니다.
  2. --jobParametersFile 매개변수가 명령행 매개변수로 포함되지 않은 경우 오름차순 서열대로 다음 조치가 발생합니다.
    1. --jobParametersFile 제어 특성에 의해 참조되는 파일의 컨텐츠가 로드되고 병합됩니다. 이 제어 특성은 하나의 제어 특성 파일에만 나타날 수도 있고, 특성이 대체된 경우 둘 이상의 파일에 나타날 수도 있습니다.
    2. 작업 매개변수 제어 특성이 로드되고 병합됩니다. 이러한 특성은 제어 특성 파일 내부에 --jobParameter=key=value로 구조화됩니다.
    3. 명령행 작업 매개변수가 로드되고 병합됩니다.

이 구조는 --controlPropertiesFile 매개변수가 명령행 인수보다 우선순위가 낮기 때문에 발생합니다. --jobParametersFile 매개변수를 지정하는 레벨은 해당 파일의 우선순위 레벨을 판별합니다.

프로그램은 시퀀스의 각 파일을 읽고 로드할 때 발견되는 --jobParametersFile--jobPropertiesFile 특성을 하나의 특성으로 접습니다. 각 특성은 다른 특성의 별명입니다. 이러한 별명 중 하나를 사용하여 명령행 인수 또는 제어 특성을 대체하면 이전에 대체된 제어 특성 파일에 나타나는 둘 중 하나의 인스턴스가 대체됩니다.

참고: Javadoc 정보 파일 java.util.Properties.load()에서 주석 스펙을 확인하십시오.
For z/OS platforms

SAF 키 링이 있는 z/OS에서의 batchManager 명령행 클라이언트 유틸리티

batchManager 명령행 클라이언트 유틸리티에서 Liberty 서버의 SAF(System Authorization Facility) 키 링을 사용하려면, SAF 키 링을 읽을 권한이 부여된 batchManager 명령행 클라이언트 유틸리티 호출에서 지정된 사용자 ID 및 java.environment 설정을 설정해야 합니다.

다음 명령은 SAF 키 링을 읽을 수 있도록 사용자에게 권한을 부여합니다.

중요사항: ringOwnerId는 일반적으로 Liberty 서버의 사용자 ID와 동일한 ID입니다.

PermitRingOwnerId.RingName.LST CLASS(RDATALIB)ID(userId)ACCESS(UPDATE)

SETROPTS RACLIST(RDATALIB) GENERIC(RDATALIB) REFRESH

자세한 정보는 WebSphere Application Server z/OS 보안 서버 RACF 명령 언어 참조서를 참조하십시오.

다음 예에서는 환경 변수 JVM_ARGS를 정의합니다.

export JVM_ARGS="-Djavax.net.ssl.trustStore=safkeyring://ringOwnerId/ringName
-Djavax.net.ssl.trustStoreType=JCERACFKS -Djavax.net.ssl.keyStore=safkeyring://ringOwnerId/ringName
-Djavax.net.ssl.keyStoreType=JCERACFKS -Dcom.ibm.ssl.keyStoreFileBased=false -Dcom.ibm.ssl.trustStoreFileBased=false
-Djava.protocol.handler.pkgs=com.ibm.crypto.provider -Djavax.net.ssl.keyStorePassword=password"
주의: javax.net.ssl.keyStorePassword 특성이 필요하고 이 특성의 값은 비밀번호이며 주요 정보가 스토리지에 존재하는 동안 JVM(Java Virtual Machine)에서 주요 정보의 사본을 디코드하는 데 사용됩니다.

리턴 코드

batchManager 명령행 클라이언트 유틸리티는 다음과 같은 리턴 코드를 출력합니다.
코드 설명
0 태스크가 정상적으로 완료되었습니다.
20 필수 인수를 지정하지 않았습니다.
21 인식되지 않는 인수를 지정했습니다.
22 올바르지 않은 인수 값을 지정했습니다.
255 알 수 없는 오류가 발생했습니다.
참고: --wait 인수를 지정하면 유틸리티는 사용자가 기다리고 있는 작업의 상태에 대해 다음과 같은 리턴 코드를 출력합니다.
코드 설명
33 작업이 중지되었습니다.
34 작업이 정상적으로 완료되지 않았습니다.
35 작업이 정상적으로 완료되었습니다.
36 작업을 포기했습니다.

주제의 유형을 표시하는 아이콘 개념 주제

파일 이름: cwlp_jbatch_commandlineutil.html