단일 시스템 이미지

Single system image

분산 컴퓨팅에서 단일 시스템 이미지(SSI) 클러스터는 단일 [1][2][3]시스템으로 보이는 시스템의 클러스터입니다.이 개념은 종종 분산 [4][5]운영 체제의 개념과 동의어로 간주되지만,[6] 예를 들어 각 노드에서 실행되는 기존 운영 체제 이미지보다 소프트웨어의 추가 레이어를 사용하여 작업 스케줄링을 수행하는 등 하나의 이미지가 더 제한적인 목적으로 표시될 수 있습니다.SSI 클러스터에 대한 관심은 특수 클러스터보다 사용 및 관리가 더 간단할 수 있다는 인식에 기초하고 있습니다.

다른 SSI 시스템은 어느 정도 단일 시스템에 대한 완전한 착각을 제공할 수 있습니다.

SSI 클러스터링 시스템의 특징

다른 SSI 시스템은 용도에 따라 이러한 기능의 서브셋을 제공할 수 있습니다.

프로세스 이행

많은 SSI 시스템이 프로세스 [7]마이그레이션을 제공합니다.프로세스는 리소스 밸런싱 또는 관리상의 [note 1]이유로 한 노드에서 시작하여 다른 노드로 이동할 수 있습니다.프로세스가 노드 간에 이동되면 연관된 다른 리소스(IPC 리소스 등)도 노드 간에 이동될 수 있습니다.

프로세스 체크 포인트

일부 SSI 시스템에서는 실행 중인 프로세스의 체크포인트를 허용하여 현재 상태를 저장하고 나중에 [note 2]새로고침할 수 있습니다.체크포인팅은 이행과 관련된 것으로 간주할 수 있습니다.이는 프로세스를 먼저 체크포인팅한 후 다른 노드에서 재시작함으로써 프로세스를 어떤 노드에서 다른 노드로 이행할 수 있기 때문입니다.또는 체크포인트를 디스크로 이행하는 으로 간주할 수 있습니다.

단일 프로세스 공간

SSI 시스템에 따라서는 모든 프로세스가 같은 머신에서 실행되고 있는 것처럼 착각할 수 있습니다.프로세스 관리 툴(유닉스 시스템에서의 「ps」, 「kill」등)은 클러스터내의 모든 프로세스로 동작합니다.

단일 루트

대부분의 SSI 시스템은 파일 시스템의 단일 뷰를 제공합니다.이는 단순한 NFS 서버, 공유 디스크 장치 또는 파일 복제를 통해 달성할 수 있습니다.

단일 루트 뷰의 장점은 사용 가능한 노드에서 프로세스를 실행하고 특별한 주의사항 없이 필요한 파일에 액세스할 수 있다는 것입니다.클러스터가 프로세스 마이그레이션을 구현하는 경우 단일 루트 보기를 통해 프로세스가 현재 실행 중인 노드에서 파일에 직접 액세스할 수 있습니다.

SSI 시스템에 따라서는 단일 루트에도 노드 고유의 파일이 몇 개 존재하기 때문에 "착각을 깨는" 방법이 있습니다.HP TruCluster는 액세스 하는 노드에 따라 다른 파일을 가리키는 "Context Dependent Symbolic Link"(CDSL)를 제공합니다.HP VMScluster는 필요에 따라 클러스터 공유 파일을 포함하는 노드별 파일을 포함하는 검색 목록 논리 이름을 제공합니다.이 기능은 모든 노드의 구성이 동일하지 않은 이기종 클러스터를 처리하기 위해 필요할 수 있습니다.여러 사이트에 걸친 여러 아키텍처의 여러 노드 등 보다 복잡한 구성에서는 여러 로컬 디스크가 결합하여 논리적인 단일 루트를 형성할 수 있습니다.

단일 I/O 공간

일부 SSI 시스템에서는 모든 노드가 다른 노드의 I/O 디바이스(테이프, 디스크, 시리얼 라인 등)에 액세스할 수 있습니다.허용되는 액세스 종류에 제한이 있을 수 있습니다(예를 들어 OpenSSI는 한 노드에서 다른 노드에 디스크 장치를 마운트할 수 없습니다).

단일 IPC 공간

