관리 및 관리 콘솔 문제점 해결

참고: 이 주제는 하나 이상의 애플리케이션 서버 로그 파일을 참조합니다. 권장되는 대안은 분배 및 IBM® i 시스템에서 SystemOut.log, SystemErr.log, trace.logactivity.log 파일을 사용하는 대신 HPEL(High Performance Extensible Logging) 로그를 사용하고 인프라를 추적하도록 서버를 구성하는 것입니다. 원시 z/OS® 로깅 기능과 연계하여 HPEL을 사용할 수도 있습니다. HPEL을 사용하는 경우 서버 프로파일 바이너리 디렉토리의 LogViewer 명령행 도구를 사용하여 모든 로그에 액세스하고 정보를 추적할 수 있습니다. HPEL 사용에 대한 자세한 정보는 HPEL을 사용한 애플리케이션 문제점 해결 정보를 참조하십시오.
WebSphere® Application Server 제품에서, 관리 기능은 다음에 의해 지원됩니다.
  • Application Server(예: server1) 프로세스
  • WebSphere Application Server, Network Deployment 제품의 배치 관리자 프로세스

관리 콘솔을 사용하려면 프로세스가 실행 중이어야 합니다. wsadmin 명령행 유틸리티는 서버 프로세스가 실행 중이 아닐 때도 일부 관리 기능을 수행하기 위해 사용할 수 있는 로컬 모드를 갖습니다.

콘솔 보기의 서버 상태 및 메시지가 최신 항목이 아님

장기간 SOAP(Simple Object Access Protocol) 연결을 사용하는 Application Server에 연결하는 경우 다음 문제점이 발생하기 시작합니다.
  • 관리 콘솔 패널의 서버 보기에서 상태 열 아래에 표시된 서버 상태가 새로 고쳐지지 않았습니다.
  • 서버 메시지가 관리 콘솔에서 업데이트되지 않았습니다.
  • 많은 포트를 작성하여 TIME_WAIT 상태로 두면 시스템 자원이 줄어듭니다.
이 문제점은 서버를 다시 시작하거나 SOAP 연결 포트를 사용하는 다른 서버를 시작한 후에도 지속됩니다.

SOAP 커넥터에서 연결 풀링을 지원하지 않기 때문에 문제점이 발생합니다. Application Server에서 SOAP 커넥터를 사용하는 조작이 많이 진행 중인 경우 Application Server는 많은 포트를 빨리 열고 닫습니다. 기본적인 TCP/IP 프로토콜 특성 때문에 운영 체제에서 이러한 포트를 재확보하기 전에 얼마 동안 이러한 포트는 TIME_WAIT 상태로 남아 있습니다. WebSphere Application Server에서 여는 포트 수는 운영 체제에서 부과한 한계를 초과할 수 있습니다. 이러한 조건에서는 운영 체제가 포트를 재생할 때까지 SOAP 커넥터를 통해 추가 포트를 열수 없습니다.

문제점을 해결하려면 다음 옵션을 사용하십시오.
  • 포트 수에 대한 운영 체제 한계를 늘리십시오.
  • JMX(Java™ Management Extension) 커넥터를 사용하는 Rational® Application Developer, wsadmin 유틸리티 또는 Java 애플리케이션에서 RMI(Remote Method Invocation) 커넥터를 사용하도록 전환하십시오.
  • Rational Application Developer 또는 관리 콘솔을 통해 새 조작을 수행하기 전에 TIME_WAIT 상태의 포트가 완전히 또는 거의 없어질 때까지 대기하십시오.

역할 기반 권한 실패

