Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

인프라 구성 환경에 대해서 #7

Open
mr8356 opened this issue Nov 13, 2024 · 0 comments
Open

인프라 구성 환경에 대해서 #7

mr8356 opened this issue Nov 13, 2024 · 0 comments

Comments

@mr8356
Copy link
Collaborator

mr8356 commented Nov 13, 2024

인프라 정보

1. 인프라 구성 환경

  • 클라우드 플랫폼: AWS, GCP, Azure 등의 클라우드 환경 또는 온프레미스 서버
  • 네트워크 구성: VPC, 서브넷, 라우팅 테이블을 사용하여 서비스의 네트워크 분리
  • 로드 밸런싱: 트래픽 부하 분산을 위해 ALB(Application Load Balancer), NLB(Network Load Balancer) 등 사용
  • 컨테이너 오케스트레이션: Kubernetes, Docker Swarm 등을 통해 애플리케이션 배포 및 관리

2. 서버 정보

  • 웹 서버: Nginx, Apache, 또는 클라우드 기반의 웹 서버 사용
  • 애플리케이션 서버: Spring Boot, Node.js 등 애플리케이션 구동 환경
  • 데이터베이스 서버: MySQL, PostgreSQL 등의 RDBMS 또는 MongoDB, DynamoDB 등의 NoSQL 사용
  • 캐시 서버: Redis, Memcached 등 빠른 데이터 접근을 위해 캐싱 시스템 도입
  • 파일 스토리지: S3 버킷, Azure Blob Storage 등 파일 저장용 스토리지

3. 모니터링 지표

  • CPU 사용률: 서버의 CPU 사용량을 모니터링하여 트래픽 증가 시 부하를 예측
  • 메모리 사용량: 애플리케이션 및 서버의 메모리 사용 현황 파악
  • 디스크 I/O: 데이터베이스 및 파일 스토리지의 입출력 처리 속도 모니터링
  • 네트워크 트래픽: 네트워크 인/아웃 바이트 수 모니터링하여 대역폭 사용량 관리
  • 에러 로그: 애플리케이션, 서버 에러 로그를 수집하여 장애 원인 분석

4. 새로 알게된 용어들

  • 온프레미스 서버 (On-premises Server):

    • 온프레미스 서버는 클라우드가 아닌 로컬 데이터 센터나 사무실 내부에 설치된 물리적 서버를 말합니다. 모든 하드웨어 및 네트워크 인프라가 회사 내에 존재하며, 유지보수와 관리도 직접 수행됩니다.
  • VPC (Virtual Private Cloud):

    • VPC는 클라우드에서 사용자가 자신의 가상 네트워크를 설정할 수 있도록 제공되는 서비스입니다. 이를 통해 특정 IP 주소 범위, 서브넷, 라우팅, 보안 설정 등을 사용자 요구에 맞게 구성할 수 있습니다. VPC를 사용하면 클라우드 내에서 물리적으로 분리된 네트워크 환경을 구축할 수 있습니다.
  • 서브넷 (Subnet):

    • 서브넷은 VPC 내에서 네트워크를 더 작은 단위로 나누는 방식입니다. 서브넷을 사용하면 특정 서비스나 애플리케이션이 독립적으로 운영될 수 있도록 분리할 수 있습니다. 서브넷은 공용(인터넷과 연결)과 사설(인터넷과의 연결이 없는)으로 나눌 수 있습니다.
  • 라우팅 테이블 (Routing Table):

    • 라우팅 테이블은 네트워크 트래픽이 VPC 내에서 어떻게 전달될지를 결정하는 규칙을 정의한 것입니다. 라우팅 테이블은 서브넷 간 트래픽을 라우팅하거나 인터넷과의 연결을 설정하는 데 사용됩니다.
  • ALB (Application Load Balancer):

    • ALB는 웹 애플리케이션의 HTTP(S) 트래픽을 분산시키는 로드 밸런서입니다. 애플리케이션 계층에서 동작하며, URL 경로, 헤더, 쿼리 문자열 등과 같은 다양한 기준을 기반으로 트래픽을 분산할 수 있습니다. 주로 복잡한 웹 애플리케이션의 로드 밸런싱에 사용됩니다.
  • NLB (Network Load Balancer):

    • NLB는 네트워크 계층에서 트래픽을 분산시키는 로드 밸런서입니다. 고속의 TCP/UDP 트래픽을 처리하는 데 적합하며, 매우 낮은 지연 시간과 높은 처리 성능을 요구하는 애플리케이션에 적합합니다. ALB보다 더 빠르고 효율적인 네트워크 트래픽 처리가 가능합니다.
  • Nginx:

    • Nginx는 고성능의 웹 서버이자 리버스 프록시 서버입니다. HTTP 서버 기능뿐만 아니라, 로드 밸런싱, 캐시, SSL 종료 및 웹 서버 최적화와 같은 다양한 기능을 제공합니다. Nginx는 특히 많은 동시 접속을 처리할 수 있어, 높은 트래픽을 처리하는 웹 서버로 널리 사용됩니다.
@mr8356 mr8356 changed the title 인프라 정보에 대해서 인프라 구성 환경에 대해서 Nov 13, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant