IBM®
메인 컨텐츠로 가기
    Korea [국가변경]    이용약관
 
 
   
        제품    서비스 & 솔루션    고객지원 & 다운로드    회원 서비스    
메인 컨텐츠로 가기

한국 developerWorks  >  오토노믹 컴퓨팅 | 그리드 컴퓨팅 | 웹서비스 | 오픈소스 프로젝트 | Tivoli | DB2  >

북 리뷰: Autonomic Computing

Richard Murch 저서들

developerWorks
문서 옵션

JavaScript가 필요한 문서 옵션은 디스플레이되지 않습니다.


난이도 : 초급

Kane Scarlett, Technology journalist

2005 년 10 월 25 일

IBM Press 가 출간한 Richard Murch의 저서 Autonomic Computing에서 시스템 디자이너, 관리자, 개발자들에게 필요한 내용들만 발췌했다.

IBM Press는 "On Demand Series"의 일환으로 Autonomic Computing(IBM Press/Prentice Hall PTR, 2004)을 출간했다. 저자인 Richard Murch는 30년 경력의 시스템 개발 관리 컨설턴트이다. 그는 이 저서에서 자율 컴퓨팅 기술 전반에 관한 내용들을 다루고 있다.

  • 관리 (비용 감소, 서비스 향상, 관리 간소화, 기민성과 복원력 향상)
  • 아키텍쳐 (표준, 툴, 지원 기술(enablement technologies))
  • 자율 시스템의 핵심 컴포넌트
  • 자율 컴퓨팅의 기존 기술 및 구현
  • 구현 및 평가 문제
  • 자율 컴퓨팅의 미래

developerWorks의 특성에 맞게 리뷰의 초점을 개발자(하드웨어와 소프트웨어 개발), 시스템 디자이너(컴퓨팅 시스템 플래닝), 시스템 관리자(시스템의 구현, 전개, 관리)에게 맞추도록 하겠다.

시스템 복잡성을 줄이는 방법

자율 컴퓨팅 기술의 주요 목표 중 하나는 점점 복잡해져 가는 시스템 관리를 수월하게 하는 것이다. 시스템의 복잡성을 줄이는 방법들이 모든 개발 단계에 적용되어야 한다.

아래 여덟 가지 규칙들은 시스템 디자이너뿐만 아니라 시스템 관리자들에게도 적용이 된다. 이들은 시스템을 잘 정비할 책임이 있다. 어떤 시스템이든 시스템 정비(refinement)의 제 1 원리는 단순함이다. (복잡성에서 탈피하는 것이다.)

이 규칙은 개발자들에게도 중요하고 Extreme Programming 개념과도 맞는다.

저자는 복잡성을 줄일 수 있는 방법들을 제안한다.

  1. 경영진은 독창성을 장려해야 한다. (이곳에서 리소스가 나온다.)
  2. 적절한 동기부여. (데드라인과 품질)
  3. 해당 분야에 대한 지식. (구현자는 프로젝트를 이해하고, 분야에 대한 지식을 갖추어야 한다.)
  4. 효과적인 디자인 툴박스. (매개변수 한정 옵션들의 분석 기능 및 융통성 있는 대안들)
  5. 모든 것에 도전하려는 의지. (프로젝트 디자인과 구현 이외의 분야까지 포함)
  6. 분석 준비. (컴포넌트의 작은 부분들까지 문제들을 해결해야 한다는 특별한 인식)
  7. 완벽한 솔루션. (최상의 간단한 솔루션을 제공하는 것 만으로 충분하지 않다. 그 과정이 문서화 되고 정당성이 입증되어야 한다.)
  8. 지속적인 연구. (자율 개념과 마찬가지로 정비는 지속적으로 이루어져야 한다.)

대상: 전체.
페이지: 27-28.




위로


자율 아키텍쳐 입문

