클라우드 컴퓨팅
클라우드 컴퓨팅이란
여러 기술들이 모인 플랫폼 환경
필요한 서비스를 필요한 때에 필요한 만큼 쓰고 쓴 만큼만 비용 청구
Pooling(풀링): 제한된 자원을 효율적으로 재사용하기 위해 관리하는 기법
가상화와 클라우드 차이
가상화는 기술이고, 클라우드는 환경
클라우드 안에 가상화 환경이 구성되어있는 것
가상화
단일 물리 하드웨어 시스템에서 여러 시뮬레이션 환경이나, 전용 리소스를 생성할 수 있는 시스템
클라우드
네트워크 전체에서 확장 가능한 리소스(서버 호스트, 스토리지, DB, 앱등)을 추상화하고 풀링할 수 있는 환경
클라우드 환경 종류
Public Cloud
Amazon Web Services, Google Cloude Platform, Microsoft Azure, Naver Cloude Platform 등
인터넷을 통해 접근 가능한 환경
특정 벤더사에 의해 제공되는 클라우드 환경
퍼블릭 클라우드 업체는 스스로 퍼블릭으로 분류하는것을 경계함?
퍼블릭이라는 표현이 보안적으로 취약한 이미지를 주기 때문
Private Cloud
OpenStack, Openshift 등
클라우드 환경 자체를 내가 통제할 수 있는 데이터 센터 내에 구축하는 형태
폐쇄망 안에서 구현 가능
가상화되고 추상화된 사용성, 운용성에 초점이 맞춰짐
Multi Cloud
하나의 회사에서 하나의 클라우드 환경을 채택해서 모든 워크로드가 그 클라우드 안에 구성된 경우는 All-in 전략이라한다.
반대로 여러 클라우드의 워크로드가 분산된 경우는 멀티 클라우드 전략이라 한다.
운영면에서 스킬셋이 분리되기 때문에 여러 기술들을 다 알아야해서 비추?
대기업의 경우 팀이 많아서 여러 클라우드를 분산해서 전략적으로 두는게 유리할 수 도 있다.
Hybrid Cloud
클라우드랑 온 프레미스의 하이브레드 구성
Public + Private 섞어서
보안에 민감한 건 데이터 센터에 두고 보안에 덜 위험한 시스템은 클라우드에 올리는 시스템
클라우드의 성장
아마존닷컴의 가변적인 환경을 지원하기 위해서 시작됨 (AWS, 2006)
클라우드 환경이 사업성이 좋고 안전성 탄력성 유지하는데 탁월했기 때문에 퍼블릭하게 열게됨
초기에는 서버 호스팅업체에 거의 가까웠는데 2010년대에 올라오면서 지금 사용하는 클라우드 플랫폼 형태로 갖춰짐
우리나라의 경우 2010년 중반부터 폭발적으로 성장함
대기업들이 클라우드를 본격적으로 사용하기 시작하면서
IaaS, PaaS, SaaS - as a Service
IaaS - Infra Structure (인프라 제공)
말 그대로 서버
PaaS - Platform (플랫폼 제공)
서버 위에 데이터 엔진까지 올린 데이터베이스 플랫폼
SaaS - Software (소프트웨어 제공)
그 모든 서비스를 모두 패키징해서 제공하고 사용만 하면되는 소프트웨어
하나의 완전 패키징된 소프트웨어를 사용할 때 그 환경이 조금이라도 내 속안에 있냐 완전 추상화된 형태로 제공업체에 있냐로 사스 개념을 분류하면됨
aaS - as a service (서비스를 제공받는다, 내가 관리하지 않는다는 것)
클라우드가 제공하는 서비스들은 그 종류에 따라서 IaaS가 될지, PaaS가 될지, SaaS가 될지 결정됨
하지만 클라우드 그 자체는 SaaS, 클라우드 업체에서 100% 만들어서 제공해주기 때문에 SaaS에 가까움
클라우드로 인한 업무 환경 변화
DevOps의 등장
더 나은 서비스를 제공하고 시장에 성공하기 위한 비즈니스 요구 사항에 나온 새로운 개발방식
제품을 더빠르게 개발하고 안정적으로 운용해서 혁신적으로 성장하기 위한 문화
그러기 위해서는 개발팀과 운영팀이 하나가 되서 협업하고 많은 부분을 자동화해서 개발 및 배포 속도를 높여야했음
그런 프로세스를 자동화하기 위해 CI/CD, MSI 등의 개념을 을 도입해서 아키텍처를 최적화하게됨
변경이 잦은 인프라의 비용을 절감하고 속도를 CI/CD에 맞추기 위해 다이나믹한 환경이 필요함
이러한 변화를 잘 지원해주는게 클라우드였던 것
개발만 할줄아는 시대가 아니게 됨
Last updated