오픈소스 컨트리뷰션 1주차 : 마스터 챌린지 기간 진행

Ryan Kim
6 min readAug 12, 2021

--

첫번째 팀 미팅과 DevStack을 이용한 오픈스택 테스트와 개발 환경 구축 방법 멘토님들로부터 학습하기

2021.08.07 오픈소스 컨트리뷰션 온라인 발대식

10주간의 항해가 시작되었다!

오픈소스 컨트리뷰션의 오픈스택 파트 팀 활동이 시작되었다.

팀 활동이 도대체 어떻게 진행될지 잘 몰라서 많이 걱정했었는데, 멘토님 두 분이 모두 친절하시다.

코로나 상황이기도 해서 서로 만나기가 어려우니 10주 동안 서로 코드 작업한 것 커밋하고, 리뷰하고 합치는 작업만 할 것 같았는데 꼭 그렇지는 않을 것 같다.

내가 속한 오픈스택 팀의 경우, 기본적인 운영 방침은 이렇다.

  • 매주 화요일 팀 미팅 진행(필수 사항, 온라인으로만 밤에 진행된다)
  • 매주 토요일 스프린트 데이 (선택사항이며, 이건 코로나 상황이라 선릉역에 있는 공개 SW 개발자 센터에 모여 개발하는 것이 가능할지 잘 모르겠다)

현업에 속한 개발자님들이 많아서 낮에는 대부분 근무하다보니 주간 미팅의 경우 밤에 진행이 되며, 매주 토요일은 팀원들이 우리가 다루게 될 오픈소스개발 프로젝트를 오전 10시부터 저녁 6시까지 부스팅하는 시간을 갖게 되는 것을 목표로 잡게 되었다.

현업 개발자님들과 소통하면서 개발할 수 있는 귀중한 시간이고, 오픈 스택 코드가 파이썬 고급 스킬들이 많이 쓰인 프로젝트라서 파이썬 언어 실력을 늘릴 수 있는 기회이기도 해서 다양한 경험들을 해보고 있다.

사실 이번 프로젝트 참여하면서 제일 걱정했던 것은, 멘토님들이 업무 시간에 너무 바빠서 프로젝트에 충분히 신경쓸 시간이 있는지, 그리고 참여한 멘티들이 소화하면서 프로젝트 follow up이 될지 걱정이었다.

이번 주 우리 팀의 첫번째 과제

그런데 일단 멘토님이 오픈스택으로 현업 근무를 하고 있는 상황이고, 한국 오픈스택 코리아 대표로 있다보니 이런 걱정은 기우일 것 같다.

그리고 나를 포함한 몇 몇을 제외하고 나머지 팀원들은 거의 대부분 현업 개발자라 생각보다 금방 따라오지 않을까.. 하는 생각도 든다.

2021.08.10 첫번째 팀 미팅 : 오픈스택 소개 & 첫번째 미션 안내

1주차 첫번째 팀 미팅으로 멘토님들이 오픈스택이 무엇인지 강의를 준비해주셨다.

아마 이 강의가 없었다면 대부분의 정보를 구글링하면서 혼자 찾아야 했을텐데, 멘토님도 2015년에 처음 오픈 스택 접할 때 정보가 너무 없어서 힘들었다고 한다…

그리고 사람들이 잘못알고 있는 것 중 하나는 오픈스택을 클라우드를 더 배우기 위해 공부한다고 하는데, 엄밀히 말하면 클라우드 아래 쪽 layer, 즉 클라우드 인프라를 구성하는데 사용되는 기술이고, AWS/GCP/Azure 등의 아래층을 구성하는 기술이라고 보면 된다.

클라우드 기술이면 데이터 처리 속도 등에 매우 빨라야하는데 파이썬으로 오픈 스택을 빌드한 이유가 무엇일까?

그 이유는 멘토님이 현업에서 오픈스택을 쓰면서 개인적으로 추측하는 것들이 있는데, JAVA, C등으로 에러 발생했을 때, 트러블 슈팅 쏘는게 개발자 입장에서 굉장히 난해하다고 한다.

보통 클라우드 기술을 도입하고 있는 기업들을 보면 데이터 로그가 많이 나오는 기업은 하루에 100만개가 넘어가는 경우도 있는데, 여기서 에러가 발생하면 트러블 슈팅을 클라우드 개발자가 쏴야하는데 low-level 언어를 사용하면 손이 많이 가서 굉장히 고통스러울 것이라 한다.

또한 위의 이미지로 오픈스택 구조도를 보면 알겠지만, 오픈스택을 구성하기 위한 컴포넌트들이 매우 많다.

즉, 오픈스택 하나가 소프트웨어 기술의 종합체라고 볼 수 있는 것이다.

멘토님의 강의에서 네트워크와 관련한 설명들 (CS 학과를 나오면 당연히 배우고 나와야하는 네트워크 지식들…)은 아직 내가 그 분야 지식이 부족하다보니 조금 못알아듣는 감이 있지만, 토요일에 스프린트할 때 틈틈이 찾아서 문의를 드려봐야겠다.

그리고 첫번째 미션이 나왔다. devstack을 이용해서 오픈스택을 구축하는 것을 진행할 것이고, 카페24 가상서버를 이용해서 우리들의 오픈스택을 구축하는 것이다.

예전에 유튜브에 오픈스택의 기업 도입 관련 1시간 30분짜리 강의 영상을 보면, devstack 도입 전에 오픈스택을 하나하나 연결할 땐 진짜 힘들었는데 devstack 이후로는 명령어 몇 개로 한번에 오픈스택 사용이 가능해서 너무 좋다는 얘기를 했다.

그래도 오픈소스가 꾸준히 기업의 관심을 받으면서 발전했고, 그 혜택이 오픈스택에도 온 덕분에 나같이 배우는 사람들이 오픈스택을 빨리 빌드해 볼 수 있는 기회를 갖게 된 게 아닐까 싶다.

1주차 미션은 이번주까지니 후딱 구성해봐야겠다.

2021.08.12 추가 내용 (devstack 설치 완료)

화요일 미팅 이후 12일 새벽 2시까지 devstack을 사용해서 오픈스택을 구성하게 되었다.

Cafe24 가상머신을 사용했고, OS는 우분투 18.04를 사용했다.

(즉, 퍼블릭 클라우드 환경에서 오픈스택을 배포해 쓰는 것)

현재 오픈스택 LTS 버전 명칭이 Wallaby인데, 우분투 18.04에서 안정적으로 작동한다.

가상 머신을 카페24 서버에 설치 후, 아래와 같은 절차로 진행했다.

이미지 출처
이미지 출처
이미지 출처
설치 성공

막상 해보면 설치는 컴퓨터가 하니 별 것 아닌 것 같지만, 설치 성공까지 삽질하는데 시간이 꽤 걸린다…

어차피 환경 설정하는 게 프로젝트 절반일테니, 천천히 해보자.

2021.08.15 변경 사항

위에 언급한 내용은 오픈스택이 설치 되어도 인터넷 접속이 안되는 에러를 마주치게 된다.

클라우드 환경에서 인터넷 접속이 가능하게 설정하는 방법은 다음 편에 있으니 추가적으로 확인하길 바란다.

Ryan

--

--

Ryan Kim
Ryan Kim

No responses yet