단일 계층 서비스 구성의 문제점

버버니야·2022년 5월 18일
0

현재 서비스는 하나의 스위치 아래 웹, 앱, 디비 서버가 같은 레이어에 위치하고 있는 단일 계층 서비스 구성으로 보여집니다.
각 서버는 스위치를 통해 통신하고 외부 네트워크와 통신합니다. APP 서버는 NFS를 이용한 외부 스토리지를 갖고 있습니다.

  1. 장애 대응
    하나의 장비에 이상이 생기면 전체 서비스가 다운됩니다. 모든 장비가 정상적으로 작동해야만 서비스가 문제없이 작동할 수 있어 안정성이 떨어진다고 할 수 있습니다. 그렇기 때문에 문제가 해결되기 전까지 서비스가 작동하지 않는다는 문제점도 갖고 있습니다.
    또한 서비스 내에 장애가 발생했을 때 원인 파악에 어려움이 있을 것으로 생각됩니다. 한 개의 서버에 이상이 생기더라도 전체 서비스가 제대로 동작하지 않을 수 있기때문에 문제의 원인이되는 서버가 무엇인지 알아내기 위해 모든 서버를 점검해야하기 때문에 장애 대응이 늦어질 수 있습니다.

  2. 장비 변경
    스위치와 같은 장비 변경이 발생하면 전체적인 설정이 변경되어야 하는 문제점 존재합니다. 계층을 나누는 경우 그 계층에 있는 장비들에 대한 설정만 변경하면 되지만,
    같은 계층에 여러 장비가 놓이는 경우 해당 계층 전체의 설정을 변경해야하는 문제점이 있어 관리에 어려움이 있습니다.

  3. 보안
    LAN의 최상위 계층에서 바로 데이터베이스 서버에 접근할 수 있기 때문에 SQL 인젝션 등 다른 구성보다 보안 취약점이 쉽게 드러날 수 있습니다.

  4. 성능
    각 서버간의 통신 또한 하나의 스위치를 통하기 때문에 스위치에 많은 부하가 걸릴 수 있습니다. 이는 병목현상의 원인이 될 수 있고 그에 따른 전체 서비스 성능의 저하가 있을 것이라 생각됩니다.

  5. 데이터 소실
    데이터를 저장하고 있는 저장장치에 이상이 생기게 되면 다른 저장장치에 백업이 되어있지 않기 때문에 데이터를 복구할 수 없는 상황이 생길 수 있다.

Q2. fault-tolerance한 시스템이 되기위한 이중화 구성 방안


모든 장비를 이중화하여 어떤 장비에 문제가 생기더라도 같은 역할을 하는 다른 장비를 이용해 서비스를 지속할 수 있도록 구성했습니다.
NFS의 저장장치도 마스터와 슬레이브로 Replication을 만들어 이상이 생기더라도 다른 백업 저장장치를 이용할 수 있습니다.

profile
안녕하세요

0개의 댓글