YataNox

인프라 아키텍쳐란? 본문

IT인프라

인프라 아키텍쳐란?

에이디/김우진 2024. 1. 31. 07:31

인프라란?

인프라란 우리말로 표현하면 '기반'이다. 우리의 생활을 지탱하는 하나의 바탕이자 토대란 의미이다.

전문가의 의해 관리되고 있으며 사용자는 그 구조를 이해하지 않고도 사용할 수 있다.

인프라 아키텍쳐

아키텍쳐는 구조라는 의미를 가지는데 인프라 아키텍쳐는 결국 IT 인프라의 구조를 의미한다. 여러 시스템들은 이용 방법이 다 다르지만 IT 인프라 위에 동작하고 있고 비슷한 구조위에서  움직이고 있다.

아키텍쳐 요약

 

집약형 아키텍쳐 VS 분할형 아키텍쳐

  • IT 인프라는 컴퓨터로 구성
  • 가장 기본적인 구성 방식으로 집약형과 분할형 두 방식이 있다.
집약형 

주요 업무를 처리할 때 중앙의 한 대로 처리하는 형태

장점

  • 한 대만 있으면 되기 때문에 그 구성이 간단하다.
  • 리소스 관리 등으로 안정성이 높고 고성능이다.

단점

  • 큰 중앙기기의 도입 비용, 유지 비용이 비싸다.
  • 확장성에 한계가 존재한다.
분할형

여러 대의 컴퓨터를 조합하여 하나의 시스템을 구축해 처리하는 형태.

장점

  • 낮은 비용으로 시스템 구축이 가능하다.
  • 서버 대수를 늘리는 것으로 확장성을 가질 수 있다.

단점

  • 대수가 늘어날 수록 관리가 복잡해진다.

집약형 분할형
중앙의 대형 컴퓨터 한 대 다수의 소형 컴퓨터
높은 비용 낮은 비용
확장성 낮음 확장성 높음

 

수직 분할형 아키텍쳐

분할형 아키텍쳐를 구성할 때는 서버의 분할 방식을 고려해야한다. 각기 다른 작업을 하는 것인지 비슷한 작업을 하는 것인지에 대한 것이다.

수직 분할형은 서로 다른 역할을 하는 관점의 분할형 아키텍쳐이다. 수직형이라는 표현은 특정 서버 측면에서 위 또는 아래 계층으로 나뉘기 때문에 발생하는 표현이다.

클라이언트-서버형 아키텍쳐

수직 분할형의 한 예. 물리서버 상에서 애플리케이션/미들웨어/DB 등의 소프트웨어를 운영한다.

클라이언트 측에 전용 소프트웨어를 설치하여 많은 처리를 실행하고 필요한 경우 서버에 요청하는 형태로 운영한다.

장점

  • 클라이언트 측에서 많은 처리가 가능하기에 소수 서버로 다수의 클라이언트를 처리할 수 있다.

단점

  • 클라이언트 측에 설치된 소프트웨어의 정기적인 업데이트가 필요하다.
  • 서버의 확장성에 한계가 발생할 수 있다.

 

3 계층형 아키텍쳐

수직 분할형의 또 다른 예로, 클라이언트-서버형을 발전시킨 형태이다. 프레젠테이션 계층, 애플리케이션 계층, 데이터 계층의 3층 구조로 분할되어 있다.

  1. 프레젠테이션 계층
    • 사용자 입력을 받는다.
    • 웹 브라우저 화면을 표시한다.
  2. 애플리케이션 계층
    • 사용자 요청(Request)에 따라서 업무를 처리한다.
  3. 데이터 계층
    • 애플리케이션 계층 요청에 따라서 업무를 처리한다.

사용자가 웹 브라우저를 통해 시스템에 접근하면 프레젠테이션 계층에 먼저 전달된다. 전달받은 요청을 그 뒤에 있는 애플리케이션 계층이 키워드를 바탕으로 무엇을 해야할 지 판단해서 뒤의 데이터 계층에 데이터를 요청하게 된다.

장점

  • 서버 부하의 집중을 개선
  • 클라이언트 측 소프트웨어 정기 업데이트 불필요
  • 모든 처리가 AP, DB 계층을 이용하지 않기 때문에 처리 반환에 대한 서버의 부하가 감소

단점

  • 구조가 클라이언트-서버 구성에 비해 복잡하다.

 

수평 분할형 아키텍쳐

더 높은 확장성을 실현하려면 수직적 확장 말고도 다른 축의 분할도 필요하다 수평 분할형은 용도가 같은 서버를 늘려나가는 방식을 의미한다.

같은 역할의 서버 대수가 늘어나면 한 대의 영향력이 낮아져서 안정성이 향상된다.

단순 수평 분할형 아키텍쳐

같은 시스템을 분할하여 여러 개를 둠으로 처리 성능을 높인다. 각 시스템은 독립적으로 동작하며 한 쪽이 장애가 발생해도 다른 쪽에는 영향을 주지 않기 에 독립성이 보장된다.

장점

  • 수평으로 서버를 늘리기에 확장성이 향상
  • 독립적으로 운영되기에 서로에게 영향을 주지 않음

단점

  • 데이터를 일원화하여 볼 수 없다.
  • 업데이트를 동시에 해주어야한다.
  • 처리량 분할이 균등하게 되지 않으면 서버별 처리량의 치우침이 생기기 쉽다

 

공유형 아키텍쳐

보통의 상황에서 분할된 시스템들이 다른 애플리케이션을 이용하는 경우는 드물다. 공유형은 일부 계층에서 상호 접속을 한다.

장점

  • 수평으로 서버를 늘리기 때문에 확장성을 향상
  • 분할한 시스템이 서로 다른 시스템을 참조할 수 있다.

단점

  • 분할한 시스템 간 독립성이 떨어진다.
  • 공유한 계층의 확장성이 낮아진다.

 

지리 분할형 아키텍쳐

업무 연속성과 시스템 가용성을 높이기 위한 방식, 지리적으로 시스템을 분할한다.

스탠바이형 아키텍쳐

물리 서버를 최소 두 대를 준비하여 한 대가 고장나면 가동 중인 소프트웨어를 다른 한 대로 옮겨서 운영하는 방식

소프트웨어 재시작을 페일오버(F/O)라고도 한다.

물리 서버 고장에 대처를 할 수 있다는 장점이 있지만 보통 때는 페일오버 대상 서버가 놀고 있는 상태이기에 리소스 측면의 낭비가 발생한다. 이를 위해 따로 스탠바이를 두지 않고 양측을 교차 이용하는 경우도 있다.

재해 대책형 아키텍쳐

재해라는 현실적인 문제를 위한 재해 복구 구성 방식,

최소 구성, 동시 구성으로 여러 곳에 서버 장비를 별도 사이트에 배치하고 소프트웨어도 동일하게 설정한다. 재해가 발생하면 전혀 다른 사이트의 정보를 이용하게 된다.

다만 애플리케이션 최신화와 데이터 최신화의 문제가 있을 수 있다. 특히 데이터는 매일 갱신되기에 실시간성을 어느정도 유지해주어야 한다.

 

 

이미지 일부 발췌
 

그림으로 공부하는 IT 인프라 구조 1 (인프라 아키텍처)

기반이라는 뜻생활을 지탱하는 바탕이나 토대인프라 구조 자체는 복잡하지만 전문가에 의해 관리되고 있어 사용자는 그 구조를 간단히 이용할 수 있다는 특징인프라 아키텍처? \- 아키텍처란?

velog.io