애플리케이션에서 JMX(Java Management Extension) 호출(예: getAttribute, setAttribute, invoke 등)을 수행하는 경우 호출자에는 충분한 권한이 부여된 관리 역할이 필요합니다. 필수 역할은 JMX 호출자가 호출하는 MBean 속성 또는 메소드에 따라 다르며, 관리자, 구성자, 모니터 또는 운영자 중 하나일 수 있습니다. 이러한 관리 역할중 하나를 호출자에게 지정하지 않은 경우 또는 역할을 지정했지만 호출자에게 필수 권한이 없는 경우 애플리케이션은 역할 기반 권한 실패를 수신합니다. 예를 들어, 다음과 같습니다.
SECJ0305I: Role based authorization check failed for securityname server.domain.name:3890/user.id, 
accessId user:server.domain.name:3890/uid=user.id,ou=xxxx,dc=yyy,dc=zzz while invoking method
getNodeName on resource Server and module Server.
관리 역할중 하나를 애플리케이션의 호출자에게 지정할 수 없는 경우 애플리케이션은 호출자 대신 해당 역할 중 하나로 로그인할 수 있습니다. 예를 들어 다음과 같습니다.
	try 
	{
				// Create a LoginContext to authenticate a user ID and password.
    javax.security.auth.login.LoginContext    lc = new javax.security.auth.login.LoginContext("WSLogin", 
	  new com.ibm.websphere.security.auth.callback.WSCallbackHandlerImpl("adminuser", 
    "adminpassword"));

				// perform the login
		         lc.login(); 

				// Get the authenticated subject.
				javax.security.auth.Subject adminSubject = lc.getSubject();

				// Define the action that will take place using the authenticated Subject
				// You can define this action anywhere in the code, the action
	  	  // is reference in the WSSubject.doAs that follows.
				java.security.PrivilegedAction adminAction = new java.security.PrivilegedAction() 
		{
						public Object run()
			{
				try 
				{
										// Get the WebSphere AdminService. 										AdminService adminservice = AdminServiceFactory.getAdminService();      

										// Get the WebSphere Admin Local Server MBean instance. 										ObjectName objectname = adminservice.getLocalServer();                  

										// Get the Node name. 					String nodeName = (String)adminservice.getAttribute(objectname, "nodeName");

										// Get the Application Server name. 					String serverName = (String)adminservice.getAttribute(objectname, "name");     
				
										// Get the Application Server Process ID. 					String serverPid = (String)adminservice.getAttribute(objectname, "pid");       

										// Return a result, for this example, just return the serverPid.
										return serverPid;
				} 
				catch (Exception e)
				{
					e.printStackTrace();
				}
						     return null;
			}
		});

				// Invoke an AdminClient resource using the authenticated subject.  
     // This example demonstrates the action of creating an 
     // administrative client and returning a String value to use outside 
     // the doAs block.
				String myData = (String) 
     com.ibm.websphere.security.auth.WSSubject.doAs(adminSubject, adminAction);

		// use "myData" later on....
	} 
		catch (javax.security.auth.login.LoginException e)
	{
		e.printStackTrace();
	}

wsadmin 대화식 스크립트 세션을 사용하여 서버를 시작하거나 중지할 경우, 읽기 제한시간을 표시하는 예외가 발생합니다.

wsadmin 대화식 스크립트 세션을 사용하여 서버를 시작하거나 중지할 경우, 읽기 제한시간 초과를 표시하는 예외가 발생합니다. 예를 들면 다음과 같습니다.
WASX7015E: Exception running command: "$AdminControl startServer server1 Node1;" 
exception information:  com.ibm.websphere.management.exception.ConnectorException 
org.apache.soap.SOAPException: [SOAPException: faultCode=SOAP-ENV:Client; msg=Read 
timed out; targetException=java.net.SocketTimeoutException: Read timed out]

[AIX Solaris HP-UX Linux Windows][z/OS]이 예외는 제한시간 값이 너무 작아서 발생합니다. 단일 서버 편집에 대한 profile_root/properties 디렉토리 또는 Network Deployment 설치에 대한 profile_root/properties 디렉토리의 soap.client.props 파일에서 com.ibm.SOAP.requestTimeout 특성이 지정한 제한시간 값을 늘리십시오. 이 값은 여러 요소(서버에 설치된 애플리케이션의 크기 및 수, 시스템의 속도, 시스템의 사용 레벨 등)에 따라 선택해야 합니다. com.ibm.SOAP.requestTimeout 특성의 기본값은 180초입니다.

