단일 서버인 경우 유지 관리를 위해 웹 서버를 어떻게 오프라인으로 전환합니까?

단일 서버인 경우 유지 관리를 위해 웹 서버를 어떻게 오프라인으로 전환합니까?

우리 회사의 SQL Server와 IIS를 호스팅하는 Windows 2008R2 서버가 있습니다.

업데이트와 백업을 위해 가끔씩 내려놓아야 합니다.

이것이 설정이다

전용 Windows 2008R2 서버는 내 Windows 2008R2 vps 웹 서버(제가 철거해야 하는 서버)를 호스팅합니다.

이 서버를 중단할 때 호스트를 찾을 수 없는 대신 현재 유지 관리가 진행 중인 것으로 도메인에 플래그를 지정하는 방법이 필요합니다.

도메인은 내 웹 서버를 직접 가리키므로 서버가 다운되면 호스트를 찾을 수 없다는 내용만 보게 됩니다. 도움이 된다면 도메인은 godaddy에서 호스팅합니다.

이 문제를 해결할 방법이 있나요? 누구든지 어떤 제안이 있나요?

답변1

어떤 종류의 다른 서버를 추가하지 않고는 방법이 없습니다... 다양한 옵션이 있지만 결국 모든 것은 어떤 형태로든 서버 중복성으로 귀결됩니다.

답변2

현재 귀하의 구성은 다음과 같습니다:

DNS -> Your Server

따라서 무엇이든 할 수 있는 유일한 지점은 도메인을 리디렉션하는 것입니다.

DNS -|   Your Server
     |-> Some Other Server Hosting 'This is Down'

불행하게도 DNS는 너무 공격적으로 캐시되므로 사이트를 중단하거나 다시 시작하는 업데이트가 모든 곳에 전파되기까지 꽤 오랜 시간이 걸릴 수 있습니다. DNS 레코드의 TTL이 짧으면 도움이 되지만 성능이 약간 저하될 수 있습니다.

일반적으로 가장 좋은 방법은 머신 앞에 역방향 프록시나 로드 밸런서를 두는 것입니다.

DNS -> Load Balancer -> Your Server

이렇게 하면 로드 밸런서가 가리키는 위치를 변경하거나 로드 밸런서 자체가 'This is Down' 메시지를 호스팅하도록 할 수도 있습니다. 또한 두 개 이상의 서버가 있는 경우 보다 안정적인 구성을 제공합니다.

DNS -> Load Balancer +--> Server 1
                     +--> Server 2

이 구성에서는 한 번에 하나의 시스템만 중단할 수 있으며 사이트는 전혀 중단되지 않을 수 있습니다.

덧붙여서, 컴퓨터를 다시 시작할 필요가 없거나 다시 시작하는 동안 사이트가 계속 다운되어도 괜찮다면 마지막 옵션은 이 모든 것을 단일 컴퓨터로 압축하는 것입니다. 머신에서 Nginx를 실행하고 일반적으로 IIS에 프록시를 지정하지만 필요한 경우 오류 메시지를 표시합니다.

답변3

Windows 서버 앞에 haproxy를 배치하고 호스트 상태 확인으로 구성하고 '서비스를 사용할 수 없음' 페이지를 구성할 수 있습니다.

관련 정보