많은 분들이
다양한 이유가 있지만 대부분 높은 시장 점유율에서 기인합니다.
많은 회사에서 사용한다.
= 내가 들어갈 회사에서도 AWS를 사용할 확률이 높다.
많은 사람들이 사용한다.
= 레퍼런스나 강의가 많다.
1년 간 무료로 이용할 수 있다.
= 비용 부담이 없거나 적다.
AWS의 프리티어는 VCPU 1G, Memory 1G의 VM Instance를 월 720시간 이용할 수 있습니다.
간단한 웹서비스를 배포하고 S3 Storage, DB 등을 연결해 볼 수 있습니다.
처음 시작할 때는 이정도로 충분합니다.
하지만 익숙해 질수록 점점 부족하다고 느끼게 될 것입니다.
예를 들어 요즘 대세 쿠버네티스(Kubernetes)도 VM 1개로는 install 도 어렵습니다.
그렇다면 유료가 답일까요?
유료서비스를 이용하면 제한없이 마음껏(?) VM을 만들 수 있습니다.
언젠가는 유료를 써봐도 좋겠지요.
(회사 돈으로....)
일단 우리 아직 클라우드를 이용해서 돈을 벌고 있지 않기 때문에
가능하면 무료로, 쓰더라도 최소한만 지불하고 싶습니다.
마이크로서비스 애저, 구글의 GCP 등 대부분의 클라우드 서비스 제공자가 프리티어를 제공합니다.
또한 일정 정도의 크레딧(200~300 달러) 안에서 다양한 클라우드 서비스를 이용할 수 있지요.
크레딧을 소진하거나 무료 기한이 끝나면 유료로 전환하거나 서비스를 종료해야 합니다.
실습을 해보기에 적당해 보이지만 연속적인 서비스를 하기에는 좀 아쉽긴합니다.
이사를 다니지 않고 괜찮은 사양의 VM을 2개 이상의 이용할 수 있는 클라우드 프로바이더도 있습니다.
RDBMS로 유명한 오라클 사의 OCI 입니다.
총 4G CPU, 24G 메모리 안에서 1~4개의 VM을 만들 수 있고, 추가적으로 1G/1G VM 2개를 평생 무료로 쓸 수 있습니다. 완전 개꿀이라고 생각하시겠지만 역시 함정이 있습니다.
가입이 랜덤 게임(수많은 실패인증이 있습니다.)이고 ARM64 기반이라 신경쓸 게 좀 있다는 것입니다. (현재까지는 ADM64가 좀더 대중적입니다.)
하지만 평생 무료라면 극복할 수 있습니다.
공짜를 사랑하는 저는 OCI 가 최애지만
가입이 안 되면 시작도 할 수 없으니 일단 다른 클라우드로 시작할 것입니다.
걱정하지 마세요.
어차피 나머지도 다(?) 연결할 거예요...
시작하기 전에 큰 그림을 그려봅시다.
우리는 가능하면 무료 또는 소액으로, 다양한 클라우드 서비스를 연결하여 쿠버네티스를 제공하는 멀티 클라우드 인프라를 구축하려고 합니다. 무슨 말인지 모르겠다고요?
아래 그림 같은 인프라를 구성하겠다는 말입니다.
당장은 어렵게 보이겠지만
- 관리 클러스터를 구성합니다.
- 다양한 클라우드의 클러스터를 연결하려면 그것들을 통합하여 관리할 수 있는 관리 클러스터가 필요합니다.
- GCP에서 VM 생성 후 Kind 를 사용하어 관리 클러스터를 구성합니다.
- 관리 클러스터에는 Service, Pod 등 쿠버네티스을 자원은 직접 배포하지 않습니다.
- 우리는 워크로드라는 클러스터에 쿠버네티스 자원을 배포할 것입니다.
- 워크로드를 만들기 위해 Cluster API가 적용된 노드 이미지가 필요합니다.
- Azure에서는 미리 만들어져 있어서 가져다 쓰면 되고
- 그 외의 클라우드에서는 이미지 빌더를 사용하여 직접 사용자 정의 이미지를 만들어 등록합니다.
- 위 이미지를 이용하여, 관리 클러스터에서 워크로드를 생성하고 통신을 설정합니다.
일단 GCP에서 1~3을 진행합니다.
다른 클라우드를 연결하려면 2, 3을 반복하면 됩니다.
농담입니다.
다음 편에 계속됩니다.