Sun Management Center 3.5 System Reliability Manager 사용자 설명서

5장 스크립트 리포지토리 및 스크립트 시작 관리자 모듈

System Reliability Manager에 포함된 스크립트 리포지토리 및 스크립트 시작 관리자 모듈을 사용하면 원격 장치에서 임의적인 관리 태스크를 수행하는 스크립트를 실행할 수 있습니다. 원격 장치에서 스크립트를 실행하는 기능을 사용하면 중앙 관리 스테이션의 처리 부하가 줄어듭니다. 또한 로컬에서 폴링을 계속할 수 있게 하는 메커니즘도 제공합니다.

이 장에서는 다음 내용을 설명합니다.

스크립트 리포지토리 모듈

스크립트 리포지토리 모듈을 사용하여 스크립트 시작 관리자 모듈이 실행하는 에이전트 시스템에서 사용할 수 있는 스크립트를 볼 수 있습니다. 또한 스크립트 리포지토리 모듈은 스크립트 시작 관리자 모듈이 지원하는 언어를 나열합니다.

스크립트 정보 그룹에는 다음 두 테이블이 포함되어 있습니다.

스크립트 리포지토리 모듈에 대한 보안이 다음과 같이 구현됩니다.

스크립트 리포지토리 모듈 액세스
  1. 모듈을 로드합니다.

    모듈 로드 및 언로드에 대한 자세한 내용은 Sun Management Center 3.5 사용자 설명서를 참조하십시오. 네비게이터 창의 로컬 응용 프로그램 아래에서 스크립트 리포지토리 모듈을 사용할 수 있습니다.

  2. 브라우저 창에서 로컬 응용 프로그램을 두 번 누릅니다.

    해당 범주가 확장됩니다.

  3. 로컬 응용 프로그램 아래에서 스크립트 리포지토리를 두 번 누릅니다.

    해당 범주가 확장됩니다.

  4. 언어 테이블 및 스크립트 테이블을 보려면 스크립트 정보 폴더를 두 번 누릅니다.

언어 테이블

스크립트 정보 그룹의 첫 번째 테이블은 언어 테이블입니다. 언어 테이블에는 에이전트에서 지원하는 모든 스크립트 언어가 나열됩니다. 각 테이블 항목에는 다음 속성이 있습니다.

이 테이블에 사용할 수 있는 명령은 없습니다. 언어를 삭제하거나 새 언어를 지정할 수 없습니다. 모듈이 지원하는 언어 및 모듈의 구현에 의해 항목의 수가 고정되고 정의됩니다.

셀에 새 정보를 입력하여 언어 소스를 수정할 수 있습니다.

경보

지정된 위치에서 해당 언어를 찾을 수 없는 경우 System Reliability Manager에서 정보(INFO) 경보가 발생합니다.

스크립트 테이블

스크립트 테이블에서는 에이전트의 스크립트 시작 관리자에게 알려진 모든 스크립트를 나열합니다. 스크립트 테이블의 각 항목에는 다음 표에 나열된 속성이 있습니다.

표 5–1 스크립트 테이블 값

속성 

설명  

스크립트 소유자 

에이전트에서 이 스크립트를 소유하는 사용자입니다. 

스크립트 이름 

스크립트 이름입니다.  

설명 

스크립트의 목적에 대한 설명입니다. 

관리 상태 

가능한 상태는 다음과 같습니다. 

  • 사용 가능 상태이면 스크립트 소유자가 다른 사람에게 스크립트 사용을 허용합니다.

  • 사용 불가 상태이면 스크립트 소유자가 다른 사람에게 스크립트 사용를 허용하지 않습니다.

작동 상태 

가능한 상태는 다음과 같습니다. 

  • 사용 가능 상태이면 스크립트가 사용 가능하고 시작 테이블 항목이 스크립트를 시작할 수 있습니다.

  • 사용 불가 상태이면 스크립트를 사용할 수 없습니다.

  • NoSuchScript 상태이면 지정된 위치에 스크립트가 존재하지 않습니다.

  • WrongLanguage 상태이면 해당 언어를 알 수 없습니다.

언어 

스크립트를 작성한 언어입니다. 이 값은 언어 테이블에 나열된 언어 중 하나여야 합니다. 

스크립트 소스 

스크립트의 파일 이름입니다. 

기본 인수 

해당 스크립트의 기본 인수입니다. 

