ECS to EKS 마이그레이션
(feat. 하이브리드 아키텍처 구축기)
유용환 (Superb AI)
2021.10.23.
유용환 yhyoo@superb-ai.com
Software Engineer @ Superb AI
- 서버사이드
- 인프라 관리
- 사내 MLOps
Superb AI
B2B SaaS Startup (ML data platform)
Main product: Superb AI Suite
목차
1. 배경 설명
2. 개발기
3. 향후 계획
기존 시스템
기존 시스템
데이터 프라이버시 in Suite
- 서비스를 위해 고객 원본 데이터에 접근
- ex, 이미지 데이터 전처리 및 라벨링
기존 시스템
데이터 프라이버시 in Suite
- 서비스를 위해 고객 원본 데이터에 접근
- ex, 이미지 데이터 전처리 및 라벨링
- 민감 데이터 활용에 대비한 시스템 보안
- ex, AWS 보안 인프라, SOC 2 compliance
기존 시스템
<option 1> Superb AI 스토리지 <option 2> 고객사 클라우드
스토리지
thumbnails
기존 시스템
<option 1> Superb AI 스토리지 <option 2> 고객사 클라우드
스토리지
thumbnails
기존 시스템
<option 1> Superb AI 스토리지 <option 2> 고객사 클라우드
스토리지
thumbnails
read-only
k8s & EKS 도입 배경
여러 고객사 니즈
- 더 강한 데이터 프라이버시에 대한 요청
원본 데이터는 온프레미스
환경에서 관리하고 싶어요
전처리된 이미지도 저희
서버에 저장할 수 없을까요?
신규 고객
k8s & EKS 도입 배경
여러 고객사 니즈
- 더 강한 데이터 프라이버시에 대한 요청
XX가 잘 안돼요.
XX가 불편해요.
기존 SaaS 고객
신규 고객
XX 언제 나와요?
XX 만들어주세요.
원본 데이터는 온프레미스
환경에서 관리하고 싶어요
전처리된 이미지도 저희
서버에 저장할 수 없을까요?
k8s & EKS 도입 배경
현실, 운영 비용
- 제한된 인력, 완전 설치형 서비스는 비현실적
k8s & EKS 도입 배경
현실, 운영 비용
- 제한된 인력, 완전 설치형 서비스는 비현실적
- ECS로는 양쪽에 배포 및 유지보수가 어려움
k8s & EKS 도입 배경
대책은?
- Go Hybrid
- 데이터 관리 서비스는 cloud 및 온프레미스
- 기타 서비스는 cloud only
공통 서비스
(프로젝트 관리, 라벨링, ...)
고객 B: Superb AI가
데이터까지 관리
고객 A: 온프레미스로
직접 데이터 관리
k8s & EKS 도입 배경
대책은?
- Go Hybrid
- 데이터 관리 서비스는 cloud 및 온프레미스
- 기타 서비스는 cloud only
- Use k8s (feat. EKS 마이그레이션)
- 온프레미스 운영 비용 최소화 (일원화)
고객 B: Superb AI가
데이터까지 관리
데이터 관리
서비스 분리
고객 A: 온프레미스로
직접 데이터 관리
시스템 재설계
고객군 1: SaaS 고객군 2: Hybrid
https://towardsdatascience.com/data-software-as-a-service-the-case-for-a-hybrid-deployment-architecture-c696ceaf9ef1
시스템 재설계
고객군 1: SaaS 고객군 2: Hybrid
https://towardsdatascience.com/data-software-as-a-service-the-case-for-a-hybrid-deployment-architecture-c696ceaf9ef1
개발기
새로운 시스템
고객군 1: SaaS 고객군 2: Hybrid
새로운 시스템
k8s 스택 도입
- 클러스터 모니터링
- 패키징 및 GitOps
기존 인프라 리팩토링
- 데이터 스토리지
- 큐 (queue)
- FaaS 오케스트레이션
데이터 스토리지
기존 인프라 리팩토링
SaaS
On-Premise
AWS S3
MinIO
PUT, GET, DELETE
기존 인프라 리팩토링
큐 (queue)
SaaS
On-Premise
AWS SQS
RabbitMQ
EVENT NOTIFICATION
(PUT OBJECT)
AWS S3
MinIO
기존 인프라 리팩토링
FaaS 오케스트레이션
SaaS
On-Premise
AWS Step Functions
Kubernetes-based
Event Driven Autoscaler
TRIGGER
AWS SQS
RabbitMQ
(1) bucket event notification
(2) API server’s request
k8s 스택 도입
클러스터 모니터링
vs
k8s 스택 도입
패키징 및 GitOps
?
?
향후 계획
Next Steps
배포 및 관리를 위한 스택 도입
- 온프레미스 전문 업체 vs EKS Anywhere
https://www.replicated.com/
Next Steps
신규 AI 기능 배포 및 GPU integration
- ex, 액티브러닝, 유사 이미지 검색 등
Future Plans
완전 온프레미스 고객에 대한 지원
서비스 디커플링 EKS로 마이그레이션
온프레미스
리팩토링
클러스터 배포 및
관리
후기
챌린징했지만 즐거웠던 모던 아키텍처 도입 시도
기존 설계를 보완할 새로운 기술 스택 학습 기회
감사합니다!
AI 공부, SW 개발 다 좋아하면?
쿠버네티스 및 AWS 고수라면?
지금 바로 Superb AI 부스로!
(추천인: 유용환)

