쉬운 복원을 위해 Linux 박스를 설정하는 방법은 무엇입니까?

쉬운 복원을 위해 Linux 박스를 설정하는 방법은 무엇입니까?

내 작업에서는 Linux 상자를 사용하여 소스 코드를 저장하고 개정 제어 소프트웨어(svn)를 호스팅합니다. 또한 프로젝트 관리를 위한 "trac", 코드 검토를 위한 fisheye 및 Crucible과 같은 다른 제품도 있습니다. 이 상자가 고장나더라도 가동 중지 시간이 거의 없이 모든 서비스, 소프트웨어, 사용자 계정 등을 계속 작동할 수 있기를 바랍니다. 나는 어떤 해결책을 찾고 있나요?

몇 가지 유용한 팁:
- 솔루션 비용은 문제가 되지 않습니다. 그래도 구독보다는 일회성 비용을 선호합니다.
- 백업 유지와 복원 모두 최소한의 관리 작업을 원합니다.
- 상자는 밤과 주말에 유휴 상태입니다.
- 몇 마일 떨어진 곳에 또 다른 시설이 있지만 두 건물 사이의 연결이 상대적으로 느립니다(밤에는 더 빠릅니다). 화재 등의 경우에 대비하여 이 복원 옵션을 사이트 외부에서 원합니다.
- 백업을 구입하여 실행하고 호출하기 전에 준비하기를 원합니다. "충돌 후 새 상자를 구입하세요..."가 아닙니다
. 상자는 그다지 화려하지 않으며 단지 우분투 리눅스가 설치된 표준 데스크탑일 뿐입니다. 우리가 그것을 사용하는 것은 고성능이 아닙니다.

누구든지 나에게 해결책을 알고 있습니까? 나는 리눅스나 서버에 관련된 어떤 것에 대해서도 잘 알지 못하므로, 답변과 함께 기본적인 설명을 부탁드립니다.

감사해요!

답변1

실제로 상호 연관되어 있지만 서로 다른 세 가지 사항에 대해 이야기하고 있습니다.

  1. 내결함성(다운타임을 최소화하면서 계속 실행하거나 백업하는 방법)
  2. 데이터 백업(누군가 rm -rf가 내 저장소에 있으면 어떻게 해야 하나요?)
  3. 재해 복구(내 사무실이 지구상에서 사라지면 어떻게 해야 합니까?)

실제로는 이를 서로 다르지만 상호 연관된 세 가지 프로세스로 생각해야 합니다. 내결함성에 대해 가장 자세히 설명하겠습니다. 이는 최대 1시간의 가동 중지 시간에 대해 귀하가 실제로 원하는 것 같기 때문입니다.

내결함성을 위해 고려해야 할 몇 가지 사항은 다음과 같습니다.

  • 새 장비를 구입하는 데 얼마나 걸리나요?
  • 상자를 다시 만드는 데 얼마나 걸리나요?
  • 데이터를 확인하고 복원하는 데 얼마나 걸리나요?

해당 시간의 합계를 30%로 곱하고(모든 일이 긴급 상황에서 생각하는 것만큼 순조롭게 진행되는 것은 없음) 그 합계가 허용 가능한 가동 중지 시간보다 길면 고가용성 설정을 살펴보기 시작해야 합니다. 그보다 적다면 추정치가 어긋나고 사람들이 예상보다 오랫동안 다운될 수 있다는 위험을 감수해야 합니다.

가능한 해결책으로는 할 수 있는 일이 많이 있습니다. 하지만 모든 경우에 나는 그럴 것이다.고도로데스크탑을 서버급 시스템으로 교체하는 것이 좋습니다. 구성 요소의 품질이 더 높고 24x7x365로 실행되도록 제작되었으므로 하드웨어에 이미 상당한 양의 중복성이 내장되어 있습니다(좋은 RAID 카드, 중복 PSU 등).

  • 두 번째 사이트에 대기 서버를 설정한 다음 x 시간마다 데이터를 재동기화할 수 있습니다. 여기서 x는 복제 사이에 서버가 다운될 경우 잃을 수 있는 데이터 양입니다. rsync는 델타 파일과 변경된 파일만 전송하므로 첫 번째 동기화 후 매우 작은 데이터 파이프에 적합합니다. 또한 CNAME을 통해 액세스할 수 있도록 서버를 설정하면 가리키는 위치를 바꾸고 이동할 수 있습니다.
  • 기본 위치에 대기 서버를 두는 것을 제외하고 위와 동일하게 수행합니다.
  • SAN/NAS와 서버 2개를 구입하세요. 그런 다음 활성/활성 클러스터 또는 활성/수동 클러스터에서 설정합니다.

