Share
Embed
Flava DBS for MySQL: Architecture and Features
LINEヤフーの新しいプライベートクラウドであるFlavaで、MySQLをDBaaSとして提供する製品、DBS for MySQLを紹介します。
DBS for MySQLが提供する機能、MySQLクラスターの構造、および高可用性(HA)がどのように提供されるかについて説明します。
また、Kubernetesを基盤としたオペレーターパターンで開発されたDBS for MySQLのアーキテクチャについても説明します。
LINEヤフーTech (LY Corporation Tech) PRO
June 30, 2025
Transcript
30 slides
-
Flava DBS for MySQL: Architecture and Features LINE Plus /
Cloud DBS MySQL Kang Han Sol (hasoka) HONG SOPHAL (sophal) LINE Plus / Cloud DBS -
2020. 07 ~ 2020. 08 NAVER Cloud – MySQL Engineer
2020. 11 ~ 2024. 03 LINE Plus – MySQL Engineer 2024. 04 ~ LINE Plus – Cloud Engineer Speaker Kang Han Sol (hasoka) -
What is this? ⎯ Private Cloud in LY Corporation ⎯
Similar Platforms Flava ⎯ AWS ⎯ Google Cloud ⎯ Microsoft Azure -
What is this? ⎯ MySQL Database as a Service Available
on Flava ⎯ Similar Products ⎯ Create MySQL Clusters easily in just a few clicks. DBS for MySQL ⎯ RDS for MySQL(AWS) ⎯ Cloud SQL for MySQL(Google) ⎯ Azure Database for MySQL(Microsoft) -
Legacy Benefit Flava DBS for MySQL DBS for MySQL Developer
Infra Team DB Team Create Server Request Many Tasks… Servers Servers MySQL Cluster Configuration Request Many Tasks … MySQL Clusters MySQL Clusters Developer Flava Click MySQL Clusters -
Operator Pattern Real State vs Current State(status) vs Desired State(spec)
Controller Real Environment Custom Resource apiVersion: v1 kind: mysqlservice spec: replicas: 2 status: replicas: 1 (↻Reconcile) -
Architecture C-Plane (Control Plane) D-Plane (Data Plane) Flava Kubernetes Engine
Controllers On Flava Server … Flava Load Balancer Flava DNS -
C-Plane NZTRMTFSWJDF DPOUSPMMFS NZTRMOPEF DPOUSPMMFS TFSWFSDPOUSPMMFS ʜ mysqlnode CR server
CR "1*GPS4FSWFS "1*GPS-# "1*GPS%/4 ʜ Reconcile Reconcile … NZTRMDMVTUFS DPOUSPMMFS -
C-Plane NZTRMTFSWJDF DPOUSPMMFS NZTRMDMVTUFS DPOUSPMMFS TFSWFSDPOUSPMMFS mysqlnode CR server CR
"1*GPS4FSWFS "1*GPS-# "1*GPS%/4 ʜ Reconcile mysqlservice CR Reconcile mysqlcluster CR NZTRMOPEF DPOUSPMMFS Reconcile Reconcile Create Create Create Create API Call -
D-Plane Primary Replica Read/Write Endpoint User MySQL Cluster Default Replication
Object Storage Backup -
D-Plane Read/Write Endpoint Read Endpoint Load Balancer Replica User MySQL
Cluster Default Read Replica Group Primary Replica Replication Object Storage Backup Replica -
HA(High Availability) HA controller CRs Read/Write Endpoint CRs mysqlstate controller
Watch mysqlstate controller Standby Primary Watch Watch MySQL Server MySQL Server Health Check Health Check C-Plane D-Plane Replication -
HA(High Availability) CRs Read/Write Endpoint CRs mysqlstate controller Watch mysqlstate
controller Standby Primary Watch Watch MySQL Server MySQL Server Health Check Health Check C-Plane D-Plane 2. Update 3. Reconcile Logic (Failover) 4. Update 5. Update the DNS endpoint HA controller 5. Reconcile Logic (Becomes the new primary) Replication 5. Reconcile Logic (Recover the server) 1. Failure Occurred -
HA(High Availability) HA controller CRs Read/Write Endpoint CRs server controller
server controller Standby Primary C-Plane D-Plane Replication Health Check (API Call) 1. Failure Occurred 2. Update serverchecker controller 3. Reconcile Logic (Failover) Watch -
Flava DBS for MySQL ⎯ DataBase as a Service on
Flava ⎯ Kubernetes + Operator SDK(golang) ⎯ FKE(Control-Plane) + Flava IaaS(Data-Plane) ⎯ In-house developed HA System ⎯ Create MySQL Clusters easily in just a few clicks. -
Sophal HONG / ϗϯɾιϙϧ / 홍쏘펄 - Hometown: Cambodia, Kampot
- Career • 2015 ~ 2017 • Seoul National University • Master degree of Computer Science and Engineering • Distributed Computing System LAB • 2017 ~ 2022 • TmaxSoft • Cloud-Based systems, Linux Server, System Management Agent • 2022.06 ~ now • LinePlus • CloudDBS – MySQL • Verda MySQL / Flava DBS for MySQL -
- Support - Scaling - High Availability - Rolling Update
- Backup and Recovery - Security - Monitoring and Alerting - Logging - Summary Features -
• Version support • MySQL 8.0 / MySQL 8.4 •
Future versions planned • Server Type • Multiple options • Any server type will be supported • Multi-AZ • 3 availability zones • Multi-region support coming soon • API For Management • CRUD Service / Cluster ... • Full Run API support Support Support Capabilities -
• Scale-out • Increasing nodes • Add replica node •
Scale-in • Decreasing nodes • Remove replica node • Scale-up • Increasing capacity • Large server spec • Scale-down • decreasing capacity • Small server spec Scaling Flexible Scaling Options -
• HA • Primary and Standby node • Read Replica
Group (Optional) • Auto / Manual Failover • Maintenance Healing mechanisms • Incident and planned maintenance • Replace node before maintenance start High Availability Built-in High Availability and Maintenance -
• OS upgrade • Simple: One click, all nodes upgrades
• Safety: Replicas -> Standby -> Primary • Failover: Auto / Manual • MySQL Version upgrade • Simple: One click, all nodes upgrades • Safety: Replicas -> Standby -> Primary • Failover: Auto / Manual • Server spec upgrade • CPU/Memory/Disk change Rolling update Rolling maintenance and upgrades -
• Backup • Automatic: everyday • Manual: anytime • Preserved
backup • Keep last backup forever • When service is deleted • Backup file • Store on Flava Object Store Backup and Recovery Reliable Backup and Recovery -
• VPC • Virtual Private Network • Communication is protected
• Editable ACL setting • User ACLs • Client Certificate • ID / Password • SSL/TLS • Encryption in transit • Communicate through secure channel (TLS) • QueryRunner • Run queries on database Security Comprehensive security -
• Monitoring • MySQL metric • Friendly Web UI grafana
• Flava Monitoring alert • Editable alert setting • System Alerting • Failover / Maintenance / Lifetime • Slack / Email Monitoring Real-time monitoring and alerting -
• API Activity log • Flava Operation log • API
Request path, method, response code, username Logging Operation log -
• Full version and server flexibility • High Availability and
Reliability • Backup and disaster recovery • Secure, scalable and API-Accessible • Monitoring, Alerting, and Logging Summary Feature highlights recap -
• Any server type • Custom server type • Multi-Region
• KKS, SSK, ... • File Encryption • Transparent Data Encryption (TDE) • Backup and Recovery • Binlog backup • Point-in-time Recovery • Logging • Slow log, DB audit log Up coming... In-progress supported features