ECS to EKS 마이그레이션 경험기 - 유용환(Superb AI) :: AWS Community Day Online 2021

  • 1.
    ECS to EKS마이그레이션 (feat. 하이브리드 아키텍처 구축기) 유용환 (Superb AI) 2021.10.23.
  • 2.
    유용환 yhyoo@superb-ai.com Software Engineer@ Superb AI - 서버사이드 - 인프라 관리 - 사내 MLOps
  • 3.
    Superb AI B2B SaaSStartup (ML data platform) Main product: Superb AI Suite
  • 4.
    목차 1. 배경 설명 2.개발기 3. 향후 계획
  • 5.
  • 6.
    기존 시스템 데이터 프라이버시in Suite - 서비스를 위해 고객 원본 데이터에 접근 - ex, 이미지 데이터 전처리 및 라벨링
  • 7.
    기존 시스템 데이터 프라이버시in Suite - 서비스를 위해 고객 원본 데이터에 접근 - ex, 이미지 데이터 전처리 및 라벨링 - 민감 데이터 활용에 대비한 시스템 보안 - ex, AWS 보안 인프라, SOC 2 compliance
  • 8.
    기존 시스템 <option 1>Superb AI 스토리지 <option 2> 고객사 클라우드 스토리지 thumbnails
  • 9.
    기존 시스템 <option 1>Superb AI 스토리지 <option 2> 고객사 클라우드 스토리지 thumbnails
  • 10.
    기존 시스템 <option 1>Superb AI 스토리지 <option 2> 고객사 클라우드 스토리지 thumbnails read-only
  • 11.
    k8s & EKS도입 배경 여러 고객사 니즈 - 더 강한 데이터 프라이버시에 대한 요청 원본 데이터는 온프레미스 환경에서 관리하고 싶어요 전처리된 이미지도 저희 서버에 저장할 수 없을까요? 신규 고객
  • 12.
    k8s & EKS도입 배경 여러 고객사 니즈 - 더 강한 데이터 프라이버시에 대한 요청 XX가 잘 안돼요. XX가 불편해요. 기존 SaaS 고객 신규 고객 XX 언제 나와요? XX 만들어주세요. 원본 데이터는 온프레미스 환경에서 관리하고 싶어요 전처리된 이미지도 저희 서버에 저장할 수 없을까요?
  • 13.
    k8s & EKS도입 배경 현실, 운영 비용 - 제한된 인력, 완전 설치형 서비스는 비현실적
  • 14.
    k8s & EKS도입 배경 현실, 운영 비용 - 제한된 인력, 완전 설치형 서비스는 비현실적 - ECS로는 양쪽에 배포 및 유지보수가 어려움
  • 15.
    k8s & EKS도입 배경 대책은? - Go Hybrid - 데이터 관리 서비스는 cloud 및 온프레미스 - 기타 서비스는 cloud only 공통 서비스 (프로젝트 관리, 라벨링, ...) 고객 B: Superb AI가 데이터까지 관리 고객 A: 온프레미스로 직접 데이터 관리
  • 16.
    k8s & EKS도입 배경 대책은? - Go Hybrid - 데이터 관리 서비스는 cloud 및 온프레미스 - 기타 서비스는 cloud only - Use k8s (feat. EKS 마이그레이션) - 온프레미스 운영 비용 최소화 (일원화) 고객 B: Superb AI가 데이터까지 관리 데이터 관리 서비스 분리 고객 A: 온프레미스로 직접 데이터 관리
  • 17.
    시스템 재설계 고객군 1:SaaS 고객군 2: Hybrid https://towardsdatascience.com/data-software-as-a-service-the-case-for-a-hybrid-deployment-architecture-c696ceaf9ef1
  • 18.
    시스템 재설계 고객군 1:SaaS 고객군 2: Hybrid https://towardsdatascience.com/data-software-as-a-service-the-case-for-a-hybrid-deployment-architecture-c696ceaf9ef1
  • 19.
  • 20.
    새로운 시스템 고객군 1:SaaS 고객군 2: Hybrid
  • 21.
    새로운 시스템 k8s 스택도입 - 클러스터 모니터링 - 패키징 및 GitOps 기존 인프라 리팩토링 - 데이터 스토리지 - 큐 (queue) - FaaS 오케스트레이션
  • 22.
    데이터 스토리지 기존 인프라리팩토링 SaaS On-Premise AWS S3 MinIO PUT, GET, DELETE
  • 23.
    기존 인프라 리팩토링 큐(queue) SaaS On-Premise AWS SQS RabbitMQ EVENT NOTIFICATION (PUT OBJECT) AWS S3 MinIO
  • 24.
    기존 인프라 리팩토링 FaaS오케스트레이션 SaaS On-Premise AWS Step Functions Kubernetes-based Event Driven Autoscaler TRIGGER AWS SQS RabbitMQ (1) bucket event notification (2) API server’s request
  • 25.
  • 26.
  • 27.
  • 28.
    Next Steps 배포 및관리를 위한 스택 도입 - 온프레미스 전문 업체 vs EKS Anywhere https://www.replicated.com/
  • 29.
    Next Steps 신규 AI기능 배포 및 GPU integration - ex, 액티브러닝, 유사 이미지 검색 등
  • 30.
    Future Plans 완전 온프레미스고객에 대한 지원 서비스 디커플링 EKS로 마이그레이션 온프레미스 리팩토링 클러스터 배포 및 관리
  • 31.
    후기 챌린징했지만 즐거웠던 모던아키텍처 도입 시도 기존 설계를 보완할 새로운 기술 스택 학습 기회
  • 32.
    감사합니다! AI 공부, SW개발 다 좋아하면? 쿠버네티스 및 AWS 고수라면? 지금 바로 Superb AI 부스로! (추천인: 유용환)