27페이지에서 119 페이지로 갑자기 넘어왔기 때문에 약간 의아했을 것이다. 규칙들을 그렇게 많은가 하는 의문도 들었을 거이다. 이 책 전반에 걸쳐 저자는 자율 컴퓨팅의 역사, 다양한 통계, 케이스 스터디 개요를 설명하고 있으며, 이 모두가 자율 컴퓨팅 개발과 관련된 개념들이다. developerWorks는 시스템 개발자, 디자이너 관리자를 위한 사이트이기 때문에 이 책은 더욱더 매력적이다. 이 글에서 건너뛴 부분은 여러분들의 몫으로 남겨놓겠다.

8장은 개발자를 위한 자료들이 가득하다. 저자는 이 장 초반에 자율 컴퓨팅의 기술적인 부분을 설명한다.

  • 제어 루프(control loop). 제어 루프를 두 개의 하위 엘리먼트인 관리 엘리먼트(managed element (자율 시스템에서의 확장성 컴포넌트))와 자율 매니저(autonomic manager(관리 및 분석 엘리먼트))로 정의한다. 아울러 센서(sensors)와 이펙터(effectors)가 어떻게 작동하는지도 설명한다.
  • 자율 컴포넌트(autonomic component). 제어 루프의 구조를 자세히 설명한다.
  • 자율 매니저 협업(Autonomic manager collaboration). 제어 루프와 자율 매니저가 어떻게 협업하는지를 설명한다.
  • 자율 매니저 개발(Autonomic manager development) . 기본적인 자율 매니저를 정의하는데 필요한 일곱 개의 핵심 기능을 설명한다.
    • 정책 결정
    • 솔루션 지식
    • 일반적인 시스템 관리
    • 문제 결정
    • 자율 모니터링
    • 복합 분석
    • 트랜잭션 평가

대상: 전체 .
페이지: 119-129.




위로


비교

8장을 넘기면 시스템 디자이너가 특별한 도움을 받을 수 있다. 저자는 앞으로 출현할 것으로 예상되는 잠재적인 자율 컴퓨팅 아키텍쳐와 현재의 IT 아키테쳐를 비교한다. 그는 자율 컴퓨팅의 개념을 다음과 같이 비교한다.

현재 아키텍쳐미래의 아키텍쳐
설정자가 설정
문제 해결자가 치료
최적화자가 최적화
보안자가 방어

설정(configuration)부분에서, 기존 IT 시스템의 경우 시스템이 설정되기 전에 엄정한 플래닝과 테스팅을 해야 하고 동시에 큰 시스템에는 여러 개의 설정 계획들이 필요하다는 사실을 주지시키면서, service-level agreement (SLA)로 정의된 자율 시스템에서 수행하는 자율 설정(그리고 지속적인 재설정)과 비교하고 있다. 문제 해결(problem solving) 부분에서는 많은 시간을 들여 이벤트 로그를 자세히 분석하여 코드의 잘못된 부분을 규명하는 현재의 프로세스와, 자율적인 자가 치료 개념으로 정의된 체계적인 프로세스와 비교한다. 최적화(optimization) 부분에서, 전문 지식이 필요했던 기존 모니터링 및 최적화 툴과, SLA로 제어되는 간단한 최적화 유틸리티와 비교한다. 보안 부분에서 자율 컴퓨팅이 현재의 시스템이 수행하는 보안 기능 그 이상을 어떻게 수행하는지를, 그리고 관리자가 위협을 감지하고 반응하는데에 어떤 도움을 주는지를 설명한다.

대상 : 시스템 디자이너/시스템 관리자 .
페이지:129-132




위로


자율 평가

시스템이 자율 컴퓨팅을 실행할 수 있는 적합한 시스템인가? 이것은 디자이너와 관리자에게 중요한 질문이다. (개발자에게는 목표 시스템이 자율 애플리케이션을 실행할 수 있는가? 그리고 이 애플리케이션이 자율 개념에 알맞은가? 라는 질문이 던져질 수 있겠다.) 자율 컴퓨팅 제품과 서비스를 엔터프라이즈 시스템에 도입하려고 한다면 그 제품과 기존 시스템이 융화될 수 있어야 한다.