스크립트 사용자 

해당 스크립트를 사용할 수 있는 사용자입니다. 

그룹 

해당 스크립트를 사용할 수 있는 UNIX 그룹입니다. 

브라우저를 통하여 수정할 수 있는 필드는 관리 상태, 스크립트 사용자 및 그룹입니다. 관리 상태는 사용자가 원하는 스크립트 상태를 입력한 영역입니다. 예를 들어, 관리 상태를 활성화 또는 비활성화할 수 있습니다. 이 선택 항목은 사용자가 원하는 상태를 반영하지만 일단 모듈에서 모든 조건이 일치하고 준비되었음을 확인한 경우 실제 상태를 반영하는 것은 작동 상태입니다.

스크립트 테이블 경보

ScriptInfo.dat 파일

ScriptInfo.dat에는 실행할 수 있는 스크립트에 대한 정보가 있습니다. ScriptInfo.dat 파일에 새 스크립트를 추가하면 모듈이 해당 스크립트를 인식할 수 있습니다. 사용자가 소유하는 모든 스크립트는 이 파일 목록에 포함해야 합니다.

새 스크립트추가
  1. 새 스크립트를 작성합니다.

    ScriptInfo.dat 파일의 형식은 표준 구성 파일 형식을 따릅니다.

    slice:attribute=value
    
  2. 새 스크립트를 ScriptInfo.dat 파일에 복사합니다.

    ScriptInfo.dat 파일은 다음 예에서처럼 사용자 이름에 의해 확인되는 디렉토리에 있습니다.

    /var/opt/SUNWsymon/SysMgmtPack/script-launcher/scripts/username/ScriptInfo.dat

    이 파일에 스크립트에 대한 정보가 이미 포함되어 있는 경우 현재 정보 아래에 스크립트를 추가합니다.

    ScriptInfo.dat 파일의 다음 예에는 두 개의 스크립트가 있습니다.

    Script1:Owner = Scott
    Script1:Name = MyHello
    Script1:Desc = Says Hello
    Script1:Language = Java1.2
    Script1:Source = Hello.class
    Script1:AdminStat = 1
    Script1:OperStat = 1
    Script1:Users = Noble
    Script1:Group = Staff
    Script2:Owner = Denise
    Script2:Name = MyFile
    Script2:Desc = Says Hello
    Script2:Language = Java1.2
    Script2:Source = Hello.class
    Script2:AdminStat = 1
    Script2:OperStat = 1
    Script2:Users = Noble
    Script2:Group = Staff

스크립트 시작 관리자 모듈

스크립트 시작 관리자 모듈에서 관리 기능을 에이전트에 위임할 수 있습니다. 관리 기능은 관리 스크립트 언어로 작성한 관리 스크립트입니다. 스크립트 시작 관리자 모듈은 멀티 인스턴스 모듈입니다. 스크립트 시작 관리자 모듈의 모든 인스턴스는 언어 및 스크립트 정보를 위해 동일한 스크립트 리포지토리 모듈에 액세스할 수 있습니다.

모듈에는 다음 두 테이블이 포함되어 있습니다.

스크립트 시작 관리자 모듈에서 다음과 같이 스크립트를 조정할 수 있습니다.

스크립트 시작 관리자 모듈의 보안은 다음과 같이 구현됩니다.

스크립트 시작 관리자 모듈 액세스
  1. 모듈을 로드합니다.

    자세한 내용은 Sun Management Center 3.5 사용자 설명서를 참조하십시오. 브라우저 창의 로컬 응용 프로그램 아래에서 스크립트 리포지토리 모듈을 사용할 수 있습니다.

  2. 브라우저 창의 로컬 응용 프로그램을 두 번 누릅니다.

  3. 스크립트 시작 관리자를 두 번 누릅니다.

    스크립트 시작 관리자가 시작 테이블 및 결과 테이블을 표시합니다.

    스크립트 실행 프로그램과 테이블이 있는 모듈 브라우저입니다. 그래픽에 대한 설명은 컨텍스트를 참조하십시오.

시작 테이블

시작 테이블은 모든 스크립트의 실행을 제어합니다. 이 테이블은 시작할 준비가 된 스크립트 및 스크립트 매개 변수를 설명합니다.

시작 테이블의 항목은 인수를 스크립트에 추가합니다. 항목은 또한 스크립트를 실행할 권한에 연결하기 위해 사용되는 소유자를 정의합니다.