[IBM i]이 예외는 제한시간 값이 너무 작아서 발생합니다. 이를 수정하려면 단일 서버 편집을 위한 profile_root/properties 디렉토리 또는 네트워크 배치 설치를 위한 profile_root/properties 디렉토리의 soap.client.props 파일에서 com.ibm.SOAP.requestTimeout 특성이 지정한 제한시간 값을 늘리십시오. 이 값은 여러 요소(서버에 설치된 애플리케이션의 크기 및 수, 시스템의 속도, 시스템의 사용 레벨 등)에 따라 선택해야 합니다. com.ibm.SOAP.requestTimeout 특성의 기본값은 180초입니다.

관리 콘솔 또는 wsadmin 유틸리티를 사용하거나 시작하는 중 문제점 발생

관리 콘솔이나 wsadmin 유틸리티 시작 또는 사용 문제가 있는 경우, 지원하는 서버 프로세스가 시작되고 상태가 양호한지 확인하십시오.
  • 애플리케이션 서버 프로세스의 경우 다음 파일의 내용을 참조하십시오.
    • [AIX Solaris HP-UX Linux Windows][z/OS]서버가 성공적으로 시작되었음을 표시하는 메시지: ADMU3000I: Server server1 open for e-business; process id is nnnn.의 경우 profile_root/logs/server_name/startServer.log.
    • [IBM i]서버가 성공적으로 시작되었음을 표시하는 메시지: ADMU3000I: Server server1 open for e-business; process id is nnnn.의 경우 profile_root/logs/server_name/startServer.log.
    • [AIX Solaris HP-UX Linux Windows]profile_root/logs/server_name/SystemOut.log
    • [IBM i]profile_root/logs/server_name/SystemOut.log
    • [z/OS]서버가 성공적으로 시작되었음을 표시하는 메시지: WSVR0001I: Server server open for e-business의 경우 서버 로그 파일
  • WebSphere Application Server, Network Deployment 제품의 경우 다음 파일의 내용을 참조하십시오.
    • [AIX Solaris HP-UX Linux Windows][z/OS]서버가 성공적으로 시작했음을 표시하는 메시지 ADMU3000I: 서버 dmgr이 e-business에 대해 열렸습니다. 프로세스 id는 nnnn입니다.의 경우 profile_root/logs/dmgr/startServer.log
    • [IBM i]서버가 성공적으로 시작했음을 표시하는 메시지 ADMU3000I: 서버 dmgr이 e-business에 대해 열렸습니다. 프로세스 id는 nnnn입니다.의 경우 profile_root/logs/dmgr/startServer.log
    • [AIX Solaris HP-UX Linux Windows]서버가 성공적으로 시작했음을 표시하는 메시지 ADMU3000I: 서버 dmgr이 e-business에 대해 열렸습니다. 프로세스 id는 nnnn입니다.의 경우 profile_root/logs/dmgr/SystemOut.log
    • [IBM i]서버가 성공적으로 시작했음을 표시하는 메시지 ADMU3000I: 서버 dmgr이 e-business에 대해 열렸습니다. 프로세스 id는 nnnn입니다.의 경우 profile_root/logs/dmgr/SystemOut.log
    • [z/OS]서버가 성공적으로 시작되었음을 표시하는 메시지 WSVR0001I: Server dmgr open for e-business에 대한 서버 로그 파일
  • [z/OS]z/OS 제품의 경우, 작업 출력을 확인하십시오.
  • 메시지 참조 테이블에서 이 파일의 오류 메시지를 찾으십시오. Information Center 탐색에서 참조 보기를 선택한 후, 메시지를 클릭하십시오. wsadmin을 시작하려고 할 때 WASX7213I: 이 스크립트 클라이언트는 서버 프로세스에 연결되어 있지 않습니다와 같은 메시지는, 서버 프로세스가 실행되고 있지 않거나 서버 프로세스가 실행 중인 호스트 시스템에 액세스할 수 없거나 wsadmin 유틸리티에서 사용하는 포트 또는 서버 이름이 올바르지 않음을 표시합니다.
  • 관리 콘솔 또는 wsadmin 서버와 통신하기 위해 올바른 포트 번호를 사용 중인지 확인하십시오.
    • [AIX Solaris HP-UX Linux Windows][IBM i]SystemOut.log 파일에서 찾으십시오.

      [z/OS]joblogs 파일에서 찾으십시오.

      • ADMC0013I: SOAP connector available at port nnnn 행은 서버가 wsadmin 기능을 청취하는 데 사용 중인 포트를 표시합니다.
      • [AIX Solaris HP-UX Linux Windows][z/OS]profile_root/properties/wsadmin.properties 파일의 특성 com.ibm.ws.scripting.port가 wsadmin 유틸리티가 서버에 요청을 전송하는 데 사용하는 포트를 제어합니다.
      • [IBM i]profile_root/properties/wsadmin.properties 파일의 특성 com.ibm.ws.scripting.port가 wsadmin 유틸리티가 서버에 요청을 전송하는 데 사용하는 포트를 제어합니다.
    • [AIX Solaris HP-UX Linux Windows][z/OS]SystemOut.log 파일에 표시된 값과 다를 경우, wsadmin.properties 파일에서 포트 번호를 변경하거나 명령행에서 -port port_number 특성을 사용하여 wsadmin 유틸리티를 시작할 때 올바른 포트 번호를 지정하십시오.

      profile_root/properties/wsadmin.properties 파일의 특성 com.ibm.ws.scripting.port가 wsadmin 유틸리티가 서버에 요청을 전송하는 데 사용하는 포트를 제어합니다.

    • [IBM i]SystemOut.log 파일에 표시된 값과 다를 경우, wsadmin.properties 파일에서 포트 번호를 변경하거나 명령행에서 -port port_number 특성을 사용하여 wsadmin 유틸리티를 시작할 때 올바른 포트 번호를 지정하십시오.

      profile_root/properties/wsadmin.properties 파일의 특성 com.ibm.ws.scripting.port가 wsadmin 유틸리티가 서버에 요청을 전송하는 데 사용하는 포트를 제어합니다.

    • [IBM i]서버 로그 파일에 표시된 값과 다를 경우, wsadmin.properties 파일에서 포트 번호를 변경하거나 명령행에서 -port port_number 특성을 사용하여 wsadmin 유틸리티를 시작할 때 올바른 포트 번호를 지정하십시오.

      메시지 SRVE0171I: 전송 HTTP는 포트 nnnn(기본값 9060)에서 청취 중입니다는 관리 콘솔 요청을 청취하기 위해 서버가 사용하는 포트를 표시합니다.

    • 포트 값이 관리 콘솔에 대한 웹 주소에 지정된 값과 다른 경우, 브러우저의 웹 주소를 올바른 값으로 변경하십시오. 기본값은 http://localhost:9060/ibm/console입니다.
  • Application Server 또는 배치 관리자가 실행 중인 호스트 이름이 브라우저 또는 wsadmin 로그램이 사용되고 있는 시스템에서 도달 가능한지를 테스트하려면 telnet 명령을 사용하십시오. 호스트 이름을 핑하려면 방화벽 또는 연결성 문제가 없어야 합니다.
  • Application Server 또는 배치 관리자가 실행 중인 호스트가 클라이언트 브라우저나 wsadmin 명령이 실행 중인 시스템에 원격인 경우, 적당한 호스트 이름 매개변수가 맞는지 확인하십시오. 다음을 확인하십시오.
    • 콘솔에 대한 브라우저 웹 주소의 호스트 이름
    • 정확한 서버로 wsadmin 유틸리티의 경로를 지정하는 데 사용되는 wsadmin 명령의 -host 호스트 이름 옵션
  • [AIX Solaris HP-UX Linux Windows][IBM i] WebSphere Application Server 기술 지원이 사용자에게 상세한 문제점 판별을 위해 관리 컴포넌트를 추적하도록 요청할 수 있습니다. 이 컴포넌트에 대한 추적 스펙은 com.ibm.websphere.management.*=all=enabled:com.ibm.ws.management.*=all=enabled"입니다.

