애플리케이션 패턴 생성 예시
다음은 새 애플리케이션 패턴에 대한 식별 섹션을 생성하고 정의하는 단계별 프로세스를 보여주는 예시입니다.
시작하기 전에
프로그래밍에 대한 기본 지식이 있는 것이 좋습니다.
필요한 역할: pd_admin
이 태스크 정보
이 예시는 디버그 모드를 사용하여 매핑 패턴을 생성하는 방법을 보여줍니다.
이 패턴은 Unix 기반의 Apache Web Server용입니다.
프로시저
- 다음으로 이동 모두 > 패턴 디자이너 > 검색 패턴.
- 새로 만들기를 클릭합니다.
-
다음과 같이 기본 패턴 속성을 정의합니다.
필드 설명 패턴 유형 애플리케이션을 선택합니다. 이름 Unix 기반 Apache Web Server 패턴을 입력합니다. CI 유형 목록에서 Apache Web Server를 선택합니다. 운영 체제 [애플리케이션 패턴만] 모두 확인란의 선택을 취소하고 목록에서 다음 확인란을 선택합니다. - AIX 서버
- HPUX 서버
- Linux 서버
- Solaris 서버
- UNIX 서버
실행 순서 [애플리케이션 패턴만] 기본 없음 설정을 그대로 둡니다. 설명 이 패턴은 Unix 2.4 이하 버전 기반의 Apache Web Server를 검색합니다.
- 저장을 클릭합니다.
-
식별 섹션을 생성하고 다음과 같이 기본 속성을 정의합니다.
- 식별 섹션에서 새로 생성을 클릭합니다.
-
다음 매개변수를 구성합니다.
필드 값 이름 HTTP(S) 엔트리포인트 유형의 식별을 입력합니다. 엔트리포인트 유형[애플리케이션 패턴만] 목록에서 다음 확인란을 선택합니다. - HTTP(S) 엔드포인트
- TCP 엔드포인트
프로세스 전략 찾기[애플리케이션 패턴만] 수신 포트를 선택합니다. 순서 1을 입력합니다. - 저장을 클릭합니다.
-
새로 생성한 식별 섹션을 클릭합니다. HTTP(S) 엔트리포인트 유형의 식별입니다.
새 식별 섹션이 별도의 탭에 열립니다.
-
디버그 모드를 활성화합니다.
-
패턴 디자이너에서 디버그 모드를 클릭합니다.
디버그 식별 섹션 창이 표시됩니다.
-
엔트리포인트에 필요한 상세 정보를 입력합니다.
필드 설명 디버그 유형 서비스 매핑에서 하향식 검색을 수행하려면 위에서 아래로를 선택합니다. 유형 목록에서 엔트리포인트 유형으로 HTTP(S)를 선택합니다. URL http://10.196.39.244:6080/ITO를 입력합니다. -
연결을 클릭합니다.
디버그 모드가 활성화되고 디버그 버튼에 녹색 점이 표시됩니다.
디버그 모드가 활성화되면 다음과 같은 변수가 값으로 채워집니다.- computer_system ‒ Apache 호스트 정보
- entry_point ‒ 이 경우 URL로 식별됨
- process ‒ Apache 프로세스 정보
-
패턴 디자이너에서 디버그 모드를 클릭합니다.
-
CI의 프로세스 이름이 Apache Web Server인지 확인하십시오.
- 식별 섹션의 첫 번째 단계 이름을 프로세스 이름이 Apache와 일치하는지 확인으로 변경합니다.
- 작업 목록에서 일치를 선택합니다.
-
첫 번째 조건 필드에 $process.executable을 입력합니다.
- 조건부 연산자 목록에서 포함을 선택합니다.
- 두 번째 조건 필드에 "httpd"를 입력합니다.
- 다른 조건을 추가하려면 더하기 아이콘을 클릭합니다.
- 첫 번째 조건 필드에 $process.executable을 입력합니다.
- 조건부 연산자 목록에서 포함을 선택합니다.
- 두 번째 필드에 "apache"를 입력합니다.
- 이 일치 작업이 다음 조건 중 하나와 일치해야 함을 정의합니다. 충족 목록에서 아무 항목이나 선택합니다.
- 테스트를 클릭하고 "이 테스트 중에 아무 것도 변경되지 않음" 메시지가 나타나는지 확인합니다.
-
CI의 레이블 속성을 입력합니다.
-
단계 트리에서 첫 번째 단계 아래에 단계를 추가하려면
을 클릭합니다.
- 새 단계의 이름을 표시 레이블 설정으로 변경합니다.
- 작업 목록에서 매개변수 값 설정을 선택합니다.
- 값 필드에 "Apache"를 입력합니다.
- 이름 필드에 $name을 입력합니다.
-
테스트를 클릭하고 다음 메시지가 나타나는지 확인합니다.
- 닫기를 클릭합니다.
-
단계 트리에서 첫 번째 단계 아래에 단계를 추가하려면
-
홈 디렉터리 속성 채우기:
- 단계 트리에 단계를 추가하고 이름을 홈 디렉터리 가져오기로 변경합니다.
-
작업 목록에서 변수 구문 분석을 선택합니다.
이 작업은 컨텐츠 상자의 -d 뒤에 있는 값을 추출합니다.
- 임시 변수 창에서 process 변수를 확장합니다.
-
임시 변수 창의 명령줄 변수를 작업 아래의 변수 필드로 끌어갑니다.
주:끌어서 놓기 기능 사용에 대한 자세한 내용은 패턴에 값과 변수 입력 단원을 참조하십시오. - 구문 분석 정의 목록에서 Command line Unix style을 선택합니다.
- 변수 창에서 새 install_directory 변수를 추가합니다.
- 테스트를 클릭합니다.
-
HTTP 디먼에 있는 홈 디렉터리 속성을 가져옵니다.
이전 단계에서 홈 디렉터리 속성을 채운 경우에는 이 단계를 건너뛰십시오. 이 예시에서는 수행해야 합니다.
- 단계 트리에서 새 단계를 추가하고, 이름을 조건 – httpd –V에서 추출하지 않은 경우 홈 디렉터리가 설정되었는지 확인으로 변경합니다.
-
작업 목록에서 명령 출력 구문 분석을 선택합니다.
이 작업은 컨텐츠 상자의 -d 뒤에 있는 값을 추출합니다.
- 전제 조건을 클릭합니다.
- 조건 값 필드에 $install_directory를 입력합니다.
- 조건부 연산자 목록에서 비어 있음을 선택합니다.
- 조건 목록에서 True를 선택합니다.
- 명령 상세 정보 설정 필드에 $process.executablePath+" -V "를 입력합니다.
- 명령 실행을 클릭합니다.
- 구문 분석 정의 목록에서 구분 텍스트를 선택합니다.
- 라인 포함 필드에 HTTPD_ROOT를 입력합니다.
-
구분 기호 옆에 있는 편집 버튼을 클릭합니다.
- 등호(=)와 따옴표("), 두 개의 구분 기호를 추가합니다.
- 확인을 클릭합니다.
- 위치 필드에 2를 입력합니다.
-
테스트를 클릭합니다.
디버그 결과 창에는 값으로 채워진 홈 디렉터리 속성이 표시됩니다.
- 확인을 클릭합니다.
-
CI 구성 파일 속성을 채웁니다.
- 단계 트리에서 새 단계를 추가하고 이름을 config 파일 가져오기로 변경합니다.
- 작업 목록에서 변수 구문 분석을 선택합니다.
- 임시 변수 창에서 process 변수를 확장합니다.
-
임시 변수 창의 명령줄 변수를 변수 입력 필드로 끌어갑니다.
채워지는 값: /usr/sbin/httpd2-prefork -f /etc/apache2/httpd.conf.
-
구문 분석 정의 목록에서 명령줄 Unix 스타일을 선택합니다.
- 검색을 클릭합니다.
- 키워드 필드에 -d를 입력합니다.
- 출력 창에서 값을 선택하고 install_directory라는 새 변수를 생성합니다.
- 테스트를 클릭합니다.
-
HTTP 디먼의 CI 구성 파일 속성을 추출합니다.
이전 단계에서 구성 파일 속성을 채운 경우에는 이 단계를 건너뛰십시오. 이 예시에서는 수행해야 합니다.
- 단계 트리에서 새 단계를 추가하고, 이름을 조건 – httpd –V에서 추출하지 않은 경우 conf_file이 설정되었는지 확인으로 변경합니다.
- 작업 목록에서 명령 출력 구문 분석을 선택합니다.
- 전제 조건을 클릭합니다.
- 조건 값 필드에 $conf_file을 입력합니다.
-
조건부 연산자 목록에서 비어 있음을 선택합니다.
- 명령 상세 정보 설정 필드에 $process.executablePath+" -V "를 입력합니다.
- 명령 실행을 클릭합니다.
- 구문 분석 정의 목록에서 구분 텍스트를 선택합니다.
- 라인 포함 필드에 SERVER_CONFIG_FILE을 입력합니다.
-
구분 기호 옆에 있는 편집 버튼을 클릭합니다.
- 등호(=)와 따옴표("), 두 개의 구분 기호를 추가합니다.
- 확인을 클릭합니다.
- 위치 필드에 2를 입력합니다.
- 새 conf_file 변수가 자동으로 추가되지 않으면 변수 창에서 생성합니다.
-
테스트를 클릭합니다.
디버그 결과 창에는 값으로 채워진 구성 파일 속성이 표시됩니다.
- 확인을 클릭합니다.
-
구성 파일 속성이 아직 채워지지 않은 경우 다음 단계를 수행하십시오.
- 단계 트리에서 새 단계를 추가하고 이름을 conf 파일의 기본 위치로 바꿉니다.
- 작업 목록에서 매개변수 값 설정을 선택합니다.
- 전제 조건을 클릭합니다.
- 조건 값 필드에 $conf_file을 입력합니다.
- 조건부 연산자 목록에서 비어 있음을 선택합니다.
- 조건 목록에서 True를 선택합니다.
- 값 필드에 $home_dir+"/conf/httpd.conf"를 입력합니다.
- 이름 필드에 $conf_file을 입력합니다.
- 테스트를 클릭하여 구성 파일 속성이 채워져 있는지 확인합니다.
-
다음과 같이 홈 디렉터리와 구성 파일 값을 연결합니다.
- 단계 트리에서 새 단계를 추가하고 이름을 SERVER_CONFIG_FILE이 관련 있는지 확인으로 바꿉니다.
- 작업 목록에서 매개변수 값 설정을 선택합니다.
- 전제 조건을 클릭합니다.
- 조건 값 필드에 $conf_file을 입력합니다.
- 조건부 연산자 목록에서 시작을 선택합니다.
- 문자열 값에 "/"를 입력합니다.
- 조건 목록에서 False를 선택합니다.
- 값 필드에 $home_dir+"/"$conf_file을 입력합니다.
- 이름 필드에 $conf_file을 입력합니다.
- 테스트를 클릭하여 구성 파일 속성이 채워져 있는지 확인합니다.
-
버전 속성을 채웁니다.
- 단계 트리에서 새 단계를 추가하고 이름을 version.signature(IBM HTTPSERVER)에서 버전 가져오기로 바꿉니다.
- 작업 목록에서 파일 구문 분석을 선택합니다.
- 파일 선택 필드에 연결된 $install _directory 변수 및 "/version.signature" 문자열($home_dir+"/version.signature")을 입력합니다.
- 파일 내용 검색을 클릭합니다.
- 변수 창에서 Version 변수를 생성합니다.
-
테스트를 클릭하여 버전 속성이 채워져 있는지 확인합니다.
이 예시에서는 이 단계에 버전을 추출하지 않습니다.
-
HTTP 디먼에서 버전 속성을 추출합니다.
- 단계 트리에서 새 단계를 추가하고, 이름을 조건 – httpd –v에서 추출하지 않은 경우 버전이 설정되었는지 확인으로 변경합니다.
- 작업 목록에서 명령 출력 구문 분석을 선택합니다.
- 전제 조건을 클릭합니다.
- 조건 값 필드에 $version을 입력합니다.
- 조건부 연산자 목록에서 비어 있음을 선택합니다.
- 더하기 아이콘(+)을 클릭하여 다른 조건을 추가합니다.
- 조건 값 필드에 $version을 입력합니다.
- 조건부 연산자 목록에서 포함을 선택합니다.
- 문자열 값에 "directory"를 입력합니다.
- 충족 목록에서 아무 항목을 선택합니다.
-
전제 조건 목록에서 True를 선택합니다.
- 명령 상세 정보 설정 필드에 $process.executablePath+" -V | grep 'Server version' | cut -d '/' -f 2 | cut -d ' ' -f 1"을 입력합니다.
- 명령 실행을 클릭하고 출력 창에 버전 속성이 나타나는지 확인합니다.
- 구문 분석 정의 목록에서 끝에서의 위치를 선택합니다.
-
변수 창의 위치 필드에 1을 입력합니다.
-
테스트를 클릭하여 구성 파일 속성이 채워져 있는지 확인합니다.
주:
버전 번호는 CI 속성 창이 아닌 임시 변수 창에만 나타납니다.
이 단계에는 Apache Web Server를 성공적으로 식별했으며 의도적으로 비워 둔 버전 속성을 제외한 다양한 속성을 채웠습니다.
-
아직 버전이 채워지지 않은 경우에는 IHS.product 파일에서 추출합니다.
- 단계 트리에서 단계를 추가하고 이름을 아직 비어 있는 경우 버전 설정으로 바꿉니다.
- 작업 목록에서 파일 구문 분석을 선택합니다.
- 전제 조건을 클릭합니다.
- 조건 값 필드에 $version을 입력합니다.
- 조건부 연산자 목록에서 비어 있음을 선택합니다.
- 더하기 아이콘(+)을 클릭하여 다른 조건을 추가합니다.
- 조건 값 필드에 $version을 입력합니다.
- 조건부 연산자 목록에서 포함을 선택합니다.
- 문자열 값에 "directory"를 입력합니다.
- 충족 목록에서 아무 항목을 선택합니다.
- 전제 조건 목록에서 True를 선택합니다.
- 파일 선택 필드에 $install_directory + "/properties/version/IHS.product"를 입력합니다.
-
파일 내용 검색을 클릭합니다.
파일의 내용이 출력 창에 표시됩니다.
- 구문 분석 정의 목록에서 XML 파일을 선택합니다.
-
출력 창의 버전 값을 기록한 다음 변수 팝업에 버전을 입력합니다.
-
공유 단계 라이브러리를 재사용하여 추가 속성을 찾습니다.
- 단계 트리에서 단계를 추가하고 새 단계의 이름을 라이브러리 보강을 위한 참조로 바꿉니다.
- 작업 목록에서 라이브러리 참조를 선택합니다.
-
라이브러리 목록에서 Apache Enrich Attributes(Apache 보강 속성)을 선택합니다.
이 작업은 미리 구성된 하위 단계의 시퀀스를 단계 트리에 삽입합니다. 공유 단계 라이브러리를 생성하는 방법에 대한 자세한 내용은 공유 단계 라이브러리 재사용 단원을 참조하십시오.
-
프로세스 관련 속성 채우기:
- 단계 트리에서 단계를 추가하고 이름을 프로세스 가져오기로 바꿉니다.
- 작업 목록에서 프로세스 가져오기를 선택합니다.
- 명령줄 필드에 "httpd"를 입력합니다.
- 대상 변수 지정 필드에 $procs를 입력합니다.
-
테스트를 클릭하여 속성이 표시되는지 확인합니다.
- 완료되면 닫기를 클릭합니다.
-
프로세스 ID 검색:
- 단계 트리에서 단계를 추가하고 이름을 process_ids 설정으로 바꿉니다.
- 작업 목록에서 변수 구문 분석을 선택합니다.
- 변수 입력 필드에 $procs[*].pid를 입력합니다.
- 구문 분석 정의 목록에서 구분 텍스트를 선택합니다.
-
검색을 클릭합니다.
내용이 출력 창에 표시됩니다.
- 변수 창에서 process_ids 변수를 생성합니다.
-
위치 필드에 1을 입력합니다.
- 테스트를 클릭합니다.
-
필요한 모든 속성이 채워졌는지 확인합니다.
- 저장을 클릭합니다.
-
검색와 서비스 매핑이 정의된 식별 섹션을 사용할 수 있는지 확인합니다.
- 이 패턴을 사용하여 Apache Web Server의 가로 검색을 실행합니다.
- Apache Web Server의 테이블로 이동하여 이 CI에 대한 항목이 있는지 확인합니다.
- 동일한 CI의 하향식 검색을 실행합니다.
- 동일한 Apache Web Server 테이블을 확인합니다.
-
기록이 중복되지 않는지 확인합니다.
수평 및 하향식 검색의 결과가 CMDB에서 모두 같은 기록 아래에 작성된다는 뜻입니다. 패턴의 식별 섹션이 정확합니다.