일부 SSI 시스템에서는 다른 노드의 프로세스가 프로세스 간 통신 메커니즘을 사용하여 마치 동일한 기계에서 실행되는 것처럼 통신할 수 있습니다.일부 SSI 시스템에서는 공유 메모리를 포함할 수도 있습니다(소프트웨어 분산 공유 메모리를 사용하여 에뮬레이트할 수 있습니다).

대부분의 경우, 노드간 IPC는 같은 머신상의 IPC보다 느립니다.공유 메모리의 경우는, 큰폭으로 늦어질 가능성이 있습니다.일부 SSI 클러스터에는 이러한 속도를 줄이기 위한 특수 하드웨어가 포함되어 있습니다.

클러스터 IP 주소

일부 SSI 시스템은 클러스터 외부에서 볼 수 있는 단일 주소인 "클러스터 IP 주소"를 제공하여 하나의 시스템인 것처럼 클러스터에 연결할 수 있습니다.이는 클러스터에 대한 착신 콜 로드밸런싱, 부하가 적은 노드로 유도, 또는 [note 3]노드가 클러스터에 가입 또는 탈퇴할 때 어떤 머신에서 다른 머신으로 클러스터 주소를 이동하는 용장성에 사용할 수 있습니다.

이 예에서는 확장 기능을 갖춘 상용 플랫폼부터 분산형 시스템을 작성하기 위한 패키지/프레임워크 및 단일 시스템 이미지를 실제로 구현하는 플랫폼까지 다양합니다.

다양한 클러스터링 시스템의 SSI 속성
이름. 프로세스 이행 프로세스 체크포인트 단일 프로세스 공간 단일 루트 단일 I/O 공간 단일 IPC 공간 클러스터 IP 주소[t 1] 소스 모델 최신 출시일[t 2] 지원되는 OS
아메바[t3] 네. 네. 네. 네. 불명 네. 불명 열다. 1996년 7월 30일 네이티브
AIX TCF 불명 불명 불명 네. 불명 불명 불명 닫힘 1990년 3월 30일[8] AIX PS/2 1.2
논스톱 가디언[t4] 네. 네. 네. 네. 네. 네. 네. 닫힘 2018 논스톱 OS
지옥 아니요. 아니요. 아니요. 네. 네. 네. 불명 열다. 2015년 3월 4일 네이티브, Windows, Irix, Linux, OS X, FreeBSD, Solaris, Plan 9
케르하트 네. 네. 네. 네. 불명 네. 불명 열다. 2010년 6월 14일 Linux 2.6.30
Linux PMI[t 5] 네. 네. 아니요. 네. 아니요. 아니요. 불명 열다. 2006년 6월 18일 Linux 2.6.17
위치[t6] 네. 불명 네. 네. 네. 네, 그렇습니다[t 7]. 불명 닫힘 1988 네이티브
모식스 네. 네. 아니요. 네. 아니요. 아니요. 불명 닫힘 2017년 10월 24일 리눅스
오픈모식스[t8] 네. 네. 아니요. 네. 아니요. 아니요. 불명 열다. 2004년 12월 10일 Linux 2.4.26
오픈 공유 루트[t9] 아니요. 아니요. 아니요. 네. 아니요. 아니요. 네. 열다. 2011년 9월 1일[9] 리눅스
OpenSSI 네. 아니요. 네. 네. 네. 네. 네. 열다. 2010년 2월 18일 Linux 2.6.10 (데비안, Fedora)
플랜 9 아니요[10]. 아니요. 아니요. 네. 네. 네. 네. 열다. 2015년 1월 9일 네이티브
사이다 네. 불명 아니요. 네. 네. 아니요. 불명 열다. 1992 네이티브
TidalScale 네. 아니요. 네. 네. 네. 네. 네. 닫힘 2020년 8월 17일 Linux, FreeBSD
TruCluster 아니요. 불명 아니요. 네. 아니요. 아니요. 네. 닫힘 2010년 10월 1일 트루64
VMS 클러스터 아니요. 아니요. 네. 네. 네. 네. 네. 닫힘 2022년 7월 14일 오픈VMS
z/VM 네. 아니요. 네. 아니요. 아니요. 네. 불명 닫힘 2016년 11월 11일 네이티브
UnixWare 논스톱 클러스터[t10] 네. 아니요. 네. 네. 네. 네. 네. 닫힘 2000년 6월 UnixWare
  1. ^ 많은 Linux 기반 SSI 클러스터는 Linux Virtual Server를 사용하여 단일 클러스터 IP 주소를 구현할 수 있습니다.
  2. ^ 녹색은 소프트웨어가 활발히 개발되었음을 의미합니다.
  3. ^ 아메바 개발은 Wayback Machine에서 BSS Lab의 Stefan Bosse 박사가 담당합니다.아메바 개발은 Wayback Machine에서 2009-02-03년에 아카이브되었습니다.
  4. ^ Guardian90 TR90.8 탠덤 컴퓨터의 R&D 기반 [1]의 Andrea Borr
  5. ^ Linux PMI는 openMosix의 후속 버전입니다.
  6. ^ LOCUS를 사용하여 IBM AIX TCF생성했습니다.
  7. ^ LOCUS가 IPC에 사용하는 이름 있는 파이프
  8. ^ openMosix는 MOSIX의 포크였다.
  9. ^ Open-Sharedroot는 ATIX의 공유 루트 클러스터입니다.
  10. ^ UnixWare NonStop 클러스터는 오픈의 기반이었습니다.SSI

