This is a good article. Click here for more information.

엑스그리드

Xgrid
엑스그리드
Xgrid-icon.png
개발자애플
초기 릴리즈2004년[1] 1월 6일
최종 발매
10.7.5 / 2012년 10월 4일; 9년(2012-10-04)
운영 체제맥 OS X
플랫폼독립적
유형분산 컴퓨팅
면허증소유권 EULA[2]
웹사이트www.apple.com/server/macosx/technology/xgrid.html

XgridApple Inc.의 Advanced Computing Group 분과에서 개발한 독점 프로그램 및 분산 컴퓨팅 프로토콜로 네트워크로 연결된 컴퓨터가 하나의 작업에 기여할 수 있도록 한다.

네트워크 관리자에게 컴퓨팅 클러스터를 만드는 방법을 제공하여 이전에 사용하지 않았던 컴퓨팅 파워를 만델브로트 맵과 같은 소규모 운영으로 쉽게 나눌 수 있는 계산에 활용할 수 있도록 한다.Xgrid 클라이언트가 Mac OS X 10.4 ~ Mac OS X 10.7을 실행하는 모든 컴퓨터에 미리 설치되어 있기 때문에 Xgrid 클러스터의 설정은 거의 무료로 수행할 수 있다.Xgrid 클라이언트는 Mac OS X 10.8에 포함되지 않았다.Xgrid 작업의 작업 스케줄러인 Xgrid 컨트롤러도 Mac OS X Server에 포함되며 Apple에서 무료로 다운로드할 수 있다.애플은 명령행 업무 제어 메커니즘을 최소화하면서 API를 제공하여 애플 주변에 구축된 보다 정교한 도구를 개발해왔다.

이 프로그램은 스키마 위에 레이어드된 자체 통신 프로토콜을 사용하여 다른 노드와 통신한다.이 통신 프로토콜은 네트워크 애플리케이션 프로토콜 프레임워크BEF 인프라와 접속한다.Mac OS X의 Xgrid 서비스가 활성화된 시스템인 Xgrid 시스템에서 검색된 시스템은 태스크를 처리하는 데 사용할 수 있는 시스템 목록에 자동으로 추가된다.

개시 컴퓨터가 처리를 위해 전체 명령서 또는 작업컨트롤러로 보낼 때, 컨트롤러는 태스크를 태스크라고 알려진 작은 명령 패킷으로 분할한다.Xgrid 시스템의 설계는 네트워크의 모든 Xgrid 지원 컴퓨터로 전송되는 이러한 작은 패킷들로 구성된다.이러한 컴퓨터 또는 노드는 컨트롤러에서 제공하는 지침을 실행한 다음 결과를 반환한다.컨트롤러는 개별 작업 결과를 전체 작업 결과로 조립하고 이를 개시 시스템에 반환한다.

애플은 애플이 권한을 갖고 있던 NeXT오픈스텝 운영체제 애플리케이션 프로그래밍 인터페이스(API)와 함께 배포한 지야 프로그램에 Xgrid 디자인을 모델로 했다.이 회사는 또한 맥 OS X의 클라이언트 버전을 명령줄 기능만 제공하고 유연성은 거의 없는 반면 맥 OS X 서버 버전의 Xgrid는 GUI 제어판과 전체 기능을 제공하기로 결정했다.

역사

질라

Xgrid의 원래 개념은 1980년대 후반 NeXT가 만든 OpenSTEP 운영 체제에서 발견된 Zilla.app으로 거슬러 올라갈 수 있다.Zilla는 최종 사용자 운영 체제에서 최초로 출시된 분산 컴퓨팅 프로그램으로, Seti@와 같이 널리 사용되는 프로젝트에서 발견된 이후 디자인 기능인 [1]유휴 화면 보호기 모티브를 사용했다.Distributed.net.질라는 사용 편의성과 우수한 디자인으로 1991년 전국 컴퓨터월드 스미스소니언상(사이언스 부문)을 수상했다.[3]애플은 1997년 나머지 NeXT와 함께 질라를 인수했고 이후 Xgrid의 영감으로 질라를 활용했다.[4][1]Xgrid의 첫 베타 버전은 2004년 1월에 출시되었다.[5]

