1. JBoss EAP 독립 실행형 서버로 구성
1.1. standalone.xml 구서 파일
standalone.xml의 일반 구조는 아래와 같음
<server xmlns="urn:jboss:domain:16.0"> <extensions> ...list of extensions here </extensions> <management> ...management interfaces defined here </management> <profile> ...list of subsystems and their configurations </profile> <interfaces> ...interface definitions </interfaces> <socket-binding-group> ...socket binding definitions </socket-binding-group> </server> |
1.2. 확장 프로그램
확장 프로그램은 서버의 핵심 기능을 확장한 모듈
확장 기능은 모듈을 기반으로 하여 하나 이상의 하위 시스템을 정의
<extensions> <extension module="org.jboss.as.clustering.infinispan"/> <extension module="org.jboss.as.connector"/> <extension module="org.jboss.as.deployment-scanner"/> <extension module="org.jboss.as.ee"/> <extension module="org.jboss.as.ejb3"/> <extension module="org.jboss.as.jaxrs"/> <extension module="org.jboss.as.jdr"/> <extension module="org.jboss.as.jmx"/> <extension module="org.jboss.as.jpa"/> <extension module="org.jboss.as.jsf"/> <extension module="org.jboss.as.logging"/> <extension module="org.jboss.as.mail"/> <extension module="org.jboss.as.naming"/> <extension module="org.jboss.as.pojo"/> <extension module="org.jboss.as.remoting"/> <extension module="org.jboss.as.sar"/> <extension module="org.jboss.as.security"/> <extension module="org.jboss.as.transactions"/> <extension module="org.jboss.as.webservices"/> <extension module="org.jboss.as.weld"/> <extension module="org.wildfly.extension.batch.jberet"/> <extension module="org.wildfly.extension.bean-validation"/> <extension module="org.wildfly.extension.clustering.web"/> <extension module="org.wildfly.extension.core-management"/> <extension module="org.wildfly.extension.discovery"/> <extension module="org.wildfly.extension.ee-security"/> <extension module="org.wildfly.extension.elytron"/> <extension module="org.wildfly.extension.health"/> <extension module="org.wildfly.extension.io"/> <extension module="org.wildfly.extension.metrics"/> <extension module="org.wildfly.extension.request-controller"/> <extension module="org.wildfly.extension.security.manager"/> <extension module="org.wildfly.extension.undertow"/> </extensions> |
1.3. 관리 인스턴스
원격 클라이언트에서 인터페이스를 관리하기 위해 EAP 인스턴스에 연결
HTTP 인터페이스 : 관리 콘솔에 대한 액세스를 제공
네이티브 인터페이스 : 기본 인터페이스를 통해 CLI 도구에서 사용하는 전용 바이너리 프로토콜로 관리 작업을 실행 할 수 있게 함
<management> 요소는 이러한 인터페이스를 사용할 수 있도록 하는 설정이 포함되어 있음
실제 설정 파일은 아래와 같이 설정 되어 있음.
<management-interfaces> <http-interface security-realm="ManagementRealm"> <http-upgrade enabled="true"/> <socket-binding http="management-http"/> </http-interface> </management-interfaces> |
네이티브 인터페이스를 사용 하기위해선 아래와 같이 설정을 추가해줘야함.
<management-interfaces> <http-interface security-realm="ManagementRealm"> <socket-binding http="management-http"/> </http-interface> <native-interface security-realm="managementrealm"> </socket-binding native ="management-native"> </native -interface> </management-interfaces> |
하위 바인딩 설정이 필요함
<socket-binding name="management-native" interface="management" port="${jboss.management.https.port:9999}"/> |
* 참고
http 인스턴스를 제거 하면 http 인스페이스를 통한 액세스를 제한 할 수 있음
security-realm 태그 하위에 있는 ApplicationRealm 는 EAP에 원격으로 액세스해야 하는 클라이언트 애플리케이션에 사용 하며, mgmt-users.properties 텍스트 파일을 참조 함 (JBoss 경우 Console을 잘 사용하지 않기 때문에 거의 사용 X)
<security-realms> (중략) <properties-realm name="ManagementRealm"> <users-properties path="mgmt-users.properties" relative-to="jboss.server.config.dir" digest-realm-name="ManagementRealm"/> <groups-properties path="mgmt-groups.properties" relative-to="jboss.server.config.dir"/> </properties-realm> |
1.4. 프로필과 하위 시스템
프로필에 하위 시스템을 추가하는 목적은 두가지 임.
1) 하위 시스템이 프로필 내에 표시되는 경우 해당 프로플을 사용하여 서버에서 해당 하위 시스템을 사용할 수 있음
2) 하위 시스템에서 사용자의 특정 요구에 맞게 확장 기능을 구성 할 수 있음.
<profile> <subsystem xmlns="urn:jboss:domain:logging:8.0"> ...list of logging here </subsystem> <subsystem xmlns="urn:jboss:domain:batch-jberet:2.0"> ...list of batch-jberet here </subsystem> <subsystem xmlns="urn:jboss:domain:datasources:6.0"> ...list of datasources here </subsystem> </profile> |
* 참고
EAP 독립 실행형 서버를 시작할 때 사용 할 수 있는 프로필은 한 개만 있음.
섹션에 표시되는 경우에만 프로필을 추가 할 수 있음.
2. 인터페이스 및 소켓 바인딩 그룹 구성
2.1. 인터페이스
소켓을 바인딩 할 수 있는 네트워크 인터페이스, IP 주소 또는 호스트 이름에 대한 논리적 이름
<interfaces> <interface name="management"> <inet-address value="${jboss.bind.address.management:127.0.0.1}"/> </interface> <interface name="public"> <inet-address value="${jboss.bind.address:127.0.0.1}"/> </interface> </interfaces> |
해당 주소를 변경하기 위해서는 아래 옵션을 통해 변경이 가능함
/product/was/jboss-eap-7.4/bin/standalone.sh -Djboss.home.dir=/product/was/jboss-eap-7.4 -Djboss.server.base.dir=/product/was/domains/eap -Djboss.bind.address.management=192.168.56.101 -Djboss.bind.address=192.168.56.101 & |
'미들웨어 > Jboss' 카테고리의 다른 글
JBoss EAP 자격증 취득 2 - 독립 실행형 서버 구성 (0) | 2024.07.09 |
---|---|
JBoss EAP 자격증 취득 1 - 아키텍처 및 기능 (1) | 2024.07.08 |
JBoss 버전 별 Support 확인 - 1 (0) | 2023.02.11 |