본문 바로가기

Cloud solutions

#003) Samsung health cloud solution (Data 솔루션 with AWS)

Sacling Mobile Application Dveloment on AWS by Samsung Health 

 


Samsung Heath

삼성전자의 맞춤형 건강관리 및 헬스 서비스를 지원하는 앱&서비스 이다. 매일 사용자 스스로의 건겅 관련 활동을 기록하고 이에 맞는 분석과 데이터 자료를 건강 개선을 위해 활용 할 수 있다. 휴대폰과 스마트 워치에 연동이 가능하다.

 

기존 각 머신에 RPM 파일들을 구축하고 클러스트에 구축하는 클라우드 방식에서
다양한 서비스와 기능들이 추구되면서 효율적으로 운영하고자 변화 추구

전 세계 사용자로부터 오는 매 초 35,000 여개의 요청을 처리하기 위해선 

유연하고 강력한 Scailing 기능이 필수적



VPC link 에서 트래픽을 받아 API GATEWAY 내부 프로세스로 연결시킴

VPC link - API Gateway 와 프라이빗 VPC 내 리소스가 안전하고 빠르게 연결

API Gateway  - 모든 서버의 요청을 단일 지점을 거쳐서 처리하도록 도와줌

NLB 로 트래픽을 받아 EKS 쿠버네티스 서비스로 전달 함

NLB- OSI 모델의 4번째 계층에서 작동하며 초당 수백만개의 요청 처리 가능

과거 각 머신에 RPM 파일들을 구축하고 클러스트에 구축하는 방식에서
다양한 서비스와 기능들이 추구되면서 효율적으로 운영하고자 쿠버네티스 
완전 Managed 서비스인 EKS 컨테이너를 사용

EKS- AWS 에서 쿠버네티스를 손쉽게 운영할 수 있도록 지원하는 관리형 서비스

포트 포워딩으로 다양한 포트들을 EKS 노드에 연결 

하나의 포트만 지원하는 EKS load balaner 서비스 노드는 
사용이 어려웠고 하나의 NLB 로 부터오는 트래픽을 
다양한 포트를 연결 시키기위해 각 APP 의 노트포트를 정의시켜서
NLB 의 타겟그룹을 이용해 연결 시킴

Prometheus 를 이용해 어플리케이션 모니터링
CloudWatch 를 이용해 인프라 스트럭처 모니터링
Grafana 로 모든 모니터링을 시각화

Prometheus - 쿠버네티스의 메인 모니터링 시스템으로 많이 사용

Grafana- 프로메테우스나 다른 데이터를 모니터링, 시각화

Fleuntd ( 로그 수집기) , Elasticsearch  Cloudwatch logs로 로그 관리
* 각 클러스터 노드에 DeamonSet 으로 설치된 Fleuntd 에이전트가 
Cloudwatch logs 에 로그를 보내고 이를 Elastic search 에 저장
Kibana 를 이용해 로그를 모니터링

Cloudwatch - 로그 모니터링, 운영 데이터를 수집해 시각화

Elasticsearch - 클러스터를 관리하고 데이터를 인덱싱, 분석

Kibana- Elasticsearch 존재하는 데이터를 쉽게 탐색하고 분석



AWS X-Ray를 이용해 어플리케이션 퍼포먼스 관리

AWS X-Ray- 서비스 맵을 통해 어플리케이션 서비스와 리소스 간의 관계를 실시간으로 확인



멀티 포트 기능과 쿠버네티스를 이용해서 스케일링 기능을 최대화 하고
사용자의 다양한 정보를 반영해주는 로그들을 효율적으로 관리하고 모니터링하는 방법을 구축

 

refrence - https://www.youtube.com/watch?v=S-JSSZZaa94&list=PLhr1KZpdzukdeX8mQ2qO73bg6UKQHYsHb&index=168