INTRO
이 글은 2023 오픈소스 컨트리뷰션에서 Backend.AI 의 번외코스1 (머신러닝 분산처리 프레임워크 동작 이해하기) 에 대한 리뷰 게시글입니다.
링크를 두개를 제공받았는데요
- https://docs.backend.ai/en/latest/concepts/key-concepts.html
- https://docs.backend.ai/en/latest/user-api/intro.html
하단의 링크를 눌러보니 다음과 같은 화면이 뜬다
상단의 링크를 눌러보면 다음과 같은 페이지가 뜬다.
아래의 페이지는 KeyConcept로써, 머신러닝 분산 프레임워크를 만든 개요? 정도로 보면 되는것같다.
세부내용 요약하기
1. Key Concepts
2. Manager, Agent(흰색)
Manager
- 사용자 요청 수락, 세션 생성/파기, 코드요청을 라우팅 하는 담당
Agent
- 개별 서버에 설치되어있는
Daemon
Kernel Container
의 수명 주기 관리- 세션의 입출력 처리
- 서버의 자원 및 상태를 Manager 에게 전달
- → Manager는 확인하고, 유휴 서버에
Session
을 할당하여 부하를 분산시킴
3. Computing Session, Kernel(찐하늘, 연하늘)
- manager server(https, 443)은 퍼블릭하게 노출되어야 한다
- manager, agent, DB/Storage 는 프라이빗 하되, 서로의 트래픽은 알고있어야 함(내부망으로 연결)
- 대용량 빅데이터처리는 Infiniband, RoCE 등을 사용해서 스토리지용 네트워크를 분리시켜야함
4. DB(다홍)
Redis, PostgreSQL
- 서버의
agent
,session
이 계속 연결되고있는지 - keypair, resource사용량을 저장
5. Configuration Managent(보라)
- cluster level 수준의 구성은 Etcd에 저장되고, 서비스 검색에 사용한다
- 새로운 agent가 부팅되면 Etcd를 통해서 Cluster Manager 에 등록
- HA를 구성하기 위해서 3개이상의 노드로 구성된 Etcd를 사용하는걸 추천
6. Virtual Folder(주황)
- NFS(Network File System) 을 ‘가상폴더’ 로 추상화 → 개별 사용자에게 개인파일저장소 처럼 제공
- 가상 폴더는 지정된 스토리지 아래에 생성되서, 폴더 내용에 액세스 할수 있도록 컴퓨팅 세션에 마운트
Outro: Etcd가 저기에 왜있지? (내생각주의)
해당 아키텍쳐를 보면서 궁금한게 몇가지 생겼다.
우선, 이전 게시글에서 Openstack으로 서버를 구성하지않을까? 생각했었는데, 아키텍쳐를 보니 On-premise 물리장비에 Docker기반으로 돌리지않을까… 생각 하고 있다.
평소에도 분산데이터 환경에 대해서 관심이 있었는데, 내가 가장 관심을 가진건 Etcd다.
‘Etcd는 쿠버네티스에서 쓰는거 아닌가? 저게 왜 여기있지?’ 라는 생각이 들어서 쿠버네티스 톡방에 여쭤봤다.
카톡방에서 잠깐 나온 이야기로만 생각해보면, 쿼럼(장족의 수, 라고 표현하는데 여기서는 클러스터를 구성하는 최소 노드의 갯수라고 생각) 을 갖출수 있는 시스템이라면, 어떤거라도 상관없지않나..? 싶었다.
ETCD는 RAFT알고리즘을 지원해주니, 리더/팔로워 구성할때 Etcd를 사용했다는 것에 의의가 있다는것같은데,그렇다면 굳이 Etcd를 사용할 필요없이 Zookeeper 를 사용해도 되지 않을까? 라는 생각이 있다.
'외부활동' 카테고리의 다른 글
[구글 클라우드 쿠버네티스 스터디잼 중급] Introductions to containers and kubernetes (0) | 2023.06.22 |
---|---|
[구글 클라우드 쿠버네티스 스터디잼 중급] 하다가 퀵랩에 문의한썰: 1달 무료구독 안생김 (0) | 2023.06.22 |
[오픈소스 컨트리뷰션] 코스1. Backend.AI 써보고 경험 공유하기 (0) | 2023.06.21 |
[구글 클라우드 쿠버네티스 스터디잼 중급] Introduction to Google Cloud (0) | 2023.06.15 |
[구글 클라우드 쿠버네티스 스터디잼 중급] Introduction to Google Cloud 챕터 4. Cloud Shell 코드 편집기 살펴보기 에러해결 (0) | 2023.06.03 |