몇몇 조직들이 대규모 국제 컴퓨터 네트워크에 Xgrid를 채택했다.Xgrid 클러스터의 한 예로 맥리서치의 OpenMacGrid가 있는데, 여기서 과학자들은 그들의 연구와 관련된 작업을 실행하기 위해 대량의 처리 능력에 대한 접근을 요청할 수 있다.[6][7]또 다른 것은 지금은 없어진 Xgrid@Stanford 프로젝트였는데, 이 프로젝트는 스탠포드 대학 캠퍼스와 전세계의 다양한[8] 컴퓨터를 사용하여 생화학 연구를 수행했다.[9]

맥월드는 사전 발매 홍보물에서 'TIGER에 대해 알아야 할 10가지 사항'의 유닉스 기능 중 Xgrid를 인용, "대량의 실험 데이터를 가지고 작업하거나 복잡한 애니메이션을 렌더링하면 손이 간다"[10]고 표현했다.2004년 Xgrid의 도입 이후 InfoWorldXserve G5의 그해 말 출시로 직접적인 수혜를 입을 '프리뷰'급 기술이라고 언급했다.[11]에브라임 슈워츠 인포월드 해설위원도 Xgrid가 애플의 기업용 컴퓨팅 시장 진출에 첫발을 내디딘 것이라고 전망했다.[12]

애플은 팟캐스트 프로듀서 등 종속 서비스와 함께 OS X v10.8(Mountain Lion)이 탑재된 Xgrid를 단종했다.

프로토콜

엑스그리드 프로토콜

Xgrid 프로토콜은 비프 네트워크 프레임워크를 사용하여 네트워크의 노드와 통신한다.이 시스템의 인프라는 프로토콜을 통해 통신하는 세 가지 유형의 컴퓨터를 포함한다.하나는 계산을 전달하는 클라이언트다.다음은 계산을 시작하고 분리하는 컨트롤러다.마지막으로, 에이전트는 자신이 할당한 계산의 일부를 처리한다.

컴퓨터는 동시에 이 세 가지 구성 요소들 중 하나 또는 모두 역할을 할 수 있다.Xgrid 프로토콜은 컴퓨터가 통신할 수 있는 기본 인프라를 제공하지만, 지정된 계산의 처리에는 관여하지 않는다.[13]Xgrid는 때로는 당황스러울 정도로 병렬적인 작업이라고 불리는 작은 작업으로 쉽게 분리될 수 있는 시간 소모적인 계산을 목표로 한다.[14]여기에는 몬테카를로 계산, 3D 렌더링맨델브로트 맵이 포함된다.[13]

Xgrid 프로토콜 내에서, 요청, 통지, 응답의 세 가지 유형의 메시지를 동일한 클러스터에 있는 다른 컴퓨터로 전달할 수 있다.요청은 수신인이 회신해야 하며 통지는 회신을 필요로 하지 않으며 회신은 보낸 메시지에 대한 회신이다.이름, 유형(요청/통지/응답) 및 내용에 따라 식별된다.각 메시지는 BEEP MSG(BEEP MSG)로 캡슐화되어 있으며, 수신 시 빈 회신(RPY)으로 인식된다.[5]Xgrid는 BIPF 메시지/응답 인프라를 활용하지 않는다.응답을 요구하는 수신된 메시지는 회신을 포함하는 독립적인 비프 메시지를 생성하기만 하면 된다.Xgrid 메시지는 비프 네트워크를 통해 전송되기 전에 XML로 변환된 키/값 쌍 사전으로 인코딩된다.

건축

