[NDC 2021] 데브시스터즈가 품은 '미지의 존재', 쿠버네티스에 대하여

데브시스터즈 용찬호 엔지니어

게이머들에게 '서버'는 멀고도 가까운 존재입니다. 걸핏하면 터지는 서버에 분노를 표하는 흔한 '게이머의 삶'을 살지만, 그 속에 담긴 개발 노하우나 과정을 잘 알고 있는 이는 드물기 때문이죠. 이처럼 게이머에게 있어 서버는 어떤 단어보다 친숙하면서도 먼 개념에 해당합니다.


디스이즈게임 이형철 기자



강연자: 용찬호

소속: 데브시스터즈

이력:

▲ 데브시스터즈 R&D 센터 소프트웨어 엔지니어

▲ '시작하세요, 도커 그리고 쿠버네티스!' 출간



# 미지의 존재, '쿠버네티스'에 대하여


인프라


쿠버네티스


쿠버네티스는 데브시스터즈가 필요로 한 내용을 모두 충족한 시스템이었습니다. 동일한 인프라에서 동일한 구조로 게임을 런칭할 수 있는 환경을 제공할 수 있을뿐더러, 서버 하나가 잘못되더라도 밸런싱이 가능했으며 확장성과 오픈소스 생태계까지 갖췄기 때문이죠.


그렇다고 해서 쿠버네티스가 무조건적인 정답은 아닙니다. 도입하기 전 충분한 검토와 연구가 당연히 필요하죠. 개발사와의 협업은 가능한지, 그 방향성이 컨테이너 기반 클라우드와 적합한지 등을 꼼꼼히 따져봐야 합니다.

데브시스터즈는 약 일곱 개의 쿠버네티스 클러스터를 게임 인프라로 활용하고 있습니다. 그 용도도 무척 다양한데요, 게임 퍼블리싱 플랫폼 자체는 물론 게임별 dev, qa, staging 프로덕션 게임 서버와 데이터베이스도 쿠버네티스에서 운영하고 있죠. 게임 로깅 인프라나 윈도우즈 컨테이너를 위한 쿠버네티스까지 사용하고 있을 만큼, 그 범위도 넓은 편입니다.


다만, 데브시스터즈가 처음부터 쿠버네티스를 잘 썼던 건 아닙니다. 용찬호 엔지니어는 "성공적 도입을 위해 R&D를 길게 진행했다. 2014년에 처음으로 쿠버네티스를 연구했지만, 기능이 빈약했기에 많이 활용하진 못했다"라며 당시를 회상했습니다.


그렇게 시간이 지나 쿠버네티스는 추가 기능을 갖췄고, 2017년 데브 플레이 플랫폼에 도입된 데 이어 2년 뒤에는 <쿠키런 for Kakao> 서버에도 문제없이 활용되며 데브시스터즈에 자신감을 심어줬습니다. 올해 초 출시된 <쿠키런: 킹덤>의 컴포넌트 대부분도 쿠버네티스 위에서 운영되고 있죠.



# 데브시스터즈는 어떻게 쿠버네티스 클러스터를 구축했나


쿠버네티스는 크게 '셀프 호스트'(Self-hosted)와 완전 관리형으로 나뉩니다. 


셀프 호스트는 컨트롤 플레인을 직접 관리할 수 있으며 튜닝 등 실험적 활용이 가능하지만, 장애 발생 시 직접 해결해야 한다는 단점을 갖고 있습니다. 반면, 완전 관리형은 컨트롤 플레인에 대한 관리를 완전히 위임하는 것으로 부담을 줄일 수 있다는 평가를 받습니다. 또한, 클라우드가 제공하는 윈도우즈 컨테이너 등도 쉽게 활용 가능합니다. 하지만 앞서 말씀드린 클러스터 튜닝이 불가능하다는 문제점도 있죠. 


데브시스터즈는 두 항목을 저울질한 결과, 효율성이 높은 관리형 쿠버네티스를 선택했습니다.

현재 데브시스터즈는 게임 퍼블리싱에 필요한 요소 대부분을 쿠버네티스에서 운영하고 있습니다. 용진호 엔지니어에 따르면 쿠버네티스의 장점은 '동일한 게임 환경을 찍어내듯 복제할 수 있다'는 점입니다. 실제 라이브 서비스를 위해 준비된 게임 환경이 존재할 경우, 똑같은 세팅으로 부하 테스르를 할 수 있는 모델을 만들 수 있는 거죠. 


다만 이를 위해서는 '게임 서버를 위한 쿠버네티스 배포 자동화', '여러 게임을 위한 멀티 테넌시 환경', '쿠버네티스에서 게임 운영하기' 등 세 가지 요소가 필요합니다. 

성격에 따라 배포 도구를 잘 골라야 한다
여러 게임을 위한 환경도 필수적으로 요구된다
셀프 호스트에 대한 걱정은 하지 않아도 된다



# "소소한 부분에서 시작해 천천히 허들을 낮춰보시라"


쿠버네티스 기술 스택에는 다양한 요소가 존재합니다.


먼저, 서비스 메시는 네트워크 트래픽 제어와 메트릭 가시성 확보를 위해 사용됩니다. 데브시스터즈의 경우 istio와 envoy를 사용하고 있는데요, 각각 서비스 메시의 컨트롤 플레인 구성과 게임 서버로 오가는 모든 트래픽을 대신 처리하기 위한 프록시의 역할을 수행합니다.


