반응형
1. 분산 시스템과 리눅스 운영체제
1) 분산 시스템의 기본적 구조
어플리케이션이 네트워크로 연결된 여러 노드에서 수행됨
컴퓨팅 자원 관리자와 실제 데이터를 처리하는 워커 노드로 존재함
2) 분산 시스템의 원리
전체 작업(job)을 task 단위로 쪼개 여러 worker에 분배
worker는 자신에게 할당된 task를 수행 후 결과 전송
RPC(Remote Procedure Call)을 통한 노드간 통신
Server/Client간 원격 함수 호출
3) 리눅스 운영체제
Linux 특징
- 다중 사용자, 다중 프로세스
- 쉘 명령 기반 동작
- 우수한 네트워킹
- 분산 시스템에 활용 용이
2. 가상화 기술
1) 가상화 개념
애플리케이션, 서버, 스토리지 및 네트워크 등의 컴퓨팅 기술을 추상화하여 요청한 만큼의 리소스를 서비스 형태로 제공해주는 기술
가상화 기술의 종류
- 자원 가상화
- 운영체제 가상화
2) 자원 가상화
데이터스토리지, 연산 장치, 네트워크 드으의 컴퓨팅 리소스 자원을 가상화하여 사용자가 필요한 만큼 제공해 주는 기술
Private, Public, Hybrid Cloud 형태가있음
클라우드 컴퓨팅의 기술 요소
IaaS, PaaS, SaaS
자원 가상화와 분산 시스템
- 클라우드 기술은 분산시스템 구축의 많은 관리 비용 절감 가능
- 데이터 발생량에 ㄸ다른 컴퓨팅 자원의 탄력적 확장이 용이함
분산 시스템 관점에서 본 클라우드 시스템의 효용성
데이터 규모에 따라 탄력적인 자원 사용
3) 운영체제 가상화
운영체제의 커널이 하나의 상요자 공간 인스턴스가 아닌, 여러 개의 격리된 사용자 공간 인스턴스를 갖출 수 있도록 하는 가상화 기술
컨테이너
: 애플리케이션이 동작하기 위해 필요한 모든 환경적 요소를 패키지화하여 격리하는 기술
도커
: Go언어로 작성된 리눅스 컨테이너 기반 오픈소스 가상화 플랫폼
- 이미지 : 라이브러리 및 package의 template. 읽기 전용
- 레지스트리 : 도커 이미지를 저장하는 이미지 저장소
- 컨테이너 : 이미지가 로딩되어 메모리에 적재된 상태
운영 체제 가상화(컨테이너)와 자원 가상화(wirtual machine)의 차이
- VM은 가상머신을 생성하기 위해 하이퍼바이저가 필요함
- 컨테이너는 호스트 컴퓨터의 OS 커널을 공유하지만, VM은 Guest OS를 따로둠
운영 체제 가상화와 분산 시스템의 관계
각 분산된 노드의 환경이 달라도, 운영 체제 격리를 통ㅎ래 일관된 환경에서 분산 시스템 구축 및 운영이 가능함
참고
Geksforgeks 독점 시스템에서 원격 프로세스 호출이란?
728x90
반응형
'Data > Data Engineering' 카테고리의 다른 글
[Streaming Data 실시간 데이터 파이프라인 아키텍처] 1, 2장 요약 (0) | 2024.03.21 |
---|---|
빅데이터 프레임워크 3주차 - 빅데이터 수집 기술 (0) | 2024.03.21 |
데이터 중심 애플리케이션 설계 : 1장 신뢰할 수 있고 확장 가능하며 유지보수하기 쉬운 애플리케이션 (0) | 2024.03.21 |
[Snowflake] Snowflake-python 연결 (Snowflake를 Python으로 사용하는 방법. Snowflake Connector for Python) (0) | 2024.03.06 |
[Snowflake] S3 Load Data (0) | 2024.03.06 |