Post

[쿠버네티스] 인프라 구축 주요 사항

아키텍처 구분

  • 모놀로식 : 하나의 서버에 필요한 서비스를 모두 구현하는 방식
  • 마이크로 : 서비스 애플리케이션을 모듈단위로 구축하여 개발 / 운영 / 관리 / 유지보수 할 수 있도록 구성
  • 3-티어
    • 프레젠테이션 계층 / 애플리케이션 계층 / 데이터 계층
    • 세개 계층이 각각 상호 작용은 하되 독립성을 갖추어야 함
    • 시스템의 유연성을 갖추어 각 계층의 확장 및 축소가 가능해야 한다
    • 각 계층에서 사용자 인증과 권한 부여를 별도로 할 수 있도록 보안을 강화하여야 한다
    • 계층별 성능을 부여하여 성능을 최적화 시킬 수 있어야 한다
    • 다른 플랫폼이나 기술을 도입하더라도 다른 계층에는 큰 영향을 미치지 않아야 한다 (DB 종류 변경 등)
    • 이러한 특징으로 인해 복잡한 애플리케이션의 개발, 유지보수, 확장에 유리함
  • side-car
    • 주요 서비스 애플리케이션과는 독립적으로 구성되며, 서비스 관리 목적으로 구축
    • 보안 및 인증, 로깅 및 모니터링, 네트워크 트래픽 관리 등에 사용

온프레미스 환경 ↔ 클라우드 환경

  • 장점 : 가용성, 기밀성이 높고 private한 특수 요구에 부합할 수 있다
  • 단점 : 초기 비용이 높고 서비스를 빠르게 도입하기 어렵다

가상 머신과 컨테이너의 차이

  • 가상화 수준 (LeveR)
    • 가상 머신 : H/W(인프라) > OS > 가상머신 > OS
    • 컨테이너 : H/W(인프라) > OS > 엔진 > 컨테이너 (앱)

컨테이너 운영환경의 특징

  • 호스트의 운영환경 위에 별도의 독립된 환경에서 운영
  • 호스트와 동일한 커널 리소스를 공유하기 때문에 가볍고 빠르다

로드밸런싱

  • 여러 애플리케이션 서버의 트래픽을 분산하기 위한 네트워크 서비스

인프라 아키텍쳐란

  • 서비스 개발 및 운영을 위한 IT 시스템의 전체 구조를 설계하는 것
  • 서비스 목적의 애플리케이션과 데이터베이스 등을 포함
  • 설계에 있어 반드시 시스템의 성능 및 보안, 확장성을 고려하여 설계 되어야 한다
  • 비용 관리 : 필요한 리소스만 도입
  • 확장성 : 필요에 따라 확장 및 축소 가능해야함 (Auto-scaling)
  • 보안 : 클라우드 업체에서 제공하는 보안 도구를 활용하여 보안 방안을 구성해야 한다
  • 백업 및 복구 정책을 수립하여 이를 구성해야 한다

클라우드 환경에서의 아키텍쳐

  • 규제 준수 : 클라우드 환경에서의 데이터 저장 및 처리에 대한 법적 요구 사항을 준수해야 한다
  • 벤더 종속성 회비
This post is licensed under CC BY 4.0 by the author.