백업은 시나리오에서도 매우 중요한 부분입니다. 오프사이트에 저장된 특정 시점 백업을 대체할 수는 없다는 점을 기억해야 합니다. 개인적으로 나는 여전히 테이프에 백업한 다음 Iron Mountain과 같은 회사에 의해 오프사이트에 보관하는 것이 최선의 선택이라고 생각합니다. 규모가 큰 환경에서는 ArcServ, BackupExec, NetBackup 등 "대형" 백업 솔루션이 모두 잘 작동합니다. 또한 최소한 분기별로 백업을 테스트하십시오. 필요한 백업이 나쁘다는 것을 아는 것보다 더 짜증나는 일은 없습니다.

재해 복구는 실제로 앉아서 작업할 위치와 교체 장비를 가져올 위치를 계획하고 오프사이트 백업이 잘 되어 있는지 확인하는 것입니다. 나는 DR이 위에서 언급한 모든 구성 요소를 최악의 상황에 대비한 응집력 있는 행동 계획으로 가져오는 것이라고 생각합니다.

답변2

환경을 가상화하면 이미지를 복원하기만 하면 됩니다.

답변3

여기에는 데이터 양, 기본 시스템의 복잡성 및 수행하려는 관리 정도에 따라 다양한 옵션이 있습니다.

가상화된 상자의 크기가 상대적으로 작은 경우(몇 GB) XenServer를 선호합니다. 예를 들어 우리가 실행하는 내부 앱 서버의 크기는 3GB에 불과합니다. 백업을 쉽게 중지하고 백업을 다른 시스템으로 전송할 수 있습니다. 그러나 XenServer에 대한 최신 지식이 없으면 학습 곡선이 가파르게 느껴질 수 있습니다.

또한 R1Soft의 CDP 서버 백업 소프트웨어를 사용하지만 빠른 복구에는 실제로 적합하지 않습니다. 실패한 서버의 완전 베어 메탈 복원을 수행하는 데 적합하지만 1시간 미만의 백업 및 복구에도 적합합니다.

나는 클라이언트를 위해 다음과 같은 작업을 수행했습니다. CDP 백업 소프트웨어를 사용하여 기본 시스템을 콜드 스페어에 복제합니다. 이를 통해 예비 시스템이 기본 시스템과 동일함을 보장합니다. 그런 다음 CDP 서버에 시간별 스냅샷이 저장됩니다. CDP 서버는 매우 효율적인 백업 알고리즘을 사용하므로 라이브 서버에 거의 영향을 미치지 않습니다.

장애가 발생한 경우 CDP 서버의 데이터를 콜드 스페어로 복원할 수 있습니다.

이 방법이나 rsync 기반 접근 방식의 문제점은 소프트웨어가 동기화 상태를 유지하도록 핫 스페어와 ​​콜드 스페어를 모두 관리해야 한다는 것입니다. 한 쪽에서는 OS 업데이트를 실행하고 다른 쪽에서는 이를 수행하는 것을 잊어버리고 싶지 않을 것입니다.

한 가지 권장 사항은 가능한 한 서버에서 표준화된 구성을 사용하는 것입니다. 이렇게 하면 콜드 대기 시스템으로 데이터를 복원/재동기화할 때 구성/업데이트 변경이 미치는 영향이 줄어듭니다.

또한 나는 내 데이터(내가 추가한 내용)를 시스템에서 잘 격리해 두는 것을 좋아합니다. LVM을 사용하는 경우 LVM 스냅샷 방법도 작동할 수 있습니다.

고려해야 할 옵션은 많지만 가장 좋은 옵션은 사내 전문 지식, 시스템 관리 시간, 데이터 사용 패턴에 따라 달라집니다.

또한 데이터 양이 매우 적다면 데스크탑 수준의 백업/복구 도구를 살펴보는 것이 좋습니다. 나는 그것들에 익숙하지 않습니다.

http://www.r1soft.com/ CDP 서버 소프트웨어

http://www.citrix.com/XenServer

http://samba.anu.edu.au/rsync/재동기화

답변4

여기서는 rsync + cron만큼 간단한 것만으로도 충분할 것 같습니다.

관련 정보