「 」를 참조해 주세요.

메모들

  1. ^ 예를 들어 장기간 실행 중인 프로세스를 유지보수를 위해 종료해야 하는 노드에서 이동해야 할 수 있습니다.
  2. ^ 체크포인팅은 고성능 컴퓨팅에 사용되는 클러스터에서 특히 유용하며 클러스터 또는 노드 재시작 시 작업 손실을 방지합니다.
  3. ^ '클러스터 삭제'는 종종 크래시의 완곡한 표현이다

레퍼런스

  1. ^ Pfister, Gregory F. (1998), In search of clusters, Upper Saddle River, NJ: Prentice Hall PTR, ISBN 978-0-13-899709-0, OCLC 38300954
  2. ^ Buyya, Rajkumar; Cortes, Toni; Jin, Hai (2001), "Single System Image" (PDF), International Journal of High Performance Computing Applications, 15 (2): 124, doi:10.1177/109434200101500205, S2CID 38921084
  3. ^ Healy, Philip; Lynn, Theo; Barrett, Enda; Morrison, John P. (2016), "Single system image: A survey" (PDF), Journal of Parallel and Distributed Computing, 90–91: 35–51, doi:10.1016/j.jpdc.2016.01.004, hdl:10468/4932
  4. ^ Coulouris, George F; Dollimore, Jean; Kindberg, Tim (2005), Distributed systems: concepts and design, Addison Wesley, p. 223, ISBN 978-0-321-26354-4
  5. ^ Bolosky, William J.; Draves, Richard P.; Fitzgerald, Robert P.; Fraser, Christopher W.; Jones, Michael B.; Knoblock, Todd B.; Rashid, Rick (1997-05-05), "Operating System Directions for the Next Millennium", 6th Workshop on Hot Topics in Operating Systems (HotOS-VI), Cape Cod, MA, pp. 106–110, CiteSeerX 10.1.1.50.9538, doi:10.1109/HOTOS.1997.595191, ISBN 978-0-8186-7834-9, S2CID 15380352
  6. ^ Prabhu, C.S.R. (2009), Grid And Cluster Computing, Phi Learning, p. 256, ISBN 978-81-203-3428-1
  7. ^ Smith, Jonathan M. (1988), "A survey of process migration mechanisms" (PDF), ACM SIGOPS Operating Systems Review, 22 (3): 28–40, CiteSeerX 10.1.1.127.8095, doi:10.1145/47671.47673, S2CID 6611633
  8. ^ "AIX PS/2 OS".
  9. ^ "Open-Sharedroot GitHub repository". GitHub.
  10. ^ Pike, Rob; Presotto, Dave; Thompson, Ken; Trickey, Howard (1990), "Plan 9 from Bell Labs", In Proceedings of the Summer 1990 UKUUG Conference, p. 8, Process migration is also deliberately absent from Plan 9. {{citation}}:누락 또는 비어 있음 title=(도움말)