[인프라 엔지니어의 교과서] 2장 서버

버버니야·2022년 3월 21일
0

5. 서버의 종류

랙 마운트형과 타워형 서버의 차이

서버의 형태에는 '랙 마운트형 서버'와 '타워형 서버'가 있다.

랙 마운트형 서버는 데이터 센터나 서버 룸에 설치된 랙 안에 들어간다.
타워형 서버는 사내 서버룸에 설치되거나 사무실 또는 점포 등에도 설치된다.

랙 마운트형 서버는 19인치 랙에 수용하는 것을 전제로한다.
19인치 랙에 탑재하는 기긱 1U, 2U처럼 유닛 단위로 사이즈가 정해져 있다.
1U는 높이가 1.75인치이다.
엔트리 서버는 1U 사이즈가 많지만 미들레인지 서버 이상은 탑재할 수 있는 부품이 늘어나므로 2U 사이즈 이상인 서버가 많다.

서버는 냉방과 소음을 고려해서 설치 장소를 골라야 한다.

엔트리, 미들레인지, 하이엔드 서버

서버는 용도에 따라 '엔트리, 미들레인지, 하이엔드' 서버를 구분해서 사용한다.

엔트리 서버

수십만 엔에 이르며, 주로 웹 서버나 애플리케이션 서버에 이용된다.
보통 소켓 단위로 1 ~ 2개의 CPU를 탑재할 수 있는 서버를 가리킨다.

미들레인지 서버

수백만 엔에 이르며, 주로 데이터베이스 서버나 기간계 서버에서 이용된다.
대체로 소켓 단위로 4개 이상의 CPU를 탑재할 수 있으며, 하이엔드 서버에 속하지 않는 서버를 가리킨다. 여기서 기간계 시스템(미션 크리티컬 시스템, 엔터프라이즈 시스템, 백본 시스템등)이란 기간 업무 시스템이라고도 불리며, 기업 경영을 지속하는 데 핵심이 되는 재무관리, 업무관리, 생산관리 등을 담당하는 시스템이다.

미션 크리티컬 시스템 : 사업이나 조직의 생존에 필수적인 시스템
백본 시스템 : 기업 전산망의 근가이 되는 네트워크를 연결시켜주는 고속 통신망

하이엔드 서버

수천만 엔에서 수억 엔에 이르며, 주로 데이터베이스 서버나 기간계 서버에서 이용된다.
대체로 소켓 단위로 수십 개 이상의 CPU를 탑재할 수 있는 서버를 가리킨다.

IA서버

IA 서버란 인텔이나 AMD 등 인텔 호환 CPU를 탑재하고 일반 컴퓨터와 같은 아키텍쳐를 기반으로 해 만들어진 서버.
IA 서버를 선택할 때 고려해야하는 사항들

  • 데이터 센터의 랙에 서버가 제대로 장착되는가? 랙 마운트 레일이 랙 크기에 맞지 않는 등의 이유로 랙에 서버가 장착되지 않으면 랙에 선반을 설치해서 기기를 선반 위에 직접 놓게 된다.
  • 설치할 수 있는 부품 수
  • 장애 발생 시 지원 체계
  • 원격 제어 기능
  • 납기

엔터프라이즈 서버

시스템의 핵심인 기간계에 사용되는 기기는 비싸다
액세스가 대량으로 일어나도 견딜 수 있도록 수용량이 크고 내구성이 높은 기기가 선정되기 때문이다.
기간계에 사용되는 서버를 가리켜 '엔터프라이즈 서버'라고 부른다.

서버와 일반 컴퓨터의 차이
서버는 일반 컴퓨터와 마찬가지로 메인보드, CPU, 메모리, 디스크 등의 부품으로 구성된다.
서버는 24시간, 365일 가동되는 것을 전제로 하기 때문에 하드웨어가 잘 고낭나지 않고, 고장나더라도 시스템이 멈추지 않게 설계되어 있다. 일반 컴퓨터와 비교하면 고장이 잘 나지 않는 점, 쥬요 부품을 이중화하여 부품에 고장이 발생해도 서비스를 멈추지 않은 채 교환할 수 있는 점, 하드웨어 고장 시 업체의 지원이 충실하다는 점. 또한 서버는 일반 컴퓨터보다 더 많은 메모리와 하드디스크 등의 하드웨어 자원을 장착할 수 있다는 것이 많다.
또 서버에는 서버용 운영체제를 설치할 필요가 있따.

6. 서버 선정

서버의 조건

서버의 사양을 결정할 때 필요한 하드웨어 자원의 사용량을 정하고 나서 CPU, 메모리, 디스크, NIC 포트 수 등을 결정한다. 또한 부가적인 요소로서 RAID 유무, PSU 이중화, 보수 연수, 보수 수준, 확장성, 물리 사이즈와 중량 등도 함께 결정한다.

