z/OS에서의 프로세스 유형
z/OS® 플랫폼의 Liberty 런타임 환경의 경우에는 두 가지 유형의 프로세스(서버 프로세스 및 엔젤 프로세스)가 있습니다.
- 서버 프로세스(bbgzsrv)
- 서버 프로세스는 기타 운영체제에서와 유사한 방식으로 Liberty 코드를 실행하는
JVM(Java™ virtual machine)입니다. 엔젤 프로세스를 사용하여 MVS 운영자 콘솔로부터 또는 쉘로부터 서버 프로세스를 시작할 수 있습니다. 사용자 ID가 연관 및 유효성 검증되는 방법은
서버를 시작하는 방법에 따라 다릅니다.
- 운영자 콘솔에서 서버를 시작하는 경우, RACF® 같은 z/OS 보안 제품을 사용하여 작성되는 STARTED 프로파일과 연관된 ID가 서버 액세스를 제어하는 데 사용됩니다. start bbgzsrv,parms='defaultServer'
- 쉘에서 서버를 시작할 경우에는 서버를 중지할 때도 쉘에서 해야 합니다. 쉘의 ID가 서버에 사용됩니다.
- server start
- server stop
- 서버 프로세스의 JVM 시작 옵션은 세 가지 소스로부터 올 수 있습니다.
- 서버 프로세스에 대한 프로시저에서 JAVAOPTS DD에 파일 이름을 정의하는 경우에는 Java 명령행 인수를 이 파일에서 읽어옵니다.
- JAVAOPTS DD에 파일 이름을 정의하지 않으면 Java 명령행 인수를 서버 구성 디렉토리에 있는 jvm.options 파일에서 읽습니다.
- jvm.options 파일이 존재하지 않는 경우 JVM은 IBM_JAVA_OPTIONS 환경 변수의 값을 사용합니다.
- 엔젤 프로세스(bbgzangl)
- 엔젤 프로세스는 권한 부여된 키를 사용해 실행되며 운영 체제의 무결성을 보호하는 방식으로 시스템 서비스를 로드 및 액세스하는 기능을 서버 프로세스에 제공합니다. proc를 사용하여 MVS 콘솔에서 엔젤 프로세스를 시작합니다.
z/OS 이미지에서 실행 중인 모든 Liberty 서버는 서버가 실행 중인 코드의 레벨에 상관없이 단일 엔젤을 공유할 수 있습니다.엔젤은 서버와 독립적으로 존재합니다.
특정 엔젤 프로세스를 사용 중인 모든 서버의 목록을 제공하려면 이 MODIFY 명령을 사용하십시오.
MODIFY [jobname.]identifier,display,servers
시스템에서 실행 중인 모든 엔젤 프로세스의 목록을 제공하려면 다음 MODIFY 명령을 사용하십시오.
MODIFY [jobname.]identifier,display,angels
시스템에서 실행 중인 엔젤 프로세스의 버전을 가져오려면 다음 MODIFY 명령을 사용하십시오.
MODIFY [jobname.]identifier,version
다음 표에서는 각 엔젤이 처음 발생하는 제품 레벨 및 엔젤 버전 번호의 목록을 제공합니다.
엔젤 버전 제품 레벨 1 8.5.0.1 2 8.5.5.2 3 8.5.5.9 4 16.0.0.2 5 16.0.0.4 6 17.0.0.1 7 17.0.0.2 - 시스템의 서버에서 사용하는 서비스에 권한을 부여한 z/OS 시스템이 없을 경우에는 엔젤을 활성화시킬 필요가 없습니다. 명령 처리 서비스는 엔젤 프로세스를 필요로 하지 않습니다(명령 처리 서비스는 명령 지원을 위한 권한 부여되지 않은 z/OS 서비스를 사용함).
- 서버가 권한 부여된 서비스의 사용을 시도하도록 구성되었으나 엔젤을 사용할 수 없거나 프로세스의 실질적인 소유자가 엔젤을 사용할 수 있도록 권한 부여되지 않은 경우 이 서버에서는 권한 부여된 서비스를 사용할 수 없습니다. 일부 경우 권한 부여되지 않은 서비스가 대신 사용될 수 있습니다. SAF 레지스트리가 사용하는 권한 부여되지 않은 서비스의 내용을 참조하십시오.
- 다음 명령문을 서버의 ${server.config.dir}/bootstrap.properties 파일에 추가하여 엔젤 프로세스가 없을 때 Liberty가 시작하지 못하도록 방지할 수 있습니다.
com.ibm.ws.zos.core.angelRequired=true
com.ibm.ws.zos.core.angelRequired 특성이 true로 설정된 경우, Liberty는 엔젤 프로세스에 연결되지 않았음을 발견하는 순간에 시작을 중단합니다. 이와 유사하게, Liberty를 시작하는 중에 엔젤 프로세스가 실행 중이며 Liberty 프로세스에 연결하는 경우에는 해당 Liberty 프로세스가 평상시처럼 계속해서 시작됩니다. 이 경우에는 특성의 영향이 없습니다.
추가 정보는 z/OS에서 Liberty 관리의 내용을 참조하십시오.