-
클라우드 네이티브(Cloud Native)개념 Self Study📝/cloud 2023. 2. 20. 20:25
개요
- 클라우드 네이티브가 무엇인지에 대해서 알아보자
- 왜 기업에서 클라우드 네이티브에 집착을 하는가?
- 클라우드 네이이티브 애플리케이션이 무엇인가?
클라우드 네이티브 정의
-클라우드 컴퓨팅 환경에서 현대적 애플리케이션을 구축, 배포 및 관리할 때의 소프트웨어 접근 방식이다.
-클라우드의 이점을 최대로 활용할수 있도록 애플리케이션 구축하고 실행
왜 사용하는가?
- 현대적인 회사는 고객의 요구를 충족하기 위해 신속하게 업데이트할 수 있는 확장성, 유연성 및 복원력이 뛰어난 애플리케이션을 구축하고자 한다.
- 최근 복잡한 애플리케이션 환경에서는 비즈니스 시스템을 보다 전략적이고 유연하게 운영해야한다.(작동 중지 시간이 없다.)
클라우드 네이티브 접근 방식의 장점
- 효율성 증가
- 클라우드 네이티브 개발은 애자일 방식이다.
- 개발자는 자동화된 도구, 클라우드 서비스 및 현대적 설계문화를 활용하여 확장가능한 애플리케이션 신속히 구축한다.
- 비용절감
- 비용이 많이드는 물리적 인프라를 조달하고 유지관리하는데 투자할 필요가 없다.
- 가용성 보장
- 복원력이 뛰어나고 가용성이 높은 애플리케이션을 구축할수 있다.
클라우드 네이티브 애플리케이션
- 마이크로 서비스라는 여러 개의 상호 의존적인 소규모 서비스로 구성된 소프트웨어 프로그램이다.
- 기본은 모놀리식 애플리케이션을 구축했으나, 네이티브 접근 방식을 사용하여 더 작은 마이크로 서비스로 나눠준다. (민첩성 향상)
클라우드 네이티브 / 엔터프라이즈 애플리케이션
클라우드 네이티브 엔터프라이즈 애플리케이션 협업 접근방식이며 다양한 플랫폼 확장성이 뛰어남. 유연성이 떨어진다. 프로시저 구축, 테스트 및 배포작업 자동화 대량의 소프트웨어 기능을 작업한 후 테스트 위해 릴리스 단시간 설정 시간이 오래걸림 배포, 복제 가능하다 확장이 불가능하다 클라우드 네이티브 애플리케이션 개발
- CI/CD
- CI : 개발자가 작업한 코드를 자동으로 테스트하고 테스트에 통과하면 코드를 통합하여 저장한다.
- CD : 작업한 코드 및 변경사항들은 테스트를 거쳐 레포지토리에 업로드되고 실 서비스 베포로 릴리즈까지 자동화하는 것
- DevOps
- 애플리케이션 개발-운영 간의 협업 프로세스를 자동화하는것을 말하며 결과적으로 애플리케이션의 개발과 개선 속도를 빠르게 함
- 컨테이너 기반 인프라
- 가상화 기술중 하나, 애플리케이션 구동 가능한 컴퓨팅 작업을 패키징하여 가상화
- 서버리스
- 서버리스 컴퓨팅은 클라우드 제공업체가 기반 서버 인프라를 전적으로 관리하는 클라우드 네이티브 모델
- 요구사항에 맞게 자동으로 확장 및 구성되어 개발자가 활용한다.
- 사용되는 리소스에 대해서만 비용을 지불한다. 앱 실행이 중지되면 자동으로 컴퓨터리소스를 제거한다.
'개념 Self Study📝 > cloud' 카테고리의 다른 글
MSA(Micro Service Architecture) (0) 2023.02.12 Docker Compose (0) 2023.02.12