항목선택지
CPU주파수, 개수(소켓 수), 코어 수, 캐시 용량, 가상화 지원 등
메모리용량, 전송 속도, 매수 등
디스크용량, 회전 수, 하드디스크 또는 SSD 등
RAIDRAID 1/5/6/10/50/60 등
NIC2포트, 4포트, 8포트 등
PSU총 와트 수, 비이중화, 이중화
보증 기간보증 기간
지원 수준4시간 온사이트, 평일익영업일 지원, 24시간, 365일 지원 등
확장성메모리 소켓 수, PCI 슬롯 수, 디스크 탑재 수 등
물리적인 사이즈1U, 2U, 4U 등
무게경량, 초중량 등

RAID 1 : 디스크 미러링
RAID 5 : 패리티를 순환시키는 것 없이 각 어레이에 접근
RAID 6 : 각 디스크에 패리티 정보가 두 번 독립적으로 분산
RAID 10 : 미러링 및 스트라이핑

서버 사양 결정 방법

서버 사양을 결정하는 방법에는 세 가지 사고 방식이 있다.
1. 실제 환경을 시험적으로 구축해 측정 결과를 보고 판단한다.
2. 임시로 결정한 서버 사양의 기기를 현장에 투입해 실제 하드웨어 자원의 이용 상황을 측정한 다음, 서버와 서버의 부품을 늘리거나 줄인다.
3. 소거법으로 사양을 좁혀 나간다.

기간계라고 불리는 시스템의 중핵을 담당하는 시스템이나 중요한 시스템일 때는 1번

온라인 게임처럼 실제로 공개해보지 않아서 액세스 양이 판명되지 않을 때는 2번

어느 정도, 서비스의 성질이 정해져 있을 때는 3번 방식

스케일 아웃과 스케일 업

서버의 수용량을 늘리는 접근 방식으로 '스케일 아웃'과 '스케일 업'이 있다.

스케일 아웃은 성능이 부족해지면 서버의 수를 늘려 수용량을 늘리는 방법이다.

스케일 업은 성능이 부족해지면 메모리 증설 등 부품을 추가/교환하거나 상위 기종으로 교체헤 서버의 성능을 높인다.

업체를 선정한다.

서버 사양을 결정하고 나면, 각 서버 업체로부터 견적을 받고 가격과 서비스를 종합적으로 판단해 업체를 선정한다.

7. CPU

CPU는 연산을 대량으로 빠르게 처리하는 장치로, 사람으로 말하면 두뇌에 해당한다.

성능과 발열, 소비 전력

CPU는 연산 능력이 높을 수록 고성능 CPU
이전에는 동작 주파수를 올려 연산 능력을 올렸지만, CPU의 연산 능력이 높아질수록 발열과 소비 전력도 커지므로 CPU는 성능을 높이면서도 발열과 소비 전력은 엊게하는 방향으로 진화.

최근에는 동작 주파수를 어느 정도 수준으로 억제하는 대신, 멀티코어나 멀티 스레드와 같은 방식을 이용해 하나의 CPU로 동시에 처리할 수 있는 연산 개수를 늘렸다.

CPU 용어

소켓 수 - CPU의 개수

코어 수 - CPU의 주요 계산 부분, 복수의 코어가 있는 것을 '멀티코어'라고 한다.

스레드 수 - 하나의 코어에서 처리할 수 있는 수 (하이퍼스레딩 기능이 있으면 코어 수가 배가 됨)

동작 주파수 - 1초당 클럭 수, 동작 주파수가 높을 수록 처리 속도가 빨라지지만, 전력 효율이 나빠지고 발열도 증가한다.

캐시 - CPU와 메인 메모리 사이에 캐시 메모리라는 빠른 속도의 메모리가 있다. 캐시 메모리에 자주 액세스하는 데이터를 저장해서 상대적으로 느린 메인 메모리의 액세스를 줄여 CPU의 처리 성능을 높인다.

하이퍼스레딩 - 하나의 코어로 두 개의 처리를 실행할 수 있는 기술

터보부스트 - CPU의 속도를 자동으로 기준 클럭보다 빠르게 동작시키는 기능, 전혀 일을 하지 않는 코어가 있을 때, 일을 하고 있는 코어를 클럭 업 시키는 기술

CPU 선정의 포인트

성능

요구하는 연산 능력을 만족하나?

가격

가격이 타당한가? CPU는 종류에 따라 가격이 천차만별

사용할 소프트웨어의 라이선스 체계

CPU의 코어 수와 소켓 수로 가격이 달라지는 소프트웨어가 있으므로, 비용을 줄이려면 CPU의 종류와 개수를 조정한다.

