Infra 용어

'개발자도 궁금한 IT 인프라'책에 나온 용어를 정리했습니다.

서버란 무엇인가?

PC와 구조는 동일하나 CPU나 메모리, 디스크를 더많이 장착해 높은 성능과 안정성을 가진 장비

3teer로 구성

클라이언트- 웹 서버버 - 데이터베이스 서버

메인프레임

애플리케이션, 장치를 다수의 사람에게 동시에 지원할수 있는 컴퓨터.

동시성 제공을 위해 필요요

CPU 스케줄링이 핵심이다. : 작업들의 큐와 세마포어 를 관리하여 특정 시점에서 하나만 처리하도록 해야함 또한 공유메모리 자원을 통해 데이터를 저장하고 사용하다보니 메모리 관리도 필요하다.

동시처리를 위한 속성 : ACID 원일고지

A : 원자성 : 트랙잭션이 완결된 처리

C :일관성 : 데이터를 일관된 상태로 유지

I : 고립성 : 동시에 실행되는 다른 트랜잭션이 무관하게 실행

D: 지성 : 트랜잭션결과가 영구히 지속되야함

CPU 큐잉: 어떤 명령이 들어왔을때 즉시 처리할 CPU가 없어 가용한 CPU가 생길떄까지 대기하는 현상

CF( coupling Facility):

여러 장비를 논리적으로 하나의 장비처럼 구성하는데 각각의 노들을 연결을 위해 CTC (채널-투-채널)링크를 사용하여 안정성 및 신뢰성을 높인다.

RHCS:

복수의 노드(서버) 가 있을 때 하나느 ㄴ프라이머리 역할을, 나머지는 세컨더리 역할을 부여하고 프라이머리가 문제 있을시 센컨더리 노드로 절체하여 서비스 중단이 없도록 하는 것

스플릿 브레인(split Brain) :

클러스터로 묶인 복수의 노드가 동일한 자원에 대해 서로 자신이 프라이머리로 인식해 데이터정합성이 깨짐

SAM 파일:

DB에서 사용되는 파일이 아닌 파일

논리 파티셔닝 기술:

물리적인 서버 1대에 여러 논리적인 서버를 설치해 자원을 효율적으로 사용하는데 CPU 메모리, 입출력 작원들을 분할해 사용

(가상화기술) LPAR ,DPAR:

CPU가 1개인 서버를 소프트웨어로 쪼개 마치 여러개 CPU를 갖고있는거처럼 보이는 기술

스토리지

서버내 디스크를 확장하여 빅데이터를 수용하기 위해 전용 디스크 박스를 통해 고속으로 처리할 수 있는 시스템

DAS

서버와 스토리지가 직결로 연결된 방식

SAN: SAN 스위치를 통해 서버와 스토리지 연결 . 성능이나 확장성 보장

NAS: 이더넷 네트워크를 통해 서버와 스토리지 각각 연결되 통신

스토리지 검증방법

1. 벤치마크 테스트(BMT) : 동일한 조건에서 기능과 성능 가용성 테스트

2. POC 검증(제품 선정보다는 제품 기능 검증이 주된 목적)

미러링 방식과 스트라이핑 방식 차이:

미러링은 데이터를 복제해 저장하는데 이 데이터를 두곳에밖에 저장을 못한다. 반면 스트라이핑은 데이터 복제가 아닌 분산 저장하는 방식이다. 그러다보니 읽기 성능이 우수하다. 또한 용량도 필요한 만큼 쓰면 된다. 단점은 디스크 하나만 망가져도 복구 불가. 요즘은 미러링과 스트라이핑을 혼합하는 방식이다. RAID5 라고 해서 패리티 기법을 통해 디스크를 복구

핫스페어

디스크 고장시, 리빌딩을 통해 원래 상태로 복구

스토리지 설계방법: 가용성과 성능을 위해 RAID를 1+0으로 설계하고, 가용성과 용량을 위해 5를 선택 특히 선응르 필요로 하는 데이터를 저장하는 스토리지는 RAID를 1+0으로 구성하고 개발이나 테스트 데이터를 저장하는 스토리지는 RAID5로 구성