AdminConfig.parents 메소드를 사용하여 일부 구성 유형의 유효한 상위 유형을 얻을 수 없음

AdminConfig.parents 메소드를 사용하여 특정 구성 유형에 허용된 상위 유형(예: "JavaVirtualMachine")을 얻고자 하는 경우, 원하는 값 대신 정보 메시지가 리턴될 수 있습니다.
wsadmin>print AdminConfig.parents( "JavaVirtualMachine")
다음 정보 메시지가 리턴됩니다.
WASX7351I: The parents command cannot be used to find the parents of type "JavaVirtualMachine"
다음 함수는 앞서 언급한 문제를 다루는 AdminConfig.parents() 메소드의 한 가지 해결책에 대해 설명합니다.
#---------------------------------------------------------------------
# Name: parentTypes()
# Role: To search for configuration types that may contain objects of
#       the specified type should the result of calling
#       AdminConfig.parents( Type )
#       be:
#       WASX7351I: The parents command cannot be used to find the parents of type ...
# Note: Unlike the AdminConfig.list() command, this routine will not
#       raise an InvalidConfigDataTypeException for an unknow datatype
#---------------------------------------------------------------------
def parentTypes( Type ) :
    import os
    WSAStypes = AdminConfig.types().splitlines() 
    if Type in  WSAStypes :
        result = AdminConfig.parents( Type )
        if result.startswith( 'WASX7351I' ) :
            result = []
            for thisType in WSAStypes :
                if AdminConfig.attributes( thisType ).find( Type ) > -1 :
                    result.append( thisType )
            result = (os.linesep).join( result )
    else:
        print 'parentTypes error: unknown / unrecognized type:', Type
        result = None
    return result

