✅ Cloud Native란?
- Cloud Native는 클라우드 컴퓨팅 환경에 최적화된 애플리케이션을 설계, 개발, 배포, 운영하는 접근 방식이다.
- 최신 기업은 고객의 요구에 빠르게 대응할 수 있는 확장성, 탄력성, 장애 격리성을 갖춘 앱을 추구하며, Cloud Native는 이를 실현하기 위한 핵심 전략이다.
Cloud Native의 핵심 요소
- Microservices 기반: 단일 블록(monolith)이 아닌 기능별로 나뉜 소규모 서비스들의 조합
- 컨테이너 기반: Docker, Kubernetes를 활용해 경량화된 가상 환경 구성
- DevOps 문화: 개발과 운영의 협업을 통한 지속적인 개선
- 자동화된 배포 파이프라인: CI/CD 시스템으로 신속한 배포 실현
✅ Cloud Native의 장점
1. 효율성 증가
- DevOps, CI/CD 등 애자일 방식과 연계되어 빠른 피드백과 반복 개발이 가능
- 자동화 도구 및 클라우드 서비스 활용을 통한 작업 효율 향상
2. 비용 절감
- 물리적 인프라 유지비용 없음 → 초기 투자 비용 최소화
- Pay-as-you-go(사용량 기반 과금) 방식으로 운영비 절감 가능
3. 고가용성/복원력 확보
- 기능 업데이트 시에도 가동 중지 없이 배포 가능
- 다중 AZ 구성으로 장애 발생 시 자동 복구 가능
✅ CI/CD란?
CI/CD는 개발 생산성을 높이는 소프트웨어 개발 자동화 방식이다.
- CI (지속적 통합): 여러 개발자의 코드를 자주 통합하여 빠르게 오류를 발견하고 수정
- CD (지속적 전달/배포): 배포를 자동화하여 빠르게 운영 환경에 반영
주요 도구
도구특징
Jenkins | 전통적이고 강력한 커스터마이징 (예: 신세계 그룹 사용) |
GitLab CI/CD | Git과 통합된 CI/CD 플랫폼 (많은 기업에서 사용) |
GitHub Actions | GitHub 기반 프로젝트에 적합한 컨테이너 지원 CI/CD 도구 |
ArgoCD | 쿠버네티스 환경에 최적화된 GitOps 방식 CD 도구 |
✅ DevOps란?
- DevOps는 개발(Development)과 운영(Operations)을 통합한 협업 문화이자 자동화된 프로세스
- 핵심은 장벽 제거와 사람 중심의 협력
- 목표는 개발 속도 + 운영 신뢰성을 동시에 향상시키는 것
✅ Microservices vs Monolithic
항목 | Monolithic | Microservices (MSA) |
구조 | 하나의 큰 애플리케이션 | 작은 단위의 독립 서비스 조합 |
확장성 | 전체 재배포 필요 | 서비스 단위 확장 가능 |
장애 대응 | 전체 영향 | 서비스 단위로 장애 격리 가능 |
배포 속도 | 느림 | 빠름 |
MSA에서는 API Gateway를 통해 각 서비스를 API로 묶어 요청 분배 및 인증 관리 수행
✅ 컨테이너(Container)란?
- 컨테이너는 애플리케이션 실행에 필요한 라이브러리, 설정 등을 패키징한 가벼운 가상화 기술
- 기존 VM보다 경량이며, 빠른 배포와 높은 이식성을 제공
- Docker Hub를 통해 다양한 베이스 이미지 제공 → 기능 단위로 컨테이너 생성 및 실행
✅ AWS 기반 구성 요소 요약
서울 리전 확인하기
네트워크 속도를 좌우
고객의 위치와 가까운 리전 선택
리전, AZ, IDC 구조
- Region(예: ap-northeast-2, 서울) → AZ(가용영역, a/b/c/d) → IDC(데이터센터)
- region(seoul) -> AZ*4(a,b,c,d) 가용영역 -> 데이터센터(IDC) -> 서버의 집합
- 서울 리전은 AZ가 4개 존재하며, 일반적으로 c가 프리티어 사용 가능 영역
고가용성(HA)
- 여러 AZ에 걸쳐 서비스를 배포하면 이중화 구성 가능 → 장애 시에도 서비스 연속성 유지
네트워크 성능 팁
- 고객과 가까운 리전 선택 시 응답 속도 및 네트워크 성능 향상 가능
✅ 자격증 추천
분류 | 자격증 | 특징 및 추천 대상 |
기본 | AWS SAA (Solutions Architect Associate) | 기업 선호 높음, 인프라 전반 이해 |
고급 | AWS SAP (Solutions Architect Professional) | 복잡한 아키텍처 설계 능력 요구 |
개발자 | AWS DA (Developer Associate) | Lambda, API Gateway 등 개발자 중심 |
운영 | AWS DevOps Engineer | CI/CD, 자동화, 모니터링 중심 |
💡 SAA 자격증 50% 할인 팁: AWS Skill Builder에서 연습 문제 풀기
'패스트캠퍼스 데브캠프 : 남궁성의 백엔드 개발 3기' 카테고리의 다른 글
🌐 클라우드 네이티브 관점에서 바라본 인프라 & DevOps 핵심 요약 (0) | 2025.05.07 |
---|---|
record vs @Data, @RestController vs @Controller, @RequiredArgsConstructor, Stream, JDBC, 테스트 코드까지 실무 예제로 정리 (0) | 2025.04.29 |
대용량 처리를 위한 MySQL 이해 | MySQL (0) | 2025.04.28 |
대용량 처리를 위한 MySQL 이해 | 실습 환경 구축, 대용량 시스템에 대한 이해 (0) | 2025.04.28 |
FastAPI 기반 챗봇 프로젝트에서 로그인 인증 및 RDB 파트 구현기 (0) | 2025.04.28 |