Xgrid 시스템의 아키텍처는 작업 기반 시스템을 중심으로 설계된다. 컨트롤러는 에이전트 작업을 보내고 에이전트는 응답을 반환한다.컨트롤러가 Xgrid 시스템에서 실행하는 실제 계산을 작업이라고 한다.이 작업에는 입력 매개 변수, 데이터 파일, 디렉터리, 실행 파일 및/또는 셸 스크립트 등 태스크를 성공적으로 완료하는 데 필요한 모든 파일이 포함되며, Xgrid 작업에 포함된 파일은 동시에 또는 비동기적으로 실행될 수 있어야 하며, 또는 Xgrid에서 이러한 작업을 실행하면 얻을 수 있는 이점이 손실된다.작업이 완료되면 클라이언트에게 작업 완료 또는 실패를 e-메일로 알리도록 컨트롤러를 설정할 수 있다.클라이언트는 태스크가 실행되는 동안 네트워크를 떠날 수 있다.개별 작업의 진행 상황을 추적할 수는 없지만 컨트롤러를 쿼리하여 요청 시 작업 상태를 모니터링할 수도 있다.[15]

이 노드는 에이전트에 대한 작업 분배, 감독 및 조정을 담당하기 때문에 컨트롤러는 Xgrid의 정확한 기능의 중심이다.컨트롤러에서 실행 중인 프로그램은 필요에 따라 개별 에이전트 오류를 처리하는 태스크를 할당하고 재할당할 수 있다.에이전트에 할당된 작업 수는 Xgrid의 에이전트 수와 각 노드의 프로세서 수라는 두 가지 요인에 따라 달라진다.Xgrid의 에이전트 수는 컨트롤러가 작업을 할당하는 방법을 결정한다.작업은 다수의 에이전트에 동시에 할당되거나 소수의 에이전트에 대해 대기열에 포함될 수 있다.Xgrid에서 프로세서가 두 개 이상 있는 노드가 감지되면 컨트롤러는 프로세서당 하나의 작업을 할당할 수 있다. 이는 네트워크의 에이전트 수가 컨트롤러가 완료해야 하는 작업 수보다 적은 경우에만 발생한다.[15]

Xgrid는 블록 확장형 교환 프로토콜(BEEP)에 계층화되어 있는데, 이는 HTTP에 필적하는 IETF 표준이지만, 피어투피어 네트워크에서 발견되는 것과 같은 양방향 멀티플렉스 통신에 초점을 맞추고 있다.BIPE는 XML을 사용하여 단일 네트워크 또는 인터넷 연결을 통해 여러 에이전트 간에 통신하기 위한 프로필을 정의한다.[16]

인터페이스

Xgrid 관리 도구

명령줄에서 Xgrid에 액세스할 수 있지만 Mac OS X Server와 함께 번들로 제공되는 프로그램인 Xgrid 그래픽 사용자 인터페이스는 2009년 3월 현재 온라인으로 제공되는 Xgrid 시스템을 관리하는 훨씬 효율적인 방법이다.원래 Xgrid 에이전트는 모든 Mac OS X 버전 10.4 설치에 포함되었지만 GUI는 Mac OS X 서버 사용자를 위해 예약되었다.이 결정은 플랫폼을 수용하려는 컴퓨터 커뮤니티의 노력을 제한했다.결국 애플은 맥 OS X 서버와 함께 번들로 제공되는 Xgrid 관리 애플리케이션을 포함하는 Mac OS X 서버 관리 도구를 일반에 공개했다.[17]

표준(서버가 아닌) Mac OS X 배포에 그래픽 컨트롤러 인터페이스가 없음에도 불구하고 명령줄 도구를 통해 Xgrid 컨트롤러를 설정할 수 있음xgridctl그리고xgrid.[18] Xgrid 컨트롤러 데몬이 실행되면 Apple의 Xgrid Admin 도구를 사용하여 그리드를 관리할 수 있다.[17]VisualHub와 같은 일부 애플리케이션은 사용자 인터페이스를 통해 Xgrid 컨트롤러 기능을 제공했다.[19][20]

