~/blog/OpenStack-Build-1
Published on

OpenStack 구축기 #1: 왜 직접 인프라를 구축해 보기로 했나

232 words2 min read–––
Views
Authors
  • avatar

서비스를 배포할 때 대부분은 AWS나 GCP 같은 퍼블릭 클라우드를 사용하며, 클라우드 서비스를 직접 구축하는 경우는 많지 않다. 나는 클라우드를 직접 구축할 수 있다는 생각조차 못했다. 클라우드는 큰 기업들이 운영하는 복잡한 인프라이고, 우리는 그저 서비스를 사용할 뿐 내부 구조에는 접근할 수 없다고 막연하게 느껴왔다.

OpenStack을 처음 알게 된 계기는 오픈소스 컨트리뷰션 아카데미(OSSCA)에 참여하면서였다. OpenStack은 방대한 클라우드 인프라를 Python으로 구성한 오픈소스 프로젝트였고, 나에게 익숙한 언어로 인프라 내부 구조를 분석해볼 수 있다는 점에서 관심을 가지게 되었다.

OSSCA 활동을 하며 python-openstackclient프로젝트에서 openstack user create, openstack user delete같은 user CRUD의 기능 테스트를 구현했다. openstacksdk가 제공하는 Identity v3 인터페이스를 사용해 사용자의 생성/조회/삭제를 검증하였고, 기여했던 Gerrit 링크는 여기있다.

테스트 코드를 작성하면서 Keystone, Nova, Neutron 등 OpenStack의 다양한 서비스에 대해 알게 되었는데, 이들이 내부적으로 어떻게 상호작용하는지 구조적으로 이해해보고 싶다는 생각이 들었고, 마침 친구가 서버 리소스가 많이 남는다고 환경을 제공해줘서 직접 구축해볼 수 있는 기회가 생겼다.

단순히 문서를 읽고 이해하는 수준을 넘어서, 직접 클라우드 환경을 구축하며 실제 환경을 경험해보고자 한다. 실습 과정에서 정리한 문제 원인 분석과 해결 과정을 토대로 OpenStack 내부 아키텍처와 서비스 흐름을 더 깊이 탐구하며 지식을 확장해 나갈 계획이다.

이 글은 그 여정의 시작을 기록하는 글이며, 다음 글에서는 OpenStack을 설치하기 전에 반드시 알아야 할 구조와 개념을 정리할 예정이다.