학습하기
스토리지 기술, 다중화, 가용성 향상 기술
스토리지 기술 및 다중화
스토리지 시스템의 요구사항
요구사항의 다변화
- 단순 저장이상의 기능이 요구됨
- 대용량 및 고속 처리, 효율적인 데이터 공유
- 확장성, 사용성, 유연성
스토리지 논리적 접근 단위
- 파일 : 전통적 파일 단위
- 블록 : 하드웨어와 바로 맵핑되는 최소의 데이터 단위
- 데이터 세트 : 테이블, 단락, 레코드
- 오브젝트 : 데이터가 객체 단위로 구조화되는 스토리지
스토리지 다중화
- 디스크를 논리적으로 묶어 성능과 가용성, 고용량을 처리
RAID
- 다수의 디스크를 병렬적으로 구동하여 시스템의 신뢰성과 성능을 향상시키는 기법
- 중복 데이터를 분산 저장하여 장애 복구 가능
- 병렬 처리로 성능향샹
NAS
- 스위치를 통해 데이터를 송수신하는 저장장치
- 전용 파일 서버
- DB와 같은 다량의 I/O가 발생할 경우 지연율이 증가하여 성능저하
SAN
- Storage Area Network
- 저장장치와 서버를 광케이블으로 연결한 고속 데이터 네트워크
- NAS와 달리 고속의 I/O 채널 제공
스토리지 가상화
가상화의 등장 배경
- RAID, NAS, SAN 등의 유지관리에 많은 인력과 비용 필요
- 물리적 스토리지와 서버 사이에 가상화 계층을 추가
스토리지 가상화 구조
- 여러 스토리지를 단일 리소스로 인식하여 프로비저닝
- 가용성 확보 및 무중단 서비스 가능
스토리지 가상화의 장점
- 단편화 현상이 줄어들어 활용률이 높아짐
- I/O 성능향상, 가용성 증가
- 관리가 용이
스토리지 가상화 기술 (참고만)
- 디스크 컨트롤러 가상화
- 네트워크 기반 스토리지 블록 가상화
- 소프트웨어 정의 스토리지
가용성 향상 기술
가용성
- 시스템을 계속해서 가동시킬 수 있는 능력
- 클라우드 벤더는 SLA를 통해 가용성을 보장함
다중화
다중화의 정의
- 가용성을 향상시키키 위해 다중화 기술이 요구됨
- 장애 발생 시 즉시 예비장비로 페일오버(FailOver)함
- 서버, 스토리지, 로드밸런서, 네트워크 장치 등을 다중화 함
다중화의 구성
- 핫 스탠바이 : 항상 켜놓고 대기하여 즉시 사용가능
- 웜 스탠바이 : 잠자기 모드
- 콜드 스탠바이 : 전원을 끈 상태로 대기
헬스체크
- 감시 대상인 리소스가 정상 상태에 있는지 판단하는 기법
- 핑을 보내서 신호전달 여부 확인
- ZooKeeper 등의 툴을 활용하기도 함
로드 밸런싱
- 클라이언트와 서버 사이에 위치하여 트래픽을 분산하는 기술
오토 스케일
- 특정 리소스의 임계값을 설정하고 해당 임계값 초과시 수평적 확장함
- 부하가 줄면 확장한 서버를 회수
실습
Azure DB
SQL 서버를 클라우드에 배포하고
DBeaver 클라이언트로 로컬에서 접속하여
쇼핑몰 프로젝트를 위한 간단한 스키마를 생성했다.