[AIX Solaris HP-UX Linux Windows][z/OS]이러한 단계의 어느 것도 문제를 해결하지 못하는 경우, 겪고 있는 특정 문제가 설치는 완료되었으나 관리 콘솔이 시작되지 않습니다 주제에서 다루어지는지 확인하십시오. 문제 진단 및 수정: 학습 자원 주제의 링크를 사용하여 문제가 식별되고 문서화되었는지 확인하십시오. 사용자의 문제점과 유사한 문제점이 없거나 제공된 정보로 사용자의 문제점을 해결할 수 없는 경우, IBM 지원 센터에 문의하여 추가 지원을 받으십시오.

[IBM i]이러한 단계의 어느 것도 문제를 해결하지 못하는 경우, 겪고 있는 특정 문제가 설치는 완료되었으나 관리 콘솔이 시작되지 않습니다 주제에서 다루어지는지 확인하십시오. 문제 진단 및 수정: 학습 자원 주제의 링크를 사용하여 문제가 식별되고 문서화되었는지 확인하십시오.

IBM Support에서 제공하는 알려진 문제점과 해결책에 대한 최신 정보는 IBM Support 페이지에서 다음 주제를 참조하십시오.
IBM Support에서 제공하는 문서를 사용하면 이 문제점을 해결하기 위한 정보 수집 시간을 절약할 수 있습니다. PMR을 열기 전에 IBM 지원 센터 페이지에서 정보 수집에 대한 다음 주제의 내용을 참조하십시오.

주제 유형을 표시하는 아이콘 참조 주제



시간소인 아이콘 마지막 업데이트 날짜: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=rtrb_admincomp
파일 이름:rtrb_admincomp.html