Sun Cluster 3.0 12/01 개념

새 데이터 서비스 개발

Sun에서는 클러스터에서 여러 응용프로그램을 페일오버 또는 확장 가능 서비스로 작동시킬 수 있도록 구성 파일과 관리 메소드 템플릿을 제공합니다. 페일오버 또는 확장 가능 서비스로 실행할 응용프로그램이 현재 Sun에서 제공하는 응용프로그램이 아닌 경우 에는 API나 DSDL API을 사용하여 응용프로그램이 페일오버 또는 확장 가능 서비스로 실행되도록 구성할 수 있습니다.

응용프로그램이 페일오버 서비스가 될 수 있는지를 판단하는 몇 가지 기준이 있습니다. 자세한 기준은 응용프로그램에 사용할 수 있는 API를 설명하는 SunPlex 문서에서 설명합니다.

여기서는 현재 제공하는 서비스에서 확장 가능 서비스의 아키텍처를 사용할 수 있는지 확인할 수 있도록 몇 가지 지침을 제공합니다. 확장 가능 서비스에 대한 자세한 내용은 "확장 가능 데이터 서비스" 단원을 참조하십시오.

새로운 서비스가 다음 조건을 충족시키면 확장 가능 서비스를 사용할 수 있습니다. 기존의 서비스가 이 조건을 정확하게 따르지 않으면 서비스가 조건을 따르도록 일부분을 다시 구성해야 할 수도 있습니다.

확장 가능 데이터 서비스에는 다음과 같은 특징이 있습니다. 첫째, 확장 가능 데이터 서비스는 하나 이상의 서버 인스턴스로 구성 됩니다. 각 인스턴스는 서로 다른 클러스터 노드에서 실행됩니다. 동일한 노드에서 동일한 서비스의 인스턴스를 두 개 이상 실행할수 없습니다.

둘째, 서비스가 외부 논리 데이터 저장소를 제공하면, 변경될 때마다 데이터를 읽거나 갱신 사항을 잃지 않도록, 여러 서버 인스턴 스로부터 이 저장소에 대한 동시 액세스를 동기화해야 합니다. 저장소에 저장된 상태를 메모리 내에 기억된 상태와 구별하기 위해"외부"소가 복제될 수는 있지만 단일 엔티티로 표시되기 때문에 "논리"라고 합니다. 또한, 이 논리 데이터 저장소에는 서버 인스턴스가 저장소를 갱신할 때마다 갱신 사항이 즉시 다른 인스턴스에 표시되는 속성이 있습니다.

SunPlex 시스템은 클러스터 파일 시스템과 글로벌 원시 파티션을 통해 이러한 외부 기억 장치를 제공합니다. 예를 들어, 서비스가 새로운 데이터를 외부 로그 파일에 기록하거나 기존 데이터를 수정한다고 가정합니다. 이 서비스의 인스턴스가 여러 개 실행되면 각 인스턴스가 이 외부 로그에 대한 액세스 권한을 갖고 동시에 이 로그에 액세스할 수 있습니다. 따라서 각 인스턴스가 이 로그에 대한 액세스를 동기화해야 합니다. 그렇지 않으면 각 인스턴스가 서로 간섭을 합니다. 서비스는 fcntl(2)lockf(3C) 명령을 통한 일반 Solaris 파일 잠금을 사용하여 원하는 동기화를 수행할 수 있습니다.

이러한 저장소의 다른 예로는 가용성이 높은 Oracle이나 Oracle Parallel Server와 같은 백엔드 데이터베이스가 있습니다. 이러한 백엔드 데이터베이스 서버는 데이터베이스 조회 및 갱신 트랜잭션을 사용하여 내장된 동기화 기능을 제공하므로, 여러 서턴스가 자체의 고유 동기화를 구현하지 않아도 됩니다.

현재 단계에서 확장 가능 서비스가 아닌 서비스의 예로는 Sun의 IMAP 서버가 있습니다. 이 서비스는 저장소를 갱신하지만, 그 저장소는 개인용이므로 여러 IMAP 인스턴스가 저장소에 기록할 경우에는 갱신 사항이 동기화되지 않기 때문에 서로 겹쳐씁니다. IMAP 서버는 동시 액세스를 동기화하도록 다시 구성해야 합니다.

끝으로, 인스턴스에 다른 인스턴스의 데이터와 분리된 개인용 데이터가 있을 수 있습니다. 이러한 경우에는 데이터가 개인용이므 로 해당 인스턴스만 이 데이터를 처리할 수 있기 때문에 서비스에서 동시 액세스를 동기화할 필요가 없습니다. 이 경우에는 나중에이 개인용 데이터에 대한 글로벌 액세스가 가능해질 수도 있기 때문에 이 개인용 데이터를 클러스터 파일 시스템에 저장하지 않도록 해야 합니다.

데이터 서비스 API 및 데이터 서비스 개발 라이브러리 API

SunPlex 시스템은 응용프로그램의 가용성을 높이기 위하여 다음과 같은 기능을 제공합니다.

Sun Cluster 3.0 12/01 Data Services Installation and Configuration Guide에서는 SunPlex 시스템에 제공되는 데이터 서비스를 설치하고 구성하는 방법을 설명합니다. Sun Cluster 3.0 12/01 Data Services Developer's Guide에서는 Sun Cluster 프레임워크에서 다른 응용프로그램의 가용성을 높이는 방법을 설명합니다.

응용프로그램 프로그래머가 Sun Cluster API를 사용하면 데이터 서비스 인스턴스를 시작하고 중지하는 스크립트와 결함 모니터를 개발할 수 있습니다. 이러한 도구를 사용하면 응용프로그램을 페일오버 또는 확장 가능 데이터 서비스로 구현할 수 있습니다. 또한 SunPlex 시스템은 응용프로그램을 페일오버 서비스나 확장 가능 서비스로 실행하기 위해 필요한 시작 및 중지 메소드를 신속하게 만들기 위해 사용할 수 있는 "일반" 데이터 서비스를 제공합니다.