저자는 시스템을 평가할 때 검토해야 할 체크리스트를 제공한다. IBM Autonomic Assessment Tool의 기능도 설명한다.

  • 기초: 대부분의 IT 인프라의 시작점
  • 관리: 태스크 리소스 매트릭스의 리뷰 및 분석
  • 예견: 매트릭스를 사용하여 미래의 퍼포먼스 예견
  • 적응성: 최적화 목적에 맞춰 자동으로 제공되는 리소스.
  • 자율성: 매트릭스와 모델링이 IT 정비를 결정하는 매트릭스와 모델링

여섯 개의 기능적 IT 환경:

  • 보안 관리
  • 사용자/리소스 제공
  • 퍼포먼스/용량 관리
  • 솔루션 전개
  • 가용성
  • 문제 관리

이 리스트들은 자율 성숙도 수준을 나타내기 때문에 현재 시스템의 자율 컴퓨팅 기술 수준이 어느 정도인지를 가늠할 수 있는 매트릭스가 된다.

대상: 전체 .
페이지: 163-170.




위로


자율 컴퓨팅 개발 툴

저자는 이 한 페이지에 자율 시스템과 애플리케이션의 개발, 구현, 전개, 관리에 사용할 수 있는 IBM 툴을 소개하고 있다.

대상: 시스템 디자이너/개발자.
페이지: 170

저자는 IBM Emerging Technologies Toolkit을 자세히 분석한다. 자율 프로그램 구현에 필요한 인프라, 샘플 문서, 웹 서비스와 그리드 컴퓨팅 개념을 설명하는 것 외에도 웹 서비스와 그리드 컴퓨팅, 오픈 소스 운동, 자율 컴퓨팅이 어떻게 조화되는지를 설명한다. 오픈 소스 섹션에서 Eclipse 프레임웍을 소개하고, 이것의 작동 방법을 상세히 설명해 놓았다.

  • 문제 결정(Log와 Trace Analyzer 사용)
  • 이종의 워크로드 관리 (Business Workload Manager 프로토타입 사용)

툴의 작동 방법도 설명한다.

  • Solution Enabler: 소프트웨어 솔루션을 구현 및 전개하는 프레임웍
  • 자율 소프트웨어 에이전트 기술.

대상: 시스템 디자이너/개발자.
페이지: 170

15장에서는 Tivoli® Management Suite의 자율 컴퓨팅 기능(보안, 설정 및 작동, 퍼포먼스 및 가용성, 스토리지 관리)을 설명하고 있다.

  • 자가 설정
    • Configuration Manager
    • Identity Manager
    • Storage Manager
  • 자가 치료
    • Enterprise Console
    • Switch Analyzer
    • NetView
    • Business Systems Manager
    • Systems Automation S/390
    • Risk Manager
    • Monitoring for Applications, Database, Middleware
    • Storage Resource Manager
  • 자가 최적화
    • Service Level Advisor
    • Workload Scheduler for Applications
    • Business Systems Manager
    • Storage Manager
    • Monitoring for Transaction Performance
  • 자가 방어
    • Storage Manager
    • Access Manager
    • Identity Manager
    • Risk Manager
    • Privacy Manager for e-Business

대상: 전체.
페이지: 235-244.




위로


자율 컴퓨팅 엘리먼트의 라이프 사이클

엘리먼트를 설계하는 것으로 자율 엘리먼트의 라이프 사이클이 시작되기 때문에 이 섹션은 디자이너와 개발자 모두에게 유익하다. 이 라이프 사이클의 각 단계에서 부딪칠 수 있는 특별한 문제들을 설명한다.

  • 디자인, 테스팅, 확인 단계에서 자율 엘리먼트는 서비스를 소비 및 제공하기 때문에 엘리먼트는 필요와 선호도뿐만 아니라 기능까지도 나타내야 한다.
  • 설치 및 설정 단계에서, 엘리먼트는 부트스트랩 프로세스를 활용해야 한다.
  • 모니터링 및 문제 결정 단계에서는 시스템 주파수와 프로세싱에 부담을 주지 않으면서 감사와 확인 프로세스를 수행해야 한다.