소비 전력

저전력 CPU는 동작 클럭을 떨어뜨려 소비 전력을 절감하는 CPU다.

8. 메모리

메모리는 단기 기억 영역이라고 불리며, 일시적으로 데이터를 기억할 수 있지만 전원이 공급되지 않으면 데이터가 모두 지워진다. 메모리에서 가장 중요한 요소는 메모리 용량의 크기지만 서버용 메모리에서는 용량 이외에도 내장애성, 성능, 저전력 등이 중시된다.

성능

메모리의 속도는 메모리 자체의 속도와, CPU와 각종 버스 간의 데이터 전송폭을 모두 고려한다. 보통 DDR3메모리는 'DDR3-1600'처럼 표기한다.
1600에 해당하는 부분이 데이터 전송 속도 (1600MHz)

메모리 용어

슬롯

메모리는 메인보드에 꽂는다. 슬롯은 메인보드에 있는 메모리 삽입구를 말한다.
일반 컴퓨터의 메모리 슬롯은 보통 몇 개 정도지만, 최근에는 1U 서버에서도 수십 개나 되는 슬롯이 있는 서버가 등장했다.

ECC 메모리

메모리 고장으로 비트 반전 오류가 발생했을 때, 자동으로 보정, 감지할 수 있또록 ECC(오류 보정 부호)라고 불리는 패리티 정보가 추가된 메모리

일반적으로 ECC 메모리와 비 ECC 메모리를 섞어서 사용할 수 없지만, 서버에 따라서는 BIOS에서 ECC 기능을 끄고 ECC 메모리와 비 ECC 메모리를 섞어서 사용할 수 있는 서버도 있다.

채널

CPU와 메인보드의 칩셋이 복수의 채널을 지원하면, 채널별로 같은 종류의 메모리를 탑재해 데이터 폭을 넓히고 성능을 높일 수 있다.
다중 채널을 실현할 때 각 프로세서의 메모리 구성은 동일해야 한다는 규정이 있다.

랭크

메모리 컨트롤러가 메모릐의 DRAM에서 데이터를 입출력하는 단위를 가리켜 '랭크'라고 부른다. 하나의 랭크는 64bit 단위로 입출력한다. 랭크에는 싱글 랭크(1R), 듀얼랭크(2R), 쿼드 랭크(4R)가 있다.

메모리는 DRAM 칩의 조합으로 구성된다. 싱글 랭크 메모리에서는 하나의 메모리에 64bit의 DRAM 칩이 탑재되어 있다. 서버에 메모리를 삽입할 때 랭크의 총 사용 수가 많아지게 조합하면 액세스 성능이 향상된다. 메모리 컨트롤러가 다룰 수 있는 랭크 수에는 제한이 있다.

UDIMM

unbuffered DIMM으로 버퍼 없는 DIMM(Dual In-line Memory Module)이다.
일반 컴퓨터용 메모리의 대부분은 UDIMM이 이용된다.

RDIMM

Registered DIMM이라고 불리는 레지스터 DIMM이다.
클럭과 주소 등의 제어 신호를 버퍼 회로가 가져온다. 대용량 메모리나 안정적 운영이 필요한 서버용 메모리로 자주 사용된다.

LRDIMM

RDIMM을 더욱 발전시킨 방식으로, 메모리 컨트롤러와 메모리 칩 사이의 모든 통신이 버퍼 회로를 매개로 이루어지는 DIMM이다. 메모리 버스 전체의 부하를 줄여서, 메인보드에 장착 가능한 모듈 수를 늘리거나 모듈 하나당 메모리 칩 수를 늘릴 수 있다.

LV

저전압, 일반 메모리보다도 전압을 낮추어 저전력을 실현한 메모리

메모리 표기 방법

메모리 삽입 방법

  • 각 프로세서의 메모리 구성은 같아야만 한다.
  • RDIMM 메모리와 UDIMM 메모리는 섞어 쓸 수 없다.
  • 각 채널에 탑재하는 메모리는 같은 종류로 할 필요가 있다.
  • 저전압 메모리와 저전압이 아닌 메모리는 섞어서 쓸 수 있을 때가 많다.
  • 원칙적으로 ECC 메모리와 비 ECC 메로리는 섞어서 쓸 수 없다.

메모리 선정 포인트

용량

필요한 메모리 용량을 설치하도록 한다.

성능

메모리에 빠르게 액세스하도록 하려면 고속인 메모리를 선택하고 듀얼 채널 이상일 때는 가장 좋은 성능을 낼 수 있는 방식으로 삽입한다. 그리고 메모리 컨트롤러가 다룰 수 있는 최대 랭크 수까지 다 사용할 수 있도록한다. 다중 채널을 구현하면 성능이 향상된다.