이 테이블의 단일 항목을 통하여 스크립트의 여러 인스턴스를 만들 수 있습니다. 또한 이 테이블의 여러 항목이 스크립트 테이블의 동일한 스크립트를 가리킬 수도 있습니다. 인수와 사용 권한을 다르게 하여 동일한 스크립트를 여러 개 실행할 수 있습니다. 시작 소유자의 사용 권한으로만 스크립트를 실행할 수 있습니다.

시작 테이블에는 다음 표에 나열된 속성이 있습니다.

표 5–2 시작 테이블 속성

속성 

설명  

시작 소유자 

이 항목을 소유하는 관리자입니다. 

시작 이름 

항목의 이름입니다. 이름은 시작 테이블의 각 행에 고유해야 합니다.  

스크립트 소유자  

스크립트 이름과 조합하여 스크립트를 확인합니다.  

스크립트 이름  

스크립트 소유자와 조합하여 스크립트를 확인합니다. 

인수  

스크립트에 제공되는 인수입니다. 

시작  

스크립트의 실행을 시작합니다. 스크립트를 시작하려면 다음 조건이 충족되어야 합니다.

  1. 항목의 작동 상태는 사용 가능 상태이어야 합니다.

  2. 스크립트 테이블에 스크립트 소유자 및 스크립트 이름 필드와 동일한 값을 가진 항목이 있어야 합니다.

  3. 스크립트 테이블에서 스크립트 작동 상태는 사용 가능 상태여야 합니다.

  4. 시작 소유자에는 스크립트를 시작하는 데 필요한 보안 권한이 있습니다.

시작 제어  

이 개체는 시작 테이블에서 시작되는 실행 테이블의 모든 실행 중인 스크립트의 상태 변경을 요청하는 데 사용됩니다.  

관리 상태  

이 시작 테이블 항목의 원하는 상태인데 이 상태는 사용 가능 또는 사용 불가 상태일 수 있습니다.  

작동 상태  

시작 테이블 항목의 실제 상태인데 이 상태는 사용 가능 또는 사용 불가 상태일 수 있습니다.  

실행 중인 최대 스크립트 수  

해당 항목에서 호출하여 동시에 실행할 수 있는 스크립트의 최대 수입니다. 기본값은 3입니다. 필드에 직접 작성하여 해당 필드를 수정할 수 있습니다.  

완료된 최대 스크립트 수  

기본값은 3입니다. 시작 테이블의 해당 항목에서 호출하여 결과 테이블에 보존할 수 있는 완료된 스크립트의 최대 수입니다.  

수명  

해당 항목에서 시작된 스크립트가 실행할 수 있는 기본 최대 시간입니다. 기본값은 86,400초(1일)입니다.  

만료 시간 

해당 항목에서 시작된 스크립트에 대한 정보가 스크립트가 실행을 종료한 후에 결과 테이블에 보존되는 기본 최대 시간입니다. 

실행 테이블에 새 항목 추가
  1. 스크립트 시작 관리자 모듈 액세스에서 설명한 대로 시작 테이블에 액세스합니다.

  2. 시작 테이블 헤더를 마우스 오른쪽 버튼으로 누릅니다.

    팝업 메뉴가 표시됩니다.

    실행 테이블과 메뉴가 있는 모듈 브라우저입니다. 그래픽에 대한 설명은 컨텍스트를 참조하십시오.
  3. 새 행을 선택하고 필요한 모든 매개 변수를 입력합니다.

    스크립트 소유자 및 스크립트 이름 값은 이 시작 버튼에서 시작된 스크립트를 가리킵니다.

스크립트 인스턴스 시작
  1. 스크립트 시작 관리자 모듈 액세스에서 설명한 대로 시작 테이블에 액세스합니다.

  2. 원하는 스크립트 이름을 표시하는 행을 마우스 오른쪽 버튼으로 누릅니다.

  3. 시작 스크립트를 선택합니다.

    스크립트가 시작됩니다.

스크립트 중지
  1. 스크립트 시작 관리자 모듈 액세스에서 설명한 대로 시작 테이블에 액세스합니다.

  2. 중지할 스크립트를 표시하는 행을 마우스 오른쪽 버튼으로 누릅니다.

    팝업 메뉴가 나타납니다.

  3. 중단 스크립트를 선택합니다.

    스크립트가 실행을 중지합니다.