L4 스위치가 필요한 이유

대량의 트래픽을 처리하기 위해 시스템의 서비스 상태를 모니터링하고 로드밸런싱을 수행

로드밸런싱 방법3가지

  1. 라운드로빈방식: 4대의 서버가 있으면 4321 1234 순으로 세션 연결 최소연결과

  2. 응답 방식: 응답시간이 빠른 서버에 세션을 연결해주는 방식

  3. hash방식: 가장많이 사용하는 방법으로 클라이언트의 ip,port 정보를 가지고 hash key를 만들어 연결해주는 방법

L7스위치 역할 :

URL, Cookie,등 어플리케이션 정보를 바탕으로 로드밸런싱,웹 가속, SSL 가속 기능을 제공 웹 압축기능 , SSL 가속기능 : 데이터를 암 복호화를 처리

가상화 정의:

물리 장치의 리소스를 분할하거나 통합해 추상화된 논리적인 리소스로 가상화 장치를 만들고, 사용자는 가상화장치를 물리 장치처럼 사용하는 것 이때 가상화 장치가 완전한 하나의 하드웨어처럼 수행

가상화 방식

  1. 시간분할기법: ex)TDMA 시분할 다중접속이라고 해서 여러명의 가입자가 하나의 주파수를 시간을 분할해 공유해 사용하는 통신방식

  2. 집합방식: ex)MLAG : 여러개 자원을 하나로 묶어 물리적인 용량과 성능을 향상시키고, 하나의 논리 장치로 관리로 한서버에서 2개의 스위치에 링크를 각각 연결하고, LACP 라는 프로토콜 이용해 하나의 스위치와 하나의 인터페이스 통신하는 것처럼 인식.

  3. 에뮬레이션: 자원절연: 고가용성 보장을 위해 물리장치에 장애가 나도 논리 장치를 이용하는 이용하는 가상 시스템

하이퍼바이저

여러개 VM(가상머신)이 한정된 하드웨어 자원을 나눠쓸 수 있도록 하는것 하이퍼바이저는 운영체제와 합쳐져 있는 형태도 있고 분리된 형태도 있다. 합쳐져 있는 형태를 타입1 , 분리된 형태를 타입2라 한다. 전가상화 : 하이퍼바이저가 호스트 운영체제에서 모든 일을 처리하는 것 ex) VMware, vsphere 반가상화 : 일부역할을 VM의 도움을 받아 처리한다. ex) Xen, Dom()

컨테이너:

VM과 ,게스트운영체제가 없는 가상화 기술. 특히 PasS가 대중화되면서 주목받고 있다. 컨테이너는 하나의 프로세스로 기동한다. VM에 대한 하드웨어초기화 작업이 필요없기 때문에 오버헤드도 존재하지 않다. 그러나 리눅스 운영체외 동작하지 않고, 설치할 수 없다.

오버커밋:

식당 테이블 의자가10개인데, 점심시간에 30명이 식사를 하기로 예약되어있는 것처럼 물리적인 용량 한계를넘어 할당하는 개념. 오버커밋의 비율이 높으면 자원 경합에 의한 성능 지연현상이 발생하게됨.

클라우드:

인터넷 기반의 웹소프트웨어로 서비스를 제공하고, 실시간 확장성을 보장하며, 사용한 만큼 비용을 부과

오토스케일링:

평상시 트래픽에 맞는 인프라 자원을 할당하여 사용하다가 임계치 이상의 트래픽 증가시, 그 수요에 맞춰 인프라 자원을 추가 할당하여 대응 JVM은 객체를 저장하는 힙 메모리를 실시간으로 늘리기 어려워 스케일 업 방식에서는 불가능하다.

오픈스택

서비스의 집합체다. 노바는 컴퓨터 자원풀을 관리하고 자동화. KVM,Vmware 등 하이퍼바이저 기술이나 컨테이너 제어. 수평적 확장을 하기 위해 설계된 개념으로 ,레거시 시스템과 서드파티 제품들과 연동하는 기능이 있다. 뉴트론: 수많은 네트워킹 기술을 소프트웨어 기반으로 구현했다.

Reference

Last updated