Trove: Explore Like Never Before. Key Features of Trove May 2010
카카오에서의 Trove 운영사례
-
Upload
won-chon-jung -
Category
Software
-
view
269 -
download
3
Transcript of 카카오에서의 Trove 운영사례
![Page 2: 카카오에서의 Trove 운영사례](https://reader034.fdocuments.net/reader034/viewer/2022050714/5a64bb3f7f8b9a88148b4b1d/html5/thumbnails/2.jpg)
Trove (Open stack Database as a service) 란?
The OpenStack Open Source Database as a Service Mission
To provide scalable and reliable Cloud Database as a Service provisioning functionality for both relational and non-relational
database engines, and to continue to improve its fully-featured and extensible open source framework.
![Page 3: 카카오에서의 Trove 운영사례](https://reader034.fdocuments.net/reader034/viewer/2022050714/5a64bb3f7f8b9a88148b4b1d/html5/thumbnails/3.jpg)
Trove에서 제공하는 Database
![Page 4: 카카오에서의 Trove 운영사례](https://reader034.fdocuments.net/reader034/viewer/2022050714/5a64bb3f7f8b9a88148b4b1d/html5/thumbnails/4.jpg)
Trove 특징
• 단일 명령어로 여러 종류의 DB 관리
• 쉬운 데이터베이스 생성
• 확장 가능한 소스 구조
![Page 5: 카카오에서의 Trove 운영사례](https://reader034.fdocuments.net/reader034/viewer/2022050714/5a64bb3f7f8b9a88148b4b1d/html5/thumbnails/5.jpg)
Trove와 일반 VM의 차이
• 현황관리
• 단일 명령으로 여러 종류의 데이터 베이스 관리
• 인스턴스 생성시 자동으로 데이터 볼륨추가
• 쉬운 Replica 추가
• 자동 클러스터 생성
![Page 6: 카카오에서의 Trove 운영사례](https://reader034.fdocuments.net/reader034/viewer/2022050714/5a64bb3f7f8b9a88148b4b1d/html5/thumbnails/6.jpg)
Trove 아키텍처
Trove API
Trove TaskManager
Trove Conductor
Trove GuestAgent
DataBaseMessage Queue
Controller Node VM
Cinder
GlanceData Volume
Trove-GuestImage (mysql)
Trove-GuestImage(redis)
DB
Swift
Backup Data
Backup Data
![Page 7: 카카오에서의 Trove 운영사례](https://reader034.fdocuments.net/reader034/viewer/2022050714/5a64bb3f7f8b9a88148b4b1d/html5/thumbnails/7.jpg)
Trove 사용 현황
인스턴스 : 750개
Region : 4개
제공 DB
관리 인원 : ?
![Page 8: 카카오에서의 Trove 운영사례](https://reader034.fdocuments.net/reader034/viewer/2022050714/5a64bb3f7f8b9a88148b4b1d/html5/thumbnails/8.jpg)
Trove 도입 목적
• 기존 사내 DBaaS 문제점 보완
• 개발자들에게 실서비스용 DB와 유사한 개발용 데이터 베이스를 쉽게 제공
• DBA들의 개발용 DB 관리 부담 감소
![Page 9: 카카오에서의 Trove 운영사례](https://reader034.fdocuments.net/reader034/viewer/2022050714/5a64bb3f7f8b9a88148b4b1d/html5/thumbnails/9.jpg)
설치(Openstack)
• Openstack 이 처음인데요?
![Page 10: 카카오에서의 Trove 운영사례](https://reader034.fdocuments.net/reader034/viewer/2022050714/5a64bb3f7f8b9a88148b4b1d/html5/thumbnails/10.jpg)
설치(Trove Controller)
• Trove Controller node 설치• Trove-api• Trove-taskmanager• Trove-conductor
![Page 11: 카카오에서의 Trove 운영사례](https://reader034.fdocuments.net/reader034/viewer/2022050714/5a64bb3f7f8b9a88148b4b1d/html5/thumbnails/11.jpg)
설치 (클라우드의 꽃은 이미지)
Base
Image
Kpartx,
mount,
chroot
Install
Trove-
guestagent
Install DBBuild
Image
Upload to
glance
Test
![Page 12: 카카오에서의 Trove 운영사례](https://reader034.fdocuments.net/reader034/viewer/2022050714/5a64bb3f7f8b9a88148b4b1d/html5/thumbnails/12.jpg)
Custom database(Postgresql Plus Advanced Server) 지원
• /trove/guestagent/datastore
• /trove/guestagent/strategies • trove.conf 에 추가
![Page 13: 카카오에서의 Trove 운영사례](https://reader034.fdocuments.net/reader034/viewer/2022050714/5a64bb3f7f8b9a88148b4b1d/html5/thumbnails/13.jpg)
실행중인 VM에 작업
Trove VM
Trove VM
Trove VM
Trove VM
Ansible
• 업그레이드• 패치
![Page 14: 카카오에서의 Trove 운영사례](https://reader034.fdocuments.net/reader034/viewer/2022050714/5a64bb3f7f8b9a88148b4b1d/html5/thumbnails/14.jpg)
Openstack 버전 업그레이드
Juno Kilo Liberty Mitaka
![Page 15: 카카오에서의 Trove 운영사례](https://reader034.fdocuments.net/reader034/viewer/2022050714/5a64bb3f7f8b9a88148b4b1d/html5/thumbnails/15.jpg)
Openstack 버전 업그레이드
Old version
setup
New version
cookbook &
Image
Upgrade
Controller
Upload
Image
Upgrade
trove vm
![Page 16: 카카오에서의 Trove 운영사례](https://reader034.fdocuments.net/reader034/viewer/2022050714/5a64bb3f7f8b9a88148b4b1d/html5/thumbnails/16.jpg)
때로는 필요한 기능에 대한 패치
• Redis 백업/복원
• Mysql utf8mb4 지원
• Horizion 패치
![Page 17: 카카오에서의 Trove 운영사례](https://reader034.fdocuments.net/reader034/viewer/2022050714/5a64bb3f7f8b9a88148b4b1d/html5/thumbnails/17.jpg)
더 필요했던 부분
• 자동 일일백업
![Page 18: 카카오에서의 Trove 운영사례](https://reader034.fdocuments.net/reader034/viewer/2022050714/5a64bb3f7f8b9a88148b4b1d/html5/thumbnails/18.jpg)
운영
• 잔여 메세지 큐 비우기
![Page 19: 카카오에서의 Trove 운영사례](https://reader034.fdocuments.net/reader034/viewer/2022050714/5a64bb3f7f8b9a88148b4b1d/html5/thumbnails/19.jpg)
운영
• 전체 현황 대시보드
![Page 20: 카카오에서의 Trove 운영사례](https://reader034.fdocuments.net/reader034/viewer/2022050714/5a64bb3f7f8b9a88148b4b1d/html5/thumbnails/20.jpg)
그외 이슈
• vm이 정상생성되지 않아요• vm쿼터가 부족• ip할당이 안됨
• 사용자가 trove 인스턴스를 nova 에서 지워요
• 사용자가 직접 db 를 조작하고 싶어해요
• 사용자가 인스턴스 안에 별도 스크립트를 돌려요• 사용자가 인스턴스 내에 설치한 파이썬 라이브러리랑 trove-guestagent가 충돌나기도 함
• 한글 프로젝트명은 안되요.
![Page 22: 카카오에서의 Trove 운영사례](https://reader034.fdocuments.net/reader034/viewer/2022050714/5a64bb3f7f8b9a88148b4b1d/html5/thumbnails/22.jpg)
Q&A
![Page 23: 카카오에서의 Trove 운영사례](https://reader034.fdocuments.net/reader034/viewer/2022050714/5a64bb3f7f8b9a88148b4b1d/html5/thumbnails/23.jpg)
감사합니다