반응형
클라우드 컴퓨팅 주요 서비스 제공업체 차이점과 클라우드 인프라 설정 및 관리에 대한 기본 지식 정리.
[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
반응형
'개발환경' 카테고리의 다른 글
성능 모니터링과 로깅 (0) | 2025.05.18 |
---|---|
컨테이너와 오케스트레이션: Docker와 Kubernetes 완벽 가이드 (0) | 2025.05.15 |
웹 애플리케이션 보안 취약점과 강화 방법 (0) | 2025.05.13 |
Git 브랜치 전략과 효과적인 코드 리뷰 방법 (0) | 2025.05.12 |
RESTful API와 GraphQL 비교 및 API 문서 작성법에 관한 메모 (0) | 2025.05.11 |