개발환경

클라우드 컴퓨팅 공부 메모: AWS, Azure, Google Cloud 비교 및 인프라 관리

ZZJJing 2025. 5. 14. 11:36
반응형

클라우드 컴퓨팅 주요 서비스 제공업체 차이점과 클라우드 인프라 설정 및 관리에 대한 기본 지식 정리.

 

[AWS, Azure, Google Cloud 주요 서비스와 차이점]

주요 클라우드 서비스 비교

항목 AWS Azure Google Cloud

시장 진입 2006년 (최초) 2010년 2011년
시장 점유율 약 33% (1위) 약 21% (2위) 약 10% (3위)
서비스 수 200개 이상 100개 이상 90개 이상
컴퓨팅 EC2 Virtual Machines Compute Engine
스토리지 S3 Blob Storage Cloud Storage
데이터베이스 RDS, DynamoDB Azure SQL, Cosmos DB Cloud SQL, Bigtable
서버리스 Lambda Functions Cloud Functions
컨테이너 ECS, EKS AKS GKE
글로벌 인프라 27개 리전, 87개 가용영역 60+ 리전 24개 리전, 73개 가용영역
가격 정책 복잡한 가격체계, 사용량 할인 MS 라이선스 연계 할인 단순한 가격체계, 지속 사용 할인

■ AWS (Amazon Web Services)

주요 서비스:

  • EC2 (Elastic Compute Cloud): 가상 서버
  • S3 (Simple Storage Service): 객체 스토리지
  • RDS (Relational Database Service): 관리형 데이터베이스
  • Lambda: 서버리스 컴퓨팅
  • DynamoDB: NoSQL 데이터베이스

특징:

  • 가장 광범위한 서비스 포트폴리오
  • 글로벌 인프라 규모 최대
  • 세부적인 설정과 커스터마이징 옵션
  • 초기 학습 곡선 가파름

 Microsoft Azure

주요 서비스:

  • Azure Virtual Machines: 가상 서버
  • Azure Blob Storage: 객체 스토리지
  • Azure SQL Database: 관리형 SQL 데이터베이스
  • Azure Functions: 서버리스 컴퓨팅
  • Active Directory: 인증 및 ID 관리

특징:

  • Microsoft 제품 통합 우수
  • 하이브리드 클라우드 환경 강점
  • 기업용 서비스 및 지원 체계 우수
  • Office 365, Dynamics 등 연동성

 Google Cloud Platform (GCP)

주요 서비스:

  • Compute Engine: 가상 서버
  • Cloud Storage: 객체 스토리지
  • BigQuery: 데이터 웨어하우스
  • Cloud Functions: 서버리스 컴퓨팅
  • Kubernetes Engine: 컨테이너 오케스트레이션

특징:

  • 데이터 분석/머신러닝 서비스 강점
  • 네트워크 성능 우수
  • 개발자 친화적 도구
  • Google 인프라 기반 안정성

클라우드 서비스 선택 기준

선택 기준 적합한 서비스

다양한 워크로드 지원 AWS
기존 Microsoft 환경 통합 Azure
데이터 분석/ML 워크로드 GCP
하이브리드 클라우드 Azure
글로벌 서비스 확장 AWS
비용 효율성 (스타트업) GCP
엔터프라이즈 지원 Azure

클라우드 인프라 설정 및 관리 방법

1. 계정 설정 및 보안

기본 설정:

  • IAM(Identity and Access Management) 구성
  • 다중 인증(MFA) 필수 활성화
  • 권한 최소화 원칙 적용
  • 보안 그룹 및 네트워크 ACL 구성

메모: AWS 루트 계정 MFA 설정 필수. 일상 작업은 IAM 사용자로 진행.

2. 리소스 배포 방법

IaC(Infrastructure as Code) 도구:

도구 특징 주요 사용처

Terraform 멀티 클라우드 지원, HCL 언어 클라우드 간 일관된 인프라
CloudFormation AWS 전용, JSON/YAML AWS 환경 전용
ARM Templates Azure 전용, JSON Azure 환경 전용
Deployment Manager GCP 전용, YAML GCP 환경 전용
Ansible 에이전트리스, YAML 구성 관리, 애플리케이션 배포
Pulumi 프로그래밍 언어 사용 개발자 친화적 인프라 코드

 

예시 Terraform 코드:

provider "aws" {
  region = "ap-northeast-2"
}

resource "aws_instance" "web_server" {
  ami           = "ami-0c55b159cbfafe1f0"
  instance_type = "t2.micro"
  tags = {
    Name = "웹서버"
  }
}

메모: 인프라 코드화로 버전 관리, 재현성, 자동화 이점. 필수 습관화.

3. 네트워킹 설정

주요 네트워크 구성:

  • VPC(Virtual Private Cloud) 생성
  • 서브넷 구성 (퍼블릭/프라이빗)
  • 라우팅 테이블 설정
  • 로드 밸런서 구성
  • CDN 설정

메모: 보안 강화를 위해 리소스는 프라이빗 서브넷 배치. 퍼블릭 접근 필요 시 퍼블릭 서브넷 활용.

4. 모니터링 및 로깅

클라우드별 모니터링 도구:

클라우드 모니터링 도구 로깅 도구 알림 시스템

AWS CloudWatch CloudTrail SNS
Azure Azure Monitor Log Analytics Action Groups
GCP Cloud Monitoring Cloud Logging Pub/Sub

 

기본 모니터링 항목:

  • 서버 자원 사용률(CPU, 메모리, 디스크)
  • 네트워크 트래픽
  • 애플리케이션 성능
  • 보안 이벤트

메모: 알림 설정으로 문제 즉시 대응. 비용 알림 필수 설정.

 

5. 확장성 및 고가용성 설계

기본 원칙:

  • 자동 확장 그룹 설정
  • 다중 가용 영역 활용
  • 데이터베이스 복제 구성
  • 장애 대응 시나리오 준비

메모: 단일 장애점(SPOF) 제거. 각 구성요소의 독립적 확장성 설계.

 

6. 비용 최적화

주요 비용 절감 전략:

전략 AWS Azure GCP

예약 구매 Reserved Instances Reserved VM Instances Committed Use Discounts
저비용 인스턴스 Spot Instances Spot VMs Preemptible VMs
자동 규모 조정 Auto Scaling VM Scale Sets Managed Instance Groups
사용량 모니터링 Cost Explorer Cost Management Cost Management
추천 도구 Trusted Advisor Azure Advisor Recommender

메모: 정기적 비용 분석으로 최적화 포인트 발견. 태깅 전략으로 비용 추적.

 

너무 영어가 많아서 혼란하다. ㅠㅠ 

클라우드 컴퓨팅은 지속적 학습 필요 분야이고

각 서비스 장단점 이해와 프로젝트 맞춤형 솔루션 선택이 중요하다.

컨테이너화와 Kubernetes 활용한 클라우드 네이티브 애플리케이션 개발이 향후 중요 과제가 될 것 같다. 

728x90
반응형