확장성

메모리 슬롯의 수는 한정되어 있으므로, 앞으로 확장이 예상될 때는 비싸더라도 대용량 메모리를 선택.

9. 디스크의 종류

SATA 하드디스크

가격이 저렴하다. 하루 8시간 정도의 가동 용도로 사용.
가격적 이점으로 서버에서 일부러 내장애성을 희생하고 채용하기도 한다.

SAS 하드디스크

고속으로 동작하고 신뢰성이 높다. 24시간, 365일 가동할 용도로 사용한다.

FC 하드디스크

FC(Fibre Channel) 하드디스크는 초고속으로 동작하고 신뢰성이 높다. SAN 스토리지 등 엔터프라이즈 용도로 사용한다.

그 밖의 디스크

니어라인 하드디스크

온라인과 오프라인의 중간 상태인 니어 온라인이 정의되고, 그 상태에 적합한 하드디스크로 니어라인 하드디스크가 이용된다.

SSD

반도체 소자 메모리를 기억 장치에 이용한 디스크다.
하드디스크보다 용량 단가가 몇 배에서 몇십 배나 된다.
SSD에는 쓰기와 지우기를 반복하면 소자가 열화되어 성능이 떨어진다.

SSD에는 SLC와 MLC가 있다.
SLC는 기억 소자 하나에 1bit 데이터를 기록하지만 MLC는 기억 소자 하나에 2bit 데이터를 기록하므로 대용량으로 만들기 쉽다.
하지만 속도는 SLC가 빠르다 하지만 가격이 비싸서 MLC가 많이 채용된다.

엔터프라이즈 플래시 메모리 스토리지

엔터프라이즈 용도로 비휘발성 메모리가 사용된 초고속 저장장치
PCI Express 인터페이스로 연결한다.

10. RAID

RAID는 성능과 내장애성을 높이기 위한 목적으로 이용된다.

RAID 레벨

기본적으로 RAID 레벨은 0, 1, 2, 3, 4, 5, 6까지 일곱 가지가 있따.
또한 0과 다른 레벨을 조합한 RAID10(1+0), RAID50(5+0), RAID60(6+0)도 있다.

RAID설명용도
0내장애성이 없는 디스크 어레이(스트라이핑)디스크 IO 성능을 높여야할 때 사용, 내장애성이 낮다, 로그 집계등의 임시 저장영역에서 사용
1이중화(미러링)내장애성이 높다. 운영체제가 설치된 파티션 등에 사용한다.
2비트 단위 전용 오류 보정 부호 드라이브(ECC)거의 사용 x
3비트/바위트 단위 전용 패리티거의 사용 x
4블록 단위 전용 패리티 드라이브거의 사용 x
5블록 단위 패리티 정보 기록저장 용량을 넉넉하게 확보하고자 할 때 사용한다. 파일 서버나 로그 저장 등에 사용한다.
6블록 단위에서 두 가지 패리티 정보 기록RAID5와 용도는 같지만 RAID5보다 내장애성이 높다
10RAID1를 스트라이핑한 것내장에성과 디스크 IO 성능을 모두 만족해야할 때 사용
50,60RAID5,6 를 스트라이핑한 것저장 용량 확보와 디스크 IO 성능을 모두 만족해야할 때 사용한다. 파일 서버나 로그 저장 등에 사용

RAID의 성능

RAID를 구성하면 디스크 IO의 성능을 높일 수 있따.
디스크 IO의 성능이란 서버와 스토리지 사이에 주고받는 데이터의 읽기쓰기 성능을 가리키고, 특히 1초당 처리할 수 있는 IO 수치를 IOPS라고 부른다.

다스크 하나를 사용할 대보다 두 개를 병렬로 연결해 사용할 때 이론상 두 배빠르다.

이처럼 디스크를 병렬로 여러 개 사용할 때 디스크 수를 '스트라이핑 개수'라고 부르고, 스트라이핑 개수를 늘릴수록 디스크 IO 성능이 높아진다.

RAID5와 RAID10

디스크 용량이 대량으로 필요할 때는 RAID5나 RAID10 중 하나가 주로 검토된다.

일반적으로 RAID5는 실제 용량을 많이 확보할 수는 있는 대신 속도가 느리고, RAID10은 실제 용량이 줄어드는 대신 속도가 빠르다.

RAID5와 RAID6

RAID5는 패리티 정보를 한 종류만 이용하지만, RAID6는 패리티 정보를 두 종류 이용하므로 보통은 RAID6쪽이 우수하다고 한다. 하지만 반드시 우수하다고 할 수는 없다.

profile
안녕하세요

0개의 댓글