대상: 시스템 디자이너/개발자.
페이지: 272-274




위로


자율 컴퓨팅의 엘리먼트 관계

다음은 엘리먼트들간 관계의 라이프 사이클이다.

  • 표준 서비스 온톨로지, 디스크립션 신택스, 의미론 확립
  • 서비스 또는 엘리먼트를 배치할 장소 발견
  • 협상 애트리뷰트의 시스템 설정
  • 내부 리소스 제공 설정
  • 실행 계약 및 벌칙 관리
  • 종료 후 서비스 계약의 정보 기록

이 짧은 섹션에는 다른 시스템 중심의 문제들을 다룬다. 강력하고 합리적인 시스템 작동을 유지하는 방법을 설명하고 있다.

대상: 전체 .
페이지:274-278.




위로


도전과제

시스템 디자이너가 이론들을 자율 컴퓨팅 시스템에 적용할 때 이 섹션이 도움이 될 것이다. 이 섹션에서는 추상적 작동 모델을 다룬다. 개별적인 자율 엘리먼트에 투입될 수 있는 작동 및 인터랙션 규칙 세트를 이끌어내서 특정한 글로벌 작동을 만든다는 Santa Fe Institute의 매력적인 아이디어까지 소개한다. (이 개념은 진보적인 연구, 로컬-글로벌 관계 모델을 갖춘 최적화 기술, 시스템 환경이 결합된 것이다.)

저자는 자율 컴퓨팅 이론을 구현하는 문제에 대해서도 논한다. 시스템이 점점 복잡해지면서 이론을 정립하기가 얼마나 힘든지를 지적하고, 통계상의 변수들까지 자율화하는 방식을 지속적으로 연구해야 한다고 주장한다.

대상: 시스템 디자이너.
페이지:278-280.




위로


기타

디자이너와 개발자가 당장 흥미를 가질 주제는 아니지만 주목해야 할 두 가지 주제도 다루고 있다. 자율 기술들이 그리드 기술과 어떻게 인터랙팅하는지, 그리고 어떤 프로젝트를 자율 컴퓨팅에 사용할 수 있는지를 설명한다. (자율 기술을 현실에 적용할 수 있는 실질적인 부분이다)

173 페이지(11장)에서 어떻게 해서 그리드가 자율 컴퓨팅을 위한 기술이 될 수 있는지를 설명한다. 그리드의 역사, 오늘날 그리드가 사용되는 분야, 그리드의 유형, 그리드에서 실행되는 애플리케이션, 그리드 구조에서 사용할 수 있는 리소스, 그리드와 자율 컴퓨팅의 보완 방법들을 설명한다.

280 페이지에서 자율 컴퓨팅 연구 프로젝트를 소개했다.

  • Gryphon Publish/Subscribe 미들웨어(대형 공용 네트워크를 통해 대용량의 데이터와 콘텐트를 수 천 개의 클라이언트에 실시간으로 분산한다.)
  • DB2의 Learning Optimizer(이전 단계에서 실행된 쿼리를 모니터하고, 미래의 최적화 비용을 조정한다.)
  • SMART(데이터베이스를 실행 및 관리하는 DB2 데이터베이스)
  • StorageTank(스토리지 영역 네트워크를 위한 새로운 파일 시스템)




위로


맺음말

50페이지가 넘는 분량을 분석했다. Richard Murch의 Autonomic Computing은 개발자, 디자이너, 시스템 관리자들에게 도움이 되는 책이다. 자율 컴퓨팅 역사에 대한 리포트를 작성하거나 기업에 자율 기능을 구현할 때도 도움이 된다.




위로


참고자료

교육

제품 및 기술 얻기

토론



위로


필자소개

Kane Scarlett: 기술 저널리스트.





위로


기사에 대한 평가

매우 불만족 (1)
불만족 (2)
보통 (3)
만족 (4)
매우 만족 (5)




위로



    IBM 소개개인정보 보호정책문의