결과 테이블

결과 테이블에서 현재 실행 중이거나 최근에 종료된 모든 스크립트를 나열합니다. 이 테이블에는 다음 정보가 포함되어 있습니다.

결과 테이블의 각 행에는 스크립트 호출 시에 전달된 인수, 스크립트가 만든 결과 및 스크립트 종료 코드가 포함되어 있습니다. 결과 테이블은 또한 현재 실행 상태에 대한 정보와 시작 및 종료 타임스탬프를 제공합니다.

결과 테이블에는 다음 표에 나열된 속성이 표시됩니다.

표 5–3 결과 테이블 속성

속성 

설명  

실행 색인 

스크립트와 관련된 고유 식별자입니다. 이 값은 launchName에 점점 더 높은 정수를 추가하여 얻습니다. 정수는 0부터 시작합니다. 

인수 

스크립트가 시작될 때 스크립트에 제공되는 인수입니다. 

종료 코드 

스크립트가 실행을 종료한 이유입니다. 가능한 값은 다음과 같습니다.  

  • None – 스크립트가 여전히 초기화 또는 실행 상태에 있습니다.

  • Halted – 스크립트가 중단되었습니다.

  • Successful – 스크립트 실행이 성공적으로 종료되었습니다.

  • Failed – 오류와 함께 스크립트 실행이 종료되었습니다.

결과 로그 

로그 파일의 경로입니다. 

실행 제어 

해당 행에 의해 정의된 실행 스크립트의 원하는 상태(중단 또는 작동하지 않음)입니다. 

실행 상태 

스크립트 실행 상태입니다. 가능한 값은 다음과 같습니다.  

  • Initializing – 스크립트가 초기화 중입니다.

  • Running – 스크립트가 실행 중입니다.

  • Not Running – 성공적으로 완료, 실패 또는 중단되어 스크립트가 이 상태에 있을 수 없습니다. 스크립트가 실행되지 않는 정확한 이유가 종료 코드 필드에 반영됩니다.

오류 로그 

로그 파일의 경로입니다. 

시작 시간 

실행이 시작된 날짜 및 시간입니다. 

종료 시간 

실행이 종료된 날짜 및 시간입니다. 

수명 

스크립트의 실행 가능한 시간입니다. 이 시간이 만료될 때 스크립트가 종료되지 않으면 자동으로 강제 종료됩니다. 

만료 시간 

스크립트가 종료된 후 결과 테이블에 해당 행이 있을 수 있는 시간입니다. 이 속성은 스크립트가 시작되었을 때 시작 테이블의 만료 시간 필드 값입니다. 스크립트가 Not Running 상태가 된 후에 만료 시간(초)이 초과되면 결과 테이블에서 스크립트 항목이 삭제됩니다. 

결과 테이블에서 결과 보기
  1. 스크립트 리포지토리 모듈 액세스에서 설명한 대로 결과 테이블에 액세스합니다.

  2. 결과 테이블에서 실행 중인 스크립트 항목을 마우스 오른쪽 버튼으로 누릅니다.

    팝업 메뉴가 표시됩니다.

  3. 선택된 실행 중인 스크립트에 해당하는 결과 로그 파일을 보려면 결과 로그 보기를 선택합니다.

    검사 뷰어가 나타나서 로그의 결과를 표시합니다.


    주 –

    명령줄에서 로그 파일에 액세스할 수도 있습니다. 로그 파일은 /var/opt/SUNWsymon/SysMgmtPack/script-launcher/scripts/ UserName/logs 디렉토리에 저장됩니다. 로그 파일 이름에는 실행 중인 인스턴스가 포함되므로 사용자가 동일한 스크립트를 여러 번 실행하는 경우 현재 로그 파일을 확인할 수 있습니다.


결과 테이블에서 행 삭제
  1. 스크립트 리포지토리 모듈 액세스에서 설명한 대로 결과 테이블에 액세스합니다.

  2. 결과 테이블에서 행을 마우스 오른쪽 버튼으로 누릅니다.

    팝업 메뉴가 표시됩니다.

  3. 행 삭제를 선택합니다.

    삭제를 확인 또는 취소할 수 있는 대화 상자가 나타납니다.

  4. 확인하려면 예를 누릅니다.

    행이 삭제되면 실행 테이블이 자동으로 갱신됩니다.