복구 지향 컴퓨팅
1. 개요
복구 지향 컴퓨팅은 시스템의 고장으로부터의 빠른 복구를 목표로 하는 컴퓨팅 방식이다. 이는 시스템 설계, 격리 및 중복성, 시스템 전체 실행 취소 지원, 통합 진단 지원, 온라인 검증 및 복구 메커니즘, 모듈성, 측정 가능성 및 재시작성을 핵심 기술로 한다. 복구 지향 컴퓨팅 시스템은 빠른 복구를 지원하고, 고장 원인을 정확하게 찾아내며, 실수를 신속하게 바로잡도록 설계되어야 한다. 또한, 시스템의 신뢰성, 내구성 및 가용성을 평가하기 위해 벤치마킹을 수행한다.
-
인터넷 프로토콜 기반 네트워크 소프트웨어 -
슈퍼 서버
슈퍼 서버는 TCP 래퍼를 통해 접근 권한을 확인하고 필요에 따라 다른 서버 프로그램을 시작하여 메모리 사용량 감소 및 시스템 관리 효율성을 높이지만, 높은 연결 요청 빈도에서는 성능 저하를 유발할 수 있으며, inetd, launchd, systemd, ucspi-tcp, xinetd 등이 대표적인 구현체이다. -
인터넷 프로토콜 기반 네트워크 소프트웨어 -
시스코 IOS
시스코 IOS는 시스코 시스템즈의 네트워크 장비 운영체제로, 라우터용으로 개발되어 다양한 하드웨어 기능과 네트워킹 프로토콜에 적응하며 CLI를 통해 네트워크 기능을 제어 및 관리할 수 있도록 설계되었고, IOS XR, IOS XE 등 후속 운영 체제가 등장했다. -
컴퓨터 네트워크 -
NORSAR
NORSAR는 노르웨이 셸러에 위치한 지진 연구 및 데이터 센터이며, 기초 지진학 연구, 소프트웨어 개발, 석유 산업 컨설팅 등의 활동을 수행하며, 포괄적 핵실험 금지 조약을 위한 노르웨이 국가 데이터 센터 역할을 수행한다. -
컴퓨터 네트워크 -
라우터
2.1. 시스템 설계
복구 지향 컴퓨팅(ROC) 시스템은 다음과 같은 방식으로 실행된다.
* 빠른 복구를 지원하도록 설계되었다.
* 여러 구성 시스템에서 고장의 원인을 정확하게 찾아낸다.
* 실수를 신속하게 바로잡는다.
3. 핵심 기술
3.1. 격리 및 중복성
복구 지향 컴퓨팅 시스템에서 격리는 중복성을 필요로 한다. 시스템의 한 부분이 고장 나면 중복된 부분이 그 자리를 대신해야 한다. 격리는 소프트웨어 또는 사람으로 인한 오류 등 모든 유형의 오류에 대해 오류 방지 기능이 있어야 한다. 시스템의 일부를 격리하는 한 가지 잠재적인 방법은 젠과 같은 가상 머신 모니터를 사용하는 것이다. 가상 머신 모니터를 사용하면 여러 가상 머신이 물리적 머신에서 실행될 수 있으며, 하나의 가상 머신에 문제가 발생하면 물리적 머신을 다시 시작하지 않고도 다시 시작하거나 중지하고 다른 가상 머신이 그 자리를 대신할 수 있다.
3.2. 시스템 전체 실행 취소 지원
서로 다른 프로그램과 시간대에 걸쳐 실행 취소를 수행하는 기능은 시스템 오류의 약 절반이 인간의 실수로 인해 발생하기 때문에 필수적이다. 실행 취소 지원이 없으면 시행착오를 허용하지 않으므로 프로덕션 시스템의 테스트 측면도 제한된다.
시스템 전체의 실행 취소 지원은 하드웨어 및 소프트웨어 업그레이드, 구성뿐만 아니라 응용 프로그램 관리를 포함하여 시스템의 모든 측면을 다루어야 한다. 실행 취소할 수 있는 항목에는 제한이 있으며, 이러한 제한은 현재 트레이드 오프를 기반으로 탐색, 테스트 및 평가되고 있다.
3.3. 통합 진단 지원
통합 진단 지원은 복구 지향 컴퓨팅(ROC)이 갖춰야 할 또 다른 특징이다. 이는 시스템이 시스템 오류의 근본 원인을 식별할 수 있어야 함을 의미한다. 일단 오류의 원인을 식별하면, 다른 시스템 부분에 영향을 미치지 않도록 오류를 격리하거나, 또는 오류를 복구할 수 있어야 한다. 모든 시스템 구성 요소 또는 모듈은 자체 테스트를 수행해야 하며, 자체적으로 문제가 발생했는지 여부를 파악할 수 있어야 한다. 모듈은 자체 문제점을 파악하는 것 외에도, 의존하는 다른 모듈의 동작을 검증할 수 있어야 한다. 또한 시스템은 시스템 전체에서 모듈, 리소스 및 사용자 요청 간의 종속성을 추적해야 한다. 이는 오류 격리를 가능하게 한다.
3.4. 온라인 검증 및 복구 메커니즘
복구 메커니즘은 시스템이 장애로부터 복구할 수 있는 방법이다. 이러한 복구 메커니즘은 신뢰할 수 있고, 효과적이며, 효율적이어야 한다. 이러한 시스템은 복구 메커니즘의 동작을 테스트하고 검증하는 데 적극적이어야 하며, 실제 장애가 발생할 경우 이러한 메커니즘이 설계된 대로 작동하여 시스템 복구에 도움이 될 수 있도록 해야 한다. 이러한 검증은 생산 수준 장비에서도 수행되어야 한다. 생산 수준 장비는 가동 상태를 유지하는 것이 가장 중요하기 때문이다. 이러한 테스트를 수행하는 두 가지 방법이 있으며, 이 두 가지 모두 사용해야 한다. 첫 번째 방법은 테스트가 설정되고 실행되는 직접 테스트이다. 다른 방법은 경고 없이 발생하는 임의 테스트이다.