쿠버네티스의 기능을 보조하기 위한 애드온에도 주목해야 합니다. 인증서를 생성하거나 단기 메트릭을 수집하기 위한 필수 애드온 외에도 필요에 따라 수많은 애드온을 운영할 수 있기 때문이죠. 데브시스터즈는 라이브 클러스터에서 서른 개 이상의 애드온을 활용하고 있습니다. 


용찬호 엔지니어는 애드온 부분에서 다음과 같은 말을 전했습니다. 결론만 말하자면 애드온의 숫자가 많더라도 걱정할 필요가 없다는 겁니다.


"중요한 건 필요한 기능을 위해 적절한 애드온을 사용하는 거지, 깊은 이해가 필요한 건 아니라는 점이다. 이해도가 높다면 트러블슈팅이 가능하겠지만... 굳이 그럴 필요는 없다.필요할 때 필요한 애드온을 필요한 만큼만 가져다 쓰는 게 핵심이다."

세션 말미, 용찬호 엔지니어는 데브시스터즈가 쿠버네티스를 쓴 이유를 세 가지로 요약함과 동시에 한 가지 당부의 말을 전했습니다.


그는 "퍼블리싱 가능한 인프라나 이를 위한 컨테이너 오케스트레이션, 오픈소스 생태계 등으로 인해 쿠버네티스를 택했지만 이것만 사용할 순 없다"라며 "모니터링, 서비스 메쉬 등 도구를 최대한 활용해야 한다. 여러 게임을 퍼블리싱하는 개발자를 위한 멀티 테넌시와 권한 관리도 필수"라고 전했습니다.


마지막으로 용찬호 엔지니어의 맺음말을 통해 기사를 마무리할까 합니다. 이번 세션에는 게임 개발과 쿠버네티스에 관한 내용은 물론, 서버에 대한 데브시스터즈의 노하우도 담겨있으니 관련 업계 종사자라면 한 번쯤 들어보시길 권해드립니다.


"라이브 환경에 쿠버네티스를 도입한다는 건 굉장히 허들이 높은 작업일 수 있다. 따라서 섣불리 도입하라고 말씀드릴 순 없다. 하지만, 게임 개발 환경과 같은소소한 부분에서라도 쿠버네티스를 천천히 도입하면서 허들을 줄이는 것도 나쁘지 않을 거다."
어디서나 볼 수 있는 게임 뉴스는 이제 그만, 디스이즈게임이 당신의 인사이트를 넓혀드립니다.
Follow
Cards you may also be interested in
어센던트 원, 점프 포스 정식 출시! 2월 둘째 주 출시 게임은?
thisisgame
5
2
1
[기자수첩] 스팀 덱의 등장, '스위치 철옹성'은 계속 굳건할까
thisisgame
2
0
0
배그가 오픈월드 배틀로얄 창시자? 왜곡에 가까운 크래프톤 주장
thisisgame
1
0
0
"젤다 좋아한다면 망설이지마세요!" 인디 게임 '데스 도어' 향한 찬사
thisisgame
1
1
0
출시 앞둔 넥슨의 대작 모바일 MMORPG '트라하' 티저 공개
thisisgame
5
0
0
메이플스토리 유저 자체 간담회 개최, 넥슨 불참에 "집단소송 준비할 것"
thisisgame
4
1
0
'청구액 최소 11억' 엔씨, 리니지M 소송에 김앤장 선임
thisisgame
2
0
0
[찾았닥터] 이승구 원장님 / 척편한병원
findoctor
3
1
0
'그체'가 돌아온다. 그랜드체이스 클래식 7월 28일 글로벌 오픈
thisisgame
1
0
0
게임/애니에 등장하는 타임루프 캐릭터
rktksvlqkek
4
1
2
[TIG 특집 ⑥] 셧다운제 실효성 논란 종결... 여러 연구 살펴봐도 "효과 없어"
thisisgame
2
0
0
[허접칼럼] “넥슨은 진짜 매각될까요?” 가능성 있는 시나리오들
thisisgame
6
2
3
김정주 회장이 넥슨을 매물로 내놨다? 넥슨 “상황 파악중”
thisisgame
5
0
0
"용돈 천만 원씩 드렸죠" 1인 게임 개발로 효도한 청년 이야기
thisisgame
3
1
0
한 잔만 더 하고 싶은, 박보람 인터뷰
eyesmag
5
4
0
퍼니싱:그레이 레이븐 '루시아' 클레이 도전♬
respectyou
16
2
3
성추행에 집단 소송까지... 바람 잘 날 없는 유비소프트
thisisgame
1
0
0
권혁수사대, 취조실 인터뷰 #다시본콘텐츠
goalgoru
5
3
0
학부모단체&중독포럼 "셧다운제 폐지? 오히려 19세까지 확대!"
thisisgame
1
0
1
숏터뷰, 탈룰라 인터뷰 #다시본콘텐츠
goalgoru
73
12
6
4.7 Star App Store Review!
Cpl.dev***uke
The Communities are great you rarely see anyone get in to an argument :)
king***ing
Love Love LOVE
Download

Select Collections