추가 읽기

  • Xgrid Primer는 Xgrid를 레크리에이션 용도로 사용할 수 있도록 한다. (Link는 이제 로그인 필요)

참고 항목

메모들

  1. ^ a b c "Mac OS X Manual Page For xgrid(1)". Apple Inc. December 3, 2007. Retrieved July 25, 2008.
  2. ^ "Mac OS X 10.5 SLA" (PDF). Apple Inc. March 9, 2005. Archived from the original (PDF) on May 12, 2008. Retrieved June 12, 2008.
  3. ^ "Zilla - Computerworld Honours Program Archives". Archived from the original on July 16, 2011. Retrieved February 27, 2009.
  4. ^ "Apple Computer, Inc. Agrees to Acquire NeXT Software Inc" (Press release). Apple Computer. December 20, 1996. Archived from the original on February 8, 2002. Retrieved June 13, 2008.
  5. ^ a b Côté, Daniel (June 21, 2004). "XGrid agent for Unix architectures". Simple. Archived from the original on March 10, 2008. Retrieved July 18, 2008.
  6. ^ Martellaro, John (February 13, 2007). "OpenMacGrid Computing Grid for Mac Users Announced". The Mac Observer. Retrieved March 1, 2009.
  7. ^ Saunders, Grover (February 12, 2007). "OpenMacGrid creates distributed computing love-fest". Ars Technica. Retrieved March 1, 2009.
  8. ^ Parnot, Charles (December 3, 2007). "Xgrid@Stanford - Home". Stanford University. Retrieved July 25, 2008.
  9. ^ Parnot, Charles (December 3, 2007). "Xgrid@Stanford - Projects". Stanford University. Retrieved July 25, 2008.
  10. ^ Michaels, Philip; Rob Griffiths; Jason Snell; Jonathan Seff (September 1, 2004). "10 Things to Know about TIGER". Macworld : The Macintosh Magazine. MacWorld. 21 (9): 50–55. ISSN 0741-8647. Retrieved October 16, 2008. (가입 필요)
  11. ^ Connolly, P.J. (June 21, 2004). "Apple's Xserve Hardware Makes Waves". InfoWorld. Vol. 26, no. 25. pp. 29–30. ProQuest 194358336. (가입 필요)
  12. ^ Schwartz, Ephraim (January 26, 2004). "Doth Apple Protest Too Much?". InfoWorld. Vol. 26, no. 4. p. 12. ProQuest 194347451. (가입 필요)
  13. ^ a b Côté, Daniel (January 7, 2004). "XGrid". Simple. Archived from the original on April 12, 2008. Retrieved July 18, 2008.
  14. ^ Gulker, Chris (January 15, 2004). "Xgrid: Grid computing for the rest of us?". Linux.com. Retrieved July 26, 2008.
  15. ^ a b "Xgrid Programming Guide: How It Works". Apple Inc. October 31, 2007. Retrieved June 12, 2008.
  16. ^ "Mac OS X Server: Xgrid" (PDF). Technology Brief. Apple Inc. November 1, 2007. p. 2. Retrieved March 1, 2009.
  17. ^ a b Muir, Dylan (June 23, 2005). "10.4: Run an Xgrid with Tiger client". Macosxhints.com. Retrieved July 26, 2008.
  18. ^ OSX 서버가 필요 없는 xgrid 컨트롤러 설정에 대한 명시적 지침은 http://tengrid.com/wiki1/index.php?title=XGRID_FAQ를 참조하십시오.
  19. ^ "VisualHub offers Xgrid support". MacNN. June 7, 2006. Retrieved July 26, 2008.
  20. ^ Sellers, Dennis (August 1, 2006). "VisualHub update adds over 20 new features". Macsimum News. Retrieved March 1, 2009.