복제본 세트에 파일을 포함하고 해당 세트에 있는 다른
복제본의 구성을 자동으로 업데이트하도록 하나의 집합체 제어기
server.xml을 구성할 수 있습니다. 구성의
자동 공유는 다른 복제본의 구성을 수동으로 업데이트하지 않아도
된다는 것을 의미합니다. 구성의 자동 공유는 자동 스케일링을
사용하는 집합체의 경우 특히 유용합니다.
이 태스크 정보
해당 제어기의 configDropins/defaults
디렉토리에 제어기 구성에 대한 포함 파일을 놓아 복제본의 구성을 자동으로
업데이트할 수 있습니다. 또는 ControllerConfigMBean 조작을 사용하여 집합체
제어기의 공유 구성 파일을 나열하거나 추가하거나 제거할 수 있습니다.
프로시저
- 복제본 사이에서 공유할 구성을 사용하여 제어기에 대한 configDropins
디렉토리를 작성하십시오.
복제본 세트의 제어기에 configDropins/defaults 디렉토리가
아직 없는 경우에는 해당 제어기에 대해 $WLP_USER_DIR/servers/server_name/configDropins/defaults
디렉토리를 작성하십시오.
참고: configDropins 서브디렉토리의 파일 간 우선순위에 대한
정보는
구성 드롭인 폴더를 사용하여 서버 구성 지정의 내용을 참조하십시오.
이 주제에서는
configDropins/defaults 디렉토리와
configDropins/overrides 디렉토리를 모두 언급합니다.
configDropins/overrides 디렉토리에 놓여진 제어기
구성은 복제본 사이에서 공유되지 않습니다. 복제본 사이에서 구성을 공유하려면
configDropins/defaults 디렉토리를 사용해야 합니다.
- 복제본 세트의 다른 복제본과 제어기 구성을 공유하십시오.
- 복제본 세트 제어기의 구성을 해당 configDropins/defaults 디렉토리에 놓으십시오.
예를 들어, 제어기의 server.xml 포함 파일을 해당
configDropins/defaults 디렉토리에 복사하십시오.
- ControllerConfigMBean 조작을 사용하여 집합체 제어기의 공유 구성
파일을 나열하거나 추가하거나 제거하십시오.
구성 파일은 제어기의
$WLP_USER_DIR/servers/server_name/configDropins/defaults
디렉토리에 저장되며 복제본의 configDropins/defaults 디렉토리와 공유됩니다.
Jython 스크립트 또는 Java 클라이언트(예: JConsole)를 사용하여
다음과 같은 집합체 제어기 ControllerConfigMBean 조작을 수행하십시오.
- listSharedConfig
- listSharedConfig 조작은 복제본의 공유 구성
디렉토리에 있는 파일을 나열합니다.
- addSharedConfig
- addSharedConfig 조작은 구성을 파일에 추가하고
해당 파일을 각 복제본의 configDropins/defaults 디렉토리에
저장합니다. 해당 조작에 대해 두 개의 매개변수를 지정해야 합니다.
- fileName
- 공유할 제어기 구성의 파일 이름입니다. 공유 구성 디렉토리에 있는 파일 이름을 지정하면 기존 파일을 겹쳐씁니다. (문자열)
- config
- 올바른 server.xml 포함 파일의 컨텐츠입니다. (문자열)
예:
<?xml version="1.0" encoding="UTF-8" ?>
<server>
<logging traceSpecification="com.ibm.ws.collective.repository.internal.SharedConfigManager=all"/>
</server>
- removeSharedConfig
- removeSharedConfig 조작은 각 복제본의 configDropins/defaults
디렉토리에서 파일을 제거합니다. 해당 조작에 대해 하나의 매개변수를 지정해야 합니다.
- fileName
- 각 복제본의 공유 구성 디렉토리에서 삭제할 제어기 구성의 파일 이름입니다. (문자열)
제어기 구성은 복제본 세트에 있는 모든 기타 복제본의 구성 dropins
디렉토리와 자동으로 동기화됩니다. 구성을 자동으로 공유하는 제어기에
복제본을 추가하면 제어기의 configDropins/defaults
디렉토리의 컨텐츠가 새 복제본에 복제됩니다. 하나의 제어기에 대한
스케일링 정책 정의에 대해 작성하는 변경사항은 기타 복제본의 구성
dropins 디렉토리에 있는 구성과 자동으로 동기화됩니다.
제어기 구성이 기타 복제본의 구성과 자동으로 동기화되지 않는
경우에는 제어기 및 복제본 로그를 확인하십시오. 또한 configDropins/defaults
디렉토리를 사용하여 제어기 구성을 공유한 경우에는 구성 모니터링이 꺼져 있지
않은지 확인하십시오. 기본적으로 구성 모니터링은 사용으로 설정되어 있습니다.
구성 모니터링이 사용 안함으로 설정된 경우에는 FileNotificationMBean을 사용하여
제어기에 구성 변경사항을 알릴 수 있으며 그러면 변경사항이 복제본과 공유됩니다.
ControllerConfigMBean 조작에 의해 저장된 구성은 구성 모니터링이 사용으로
설정되어 있는지 여부와 관계없이 복제본 사이에서 자동으로 공유됩니다.
동적 업데이트 제어의 내용을 참조하십시오.
예: JConsole을 사용하여 복제본 사이에서 제어기 구성
공유
이 예제에서는 JConsole을 사용하여 제어기 configDropins/defaults
디렉토리의 server.xml 포함 파일을 모든 복제본과
공유하는 방법을 설명합니다.
- JConsole을 집합체 제어기 프로세스에 연결하십시오.
- 집합체 제어기가 실행 중인지 확인하십시오.
wlp/bin/server status collective_controller_name
복제본은
실행되고 있지 않아도 됩니다. 실행되고 있지 않은 복제본은 시작될 때
공유 구성을 동기화합니다.
- JConsole을 시작하십시오(실행되고 있지 않은 경우). Windows의 경우
Java_installation\bin\jconsole.exe 파일을 실행하십시오.
- 집합체 제어기에 대한 프로세스를 선택하십시오.
JConsole과 함께 REST 커넥터를
사용하여 기본 HTTPS 연결을 통해 원격으로 MBean에 액세스하려면
Creating remote JMX connections in Liberty를 참조하십시오.
- JConsole에서 ControllerConfigMBean addSharedConfig
조작을 실행하여 제어기 server.xml 포함 파일을
각 복제본의 configDropins/defaults 디렉토리에
추가하십시오.
- JConsole MBean 탭에서 ControllerConfigMBean
addSharedConfig 조작을 선택하십시오.
- fileName에 대해 server.xml 포함 파일의
경로를 지정하십시오. 예를 들어, 다음과 같습니다.
$WLP_USER_DIR/servers/collective_controller_name/trace.xml
- 구성에 대해 추가할 구성을 지정하십시오. 예를 들어,
다음과 같습니다.
<?xml version="1.0" encoding="UTF-8" ?>
<server>
<logging traceSpecification="com.ibm.ws.collective.repository.internal.SharedConfigManager=all"/>
</server>
- addSharedConfig를 클릭하여 조작을 실행하십시오.
- 해당 조작이 복제본 사이에서 제어기 구성을 공유했는지 확인하십시오.