기초 물방울/리눅스&VM

시스템 수업 2일차 (컴퓨터구조, RAID, HBA, GBIC)

Weeding 2022. 10. 6. 00:36
반응형
SMALL

서버 vs 데스크탑 차이

  • 공통점
    - 메인보드, CPU, 메모리, 디스크 등 부품으로 구성.
  • 서버는 24시간, 365일 가동되는것을 전제로 함. 
  • 고장 나더라도 최대한 시스템이 멈추지 않게 설계되어있음.
    1. 부품 자체의 품질이 높아 일반 컴퓨터와 비교하면 고장이 잘 나지 않음
    2. 주요 부품을 "이중화" (무중단 서비스를 위해)
    --> 디스크, NIC 등 무조건 이중화 하는게 좋음 (고객에게 고지 필요)
    3. 벤더 사의 지원이 충실 (벤더의 서비스를 구매)
    --> Dell > HP > Cisco

  • 그리고 서버는 일반 컴퓨터와 비교했을 때, "훨씬 더 많은 메모리와 하드디스크 등의 하드웨어 자원을 장착"할 수 있는 것이 많다. (메모리는 최대 24개, 일반 컴퓨터는 최대 8개?) 
  • 일반 컴퓨터는 개인의 이용 목적이기에 그래픽이나 음향 등 멀티미디어 기능에 충실.

 

 

 

서버의 조건들은?

  • CPU
    - 소켓수, 코어 수, 캐시 용량, 주파 수, 가상화 지원 (요새는 왠만하면 다 지원)
  • RAID
    - RAID 1/5/6/10 .....
    - 구성에 따라 용량이 달라짐
  • PSU (=Power Supply unit)
    - 총 와트 수, 이중화(무중단 서비스를 위해, 대부분 사용)
  • NIC
    - 2포트, 4포트, 8포트 등

  • 메모리(용량, 전송 속도), 디스크(용량, 회전 수, HDD, SSD)
  • 보증기간, 지원 수준, 확장성, 물리적인 사이즈(1U,2U), 무게

 

 

 

서버 사양은 어떻게 결정하나?

  • 보통 임시로 결정한 서버 사양의 기기를 현장에 투입해 실제 하드웨어 자원의 이용 상황을 측정한 다음, 서버와 서버의 부품을 늘리거나 줄임.
    --> 큰 사이트의 경우에는 POC로 검증
    --> POC란?
    = 새로운 프로젝트가 실제로 실현 가능한지 기술적인 관점에서부터 검증하는 과정을 의미함.


  • 서버의 수용량을 늘리고 싶다면?
    1. Scale Up (성능 Up)
    2. Scale Out (대수 Up)

 

 

 

서버는 어떤 형태로 구분할까?

  • 1. 랙 마운트형 서버
    - 랙 안에 설치되는 서버를 의미 
    - 보통 1U, 2U, 4U로 구성됨.
    - 대부분 데이터센터에서는 랙 마운트형 서버를 사용.

  • 2. 타워형 서버
    - 사내서버룸이나 사무실 또는 점포 등에 설치되는 서버
    - 저소음 서버

 

 

** 블레이드 서버

  • 고밀도 서버
  • 별도의 케이스가 없다. 따라서, 전원공급장치나 케이스 전반을 위한 냉각 장치도 없어서 "블레이드 인클로저"라 불리는 집합용 케이스에 꽃아서 사용해야 함.
  • 인클로저에는 전원장치와 냉각 장치 등이 달려있어서 공통적인 기능을 제공해주며, 이 안에 꽃아 사용함.
  • IDC는 공간 효율이 곧 돈이기에 고밀도로 설치.
  • 블레이드 서버는 다른 벤더 인클루져에 호환이 되지 않는다!
  • 단점은
    1. 랙 서버에 비해 비쌈
    2. 랙 서버에 비해 자유로운 구성이 힘듬
    3. 랙 서버에 비해 기술력을 요함.

 

 

1. cisco 블레이드 서버

  • 대규모 환경에 적합
  • 비싼데 많이 못들어감... 인기가 하락하는중
  • 패브릭 인터커넥터가 없으면 구성이 되지 않음.
  • 시스코 서버는 "정책 기반"이라 배포같은게 다른 벤더에 비해 수월함.

 

 

2. HP

  • 많이 탑재됨 (최대16대)
  • 유닉스 서버 탑재 가능
  • SAN 스위치 연결 가능
  • 가성비 좋음
  • 독립적 환경에서는 가장 좋다고 볼 수 있는 서버
  • ProLiant로 시작 .. ex) HPE ProLiant DL(랙형) / ML(타워형)

 

 

3. DELL

  • 최근 많이 사용중
  • 한국 서폿이 많아서 편리함..

 

 

 

 

 

=CPU에서 사용하는 용어=

 

CPU

  • 연산과 계산의 작업을 담당.
  • 몇소켓이냐? = CPU의 개수는 몇개냐?
  • CPU 주요 계산 부분이 코어 수에 따라 달라지기에 최근에는 "멀티 코어"로 사용
    (= 코어 수가 많을수록 동시에 많은 데이터 처리 가능!)

  • 계산을 하고 있는 부품 --> Hz --> CPU는 "속도"로 이야기함
  • --> 빠르면 빠를수록 "성능"이 좋다.
  • 레지스터라는 기억장치가 있다
  • ALU(연산장치)
  • 레지스터와 연산장치에서 계산을하고 메모리로 결과값을 반환

 

 

Thread

  • 코어가 일꾼이라면 쓰레드는 두 개의 팔과 같은 역할.
  • 즉, 하나의 코어에서 처리할 수 있는 수 라고 볼수있다.
  • Hyper Threading 
    - 하나의 코어로 두 개의 처리를 실행할 수 있는 기술.

 

Cashe

  • CPU와 메인 메모리 사이에 캐시 메모리라는 빠른 속도의 메모리가 있다.
  • 즉, 프로세서 상 존재하는 고속 메모리인것.
    (= CPU 처리 성능을 높임)
  • CPU가 일 처리를 할 때 기억장치를 거쳐오게 되는데 CPU에 비해 속도가 너무 느리면 병목현상이 발생해버리기 때문에, 이러한 현상을 보완해주기 위해 Cashe memory 라는 것이 존재함!
  • L1 > L2 > L3 (1차캐시메모리/2차/3차, 속도는 1차가 가장 빠름, 그만큼 비쌈)

 

 

 

동작 주파 수

  • Operating frequncy
  • 1초당 클럭(cpu의 처리 속도, GHz 단위 사용) 수
  • 동작 주파수가 높을수록 처리 속도가 빨라지지만, 전력 효율이 나쁘다.
    (몇만대 서버에 CPU가 탑재되있는 센터라면.... 고려해야하는 부분)

 

 

 

소켓

  • cpu를 메인보드에 연결할 때 사용하는 연결 방식
  • cpu외에도 다른 부품들이 서로 잘 연결 될 수 있게 같은 판 위에 올려져있는데 그 판이 "메인보드"
    --> 메인보드는 당연히 부품들이 딱 붙어 있을 수 밖에 없는 구조로 되어있다.
    -----> 여기서 cpu가 붙어 있는 자리를 "소켓"이라고 함!!

  • 소켓의 형태
    1. LGA (Land Grid Array)
    - 메인보드에 핀이 부착되어 있는 방식
    - 핀이 없어서 관리하기 편함, but 내구성이 낮음.

    2. PGA (Pin Grid Array)
    - cpu 바닥에 핀이 붙어 있는 방식
    - 관리에 유의해야하지만 직접적인 노출이 없어서 내구성이 좋음

    3. BGA (Ball Grid Array)
    - 소켓 없이 메인보드에 바로 납땜하는 방식
    - 가장 내구성이 좋지만 납땜이라 업그레이드가 어려움.

 

 

 

 

데스크탑 CPU와 서버 CPU의 차이는?

  • 코어(Core) = 일반 PC
  • 제온(Xeon) = 서버

 

 

제온(Xeon)

  • 서버, 워크스테이션 등 특별한 용도의 컴퓨터를 위해 개발된 CPU
  • 가상화(VM), 병렬처리, 멀티코어, 신호 암호화, ECC 메모리 지원, 다중 CPU 소켓 등 의 기능을 제공

 

 

서버 CPU의 주요 기능

1. 멀티코어

  • 제온 프로세서는 수십 개의 CPU 코어를 탑재하고 있다.
  • 이는 병렬처리를 극대화하기 위함.
    (여러개의 프로세서를 통해 하나의 프로그램을 처리하는 것 = 처리 부하를 분담 = 처리 속도 향상)
  • --> 코어 하나의 클록(처리속도)을 향상시키는 것은 한계가 있기 때문에 현재 HPC와 클라우드 컴퓨팅 환경은 최대한 많은 코어를 연결해 병렬처리속도를 향상시키는 것에 초점을 맞추고 있다.
  • --> 대부분의 제온 프로세서는 발열을 줄이기 위해 (=데이터센터 유지비용 때문) 개별 코어의 클록을 일반 PC용 프로세서보다 낮게 설계함.

 

2. ECC 메모리

  • 제온 프로세서는 서버에서 발생하는 처리 오류를 방지하기 위해 서버용 ECC(오류검출) 메모리를 지원함.
  • 제온 프로세서를 탑재한 서버 대부분이 ECC 메모리를 채택

 

3. 다중 CPU 소켓

  • 제온 프로세서는 병렬처리의 효율을 극대화하고, 데이터센터의 공간을 절약하기 위해 하나의 메인보드에 여러 개의 CPU를 연결할 수 있다.
  • 일반적으로 상위 모델일 수록 하나의 보드에 더 많은 CPU를 심을 수 있다.

 

 

 

제온 CPU

  • 코드네임 Skylake를 기점으로 이전에는 E3 / E5 / E7 / D 등으로 구분. 
  • 이후 부터는 플레티넘, 골드, 실버, 브론즈 로 모델을 나눔. (기준 = 성능&용도)
  • 최근 장비들은 대부분 골드 이상의 CPU를 사용!

  • 플래티넘
    - 2, 4, 8개의 고급 소켓 성능으로 가장 까다로운 워크로드 및 서비스를 위해 설계된 프로세서

    골드
    - 최대 4소켓까지 확장 가능한 성능, 고급 안정성 및 고급 보안 솔루션

 

 

 

CPU를 선정 하는 방법은?

1. 성능

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

 

2. 가격

  • CPU 종류에 따라 가격 차이가 심함.
  • 사용할 소프트웨어의 라이센스 체계 또한 확인해야 함.
  • --> CPU의 코어 수와 소켓 수로 가격이 달라지는 소프트웨어가 있기에 비용을 줄이려면 CPU의 종류와 개수를 조정!

3. 소비 전력

  • 장비가 많아지면 그만큼 소비전력도 ↑

 

 

 

 

=메모리에서 사용하는 용어=

1. 슬롯 

  • 메인보드에 있는 메모리 삽입구

 

2. 채널

  • CPU와 메인보드의 칩셋이 복수의 채널을 지원하면, 채널별로 같은 종류의 메모리를 탑재해 데이터 폭과 성능을 ↑
  • ex) 하나의 메모리는 64bit의 데이터 폭으로 전송, 듀얼 채널에서는 128bit의 데이터 폭으로 전송!

 

3. 랭크

  • 메모리 컨트롤러가 메모리의 DRAM에서 데이터를 입출력하는 단위를 가리킴.
  • 하나의 랭크는 64bit 단위로 입출력
  • 싱글 랭크 메모리에서는 하나의 메모리에 64bit(ECC용 9bit를 추가하여 72bit)의 DRAM 칩이 탑재되어 있음.
  • 듀얼랭크에선? 128bit(ECC용 16bit을 추가하여 144bit)

 

4. ECC 메모리

  • 메모리 고장으로 비트 반전 오류가 발생했을 때, 자동으로 보정 및 감지할수 있도록 ECC(Error Correction Code = 오류보정 부호)라고 불리는 패리티 정보가 추가된 메모리
  • 일정 임계치 값을 넘기면 알람이 발생하고, 사용 불가능 상태로 변경됨.
  • 클라이언트들이 ECC 카운트가 쌓인걸 보고 문의를 할 수 있음. 벤더쪽에 요청하면 리셋하고 다시 카운트해보라고도 하며, 이런식으로 실무에서 체크해야하는 것이 있다.

 

5. DIMM

  • 아무 기능 없는 메모리
  • 일반적으로 PC에서 사용

 

 

그 외 

REG, LV(저전압), UDIMM, RDIMM 등등이 있다.

 

서버에서 장착할 때 혼용해서 사용하면 안된다

 

 

 

  • DDR, DDR2, DDR3, DDR4의 단자는 홈으로 구분이 가능.
  • 홈을 다르게 넣은 이유는 각 규격의 동작 방식이 미묘하게 다르기 때문!
  • 또한, 램을 잘못 꽃는 것을 막기 위해 일부러 단자를 다르게 함.

 

 

 

메모리 사용 규칙은 ?

  • 각 프로세서의 메모리 구성은 같아야 함.
  • 작업 전 가이드라인을 필히 확인.
  • RDIMM 메모리와 UDIMM 메모리는 섞어 쓸 수 없다.
  • 각 채널에 탑재하는 메모리는 같은 종류로 해야 한다!
  • 원칙적으로 ECC 메모리와 비 ECC 메모리는 섞어 쓸 수 없다!

 

 

 

 

하드디스크 인터페이스

1. SATA

  • 직렬 방식
  • IDE에서 발전한 HDD
  • 요즘은 거의 사용하지 않음.

 

 

2. SCSI

  • 병렬 방식
  • SCSI 타입은 주로 서버에서 많이 사용되는 연결 방식
  • 이것도 거의 사용하지 않음.

 

 

 

3. SAS

  • Serial-Attached SCSI
  • SCSI의 병렬 구조를 직렬로 변경 (속도 4배 향상)
  • 쉽게 SATA + SCSI의 장점을 합친 것
  • SCSI의 한 단계 업그레이드 버전으로 서버용 HDD로 가장 많이 사용.
  • SATA처럼 직렬 인터 페이스.
  • SAS 3.0 전송 속도는 12GB/s
  • SATA와는 가운데 홈 부분이 다르다.
  • RPM 분당 회전수가 높을 수록 고가
  • SAS 케이블은 전원과 데이터부분이 하나로 일체되어 있다.

 

 

 

 

HDD와 SSD의 차이는?

  • HDD 
    = 플래터라는 자기 디스크에 저장된 "데이터를 회전시켜서 읽고 쓰는 방식"
  • SSD
    = 정적 플래시 메모리 칩을 사용하여 데이터를 저장
    ** 플래시 메모리 = 비휘발성 반도체 저장장치(전기적으로 데이터를 지우고 기록할 수 있는)

  • SSD는 기계적으로 플래터를 회전하여 데이터를 찾지 않기 때문에 HDD보다 데이터를 저장하고 읽는 속도가 빠르다!

 

 

 

 

RAID 컨트롤러

  • RAID 인프라에서 디스크 드라이브를 관리하는 스토리지 구성 요소 유형
  • RAID 디스크를 관리하는 컴퓨터나 서버에 물리 디스크 드라이브를 "논리 장치로 제공"
  • 디스크 어레이 컨트롤러 라고도 칭함.
  • RAID 컨트롤러는 다음을기반으로 분류됨.
    1. 지원하는 RAID 레벨
    2. 내부 또는 외부 포트 수
    3. 드라이브 유형 (SAS / SATA / PATA)
    4. 지원할 수 있는 드라이브 수
    5. 기본 캐시 메모리 (캐시 배터리라는게 따로 장착 되어있다.)

    ** 캐시 베터리란?
    = 비정상적으로 전원이 차단되었을 때 RAID 컨트롤러의 캐시에 커밋되지 않은 데이터들은 소멸됨.
    --> 이러한 데이터들을 살리기 위해 "캐시배터리" 를 이용함!
    ----> 서버에 전원은 차단되었지만 캐시배터리를 이용하여 캐시를 활성화 시켜놓음.
    --------> 종류는 BBWC BBU / FBWC BBU 

 

 

 

RAID 구성

  • Redundant Array of Inexpensive/Independent Disk
  • RAID는 여러개의 디스크를 묶어 하나의 디스크처럼 사용하는 기술
    = array controller가 하는 역할
    = 즉, 저장장치 여러 개를 묶어 고용량/고성능 저장 장치 한 개와 같은 효과를 얻기 위해 개발된 기법
    = 초기에는 폐기하기엔 아깝고 단독으로 쓰기에는 성능이 부족한(Inexpensive) 저장장치를 재활용할 목적으로 사용.
    현재는 Inexpensive 보다는 Independent로 해석하는 추세.

  • RAID의 기대 효과
    1. 대용량의 단일 볼륨을 사용하는 효과
    2. 디스크 I/O 병렬화로 인한 성능 향상
    (RAID 0, 5, 6 등, 각 레벨에 따라 신뢰성을 높이거나 속도를 향상하기 위해 사용)

    ** 디스크 I/O 성능이란?
    - 서버와 스토리지 사이에 주고받는 데이터의 읽기 쓰기 성능을 가리킴
    - 특히 1초당 처리할 수 있는 I/O 수치를 IOPS(Input/Output per Second)라고 한다.

    3. 병렬로 연결을 하여 사용하기에 2개의 디스크를 연결해 사용 할 때 2배 빠르게 사용이 가능함!
    이처럼, 디스크를 병렬로 여러개 사용할 때의 디스크 수를 '스트라이핑 개수'라 부르며, 스트라이핑 개수를 늘릴수록 디스크 I/O 성능이 높아짐.

    4. 데이터 복제로 인한 안정성 향상 (RAID 1 등)

 

Striping

  • 논리적으로 연속된 데이터 세그먼트들이 물리적으로 여러 개의 디스크 드라이브에 라운드로빈 방식으로 나누어 저장
  • 쉽게 이야기해 데이터를 여러 개의 디스크에 일정 크기의 바이트나 섹터 단위로 나누어 저장
  • 스트라이핑을 사용하면 빠르게 데이터를 읽고 쓸 수 있다.

 

Mirring

  • 데이터를 그대로 복제하는 것으로 신뢰성 확보를 위해 사용.

 

 

 

RAID 0

  • Striping 방식
  • 최소 2개의 디스크가 필요 (min(N) == 2)
  • RAID를 구성하는 모든 디스크에 데이터를 분할하여 저장
  • 전체 디스크를 모두 동시에 사용하기 때문에 "고성능 구현을 극도로 추구"
  • 하지만 하나의 디스크라도 문제가 생기면 전체 RAID가 깨지기에 안정성은 ↓
  • 그렇기에 실제 서버에서는 거의 사용하지 않는다!

 

 

★ RAID 1

  • Mirroring 방식
  • 최소 2개의 디스크가 필요 (min(N) == 2)
  • RAID 1은 모든 디스크에 데이터를 복제하여 기록함.
    즉, 동일한 데이터를 N개로 복제하여 각 디스크에 저장함.
    때문에, 여러 디스크로 RAID를 구성해도, 실제 사용 가능한 용량은 단일 디스크의 용량과 동일
    ----> 한개의 디스크는 복제용으로 사용한다

  • Write 시에는 복제하여 기록하기 대문에 단일 디스크보다 성능이 낮게 나올 수 있다.
  • 하지만, Read 시에는 단일 디스크의 N배의 성능이 나옴.
  • "무정지 구현을 극도로 추구하여 안정성이 높다"

 

 

 

RAID 5

  • Disk 3장 이상일때 가장 많이 사용.
  • 패리티가 있는 Block level striping 기반
  • 용량 및 성능이 단일 디스크 대비 (N-1) 배 증가.
  • 1개의 디스크 에러 시 복구 가능! (2개 이상 디스크 에러 시 복구 불가능)
  • RAID 0에서 성능, 용량을 조금 줄이는 대신 안정성을 높인 RAID Level

 

 

 

RAID 6

  • RAID 5에서 성능&용량을 좀 더 줄이고, 안정성을 높인 방식
  • 최소 4개의 디스크로 구성 가능
  • 2개의 디스크 에러 시 복구 가능.

 

 

 

RAID 0+1

  • 스트라이핑 한 후 이를 다시 미러링 하는 구성
  • 최소 4개의 디스크가 필요함.
  • ex) 디스크가 6개일 경우 3개씩 스트라이핑 한 후 이를 미러링
  • Disk 0과 2가 동시에 나갈 경우 전체 디스크가 깨짐.

 

RAID 1+0

  • 미러링 한 후 이를 다시 스트라이핑
  • 최소 4개의 디스크가 필요
  • ex) 디스크가 6개일 경우 최소 2개씩 미러링 한 후 스트라이핑
  • Disk 0과 2가 동시에 나가더라도 전체 디스크가 깨지지 않는다.
  • Disk 0과 1이 동시에 나가면 깨짐
  • 0+1에 비해 1+0이 깨질 확률이 더 낮으므로 상대적으로 안정성이 더 높다.

 

 

 

 

RAID 구성 시 실제 사용 가능 용량

  • ex) 500GB 디스크 12개를 사용 할 때의 실제 용량 계산
  • RAID 0 = 500GB X 12개 = 6TB (실제 용량)
  • RAID 1 = 구성 불가능 (RAID1+0으로 구성)
  • RAID 5 = 500GB X (12-1)개 = 5.5TB
  • RAID 6 = 500GB X (12-2)개 = 5TB
  • RAID 10 = 500GB X (12/2)개 = 3TB
  • 용량이 적어질수록 안정성은 높아진다!

 

 

 

 

네트워크 인터페이스 컨트롤러

  • NIC
  • 컴퓨터를 네트워크에 연결하여 통신하기 위해 사용하는 하드웨어 장치

 

 

호스트 버스 어댑터 

  • HBA , Host Bus Adapter
  • 컴퓨터 하드웨어에서 호스트 시스템 역할을 하는 컴퓨터를 기타 네트워크와 스토리지 장치에 연결.
  • 주로 SCSI, Fiber Channel, SATA 장치들을 연결하기 위한 장치들을 의미함.
  • 주로 SAN과 같은 파이버 스토리지 환경에서 사용됨!
  • = 서버와 외부 다른 장비 사이의 통신을 위한 카드. 
    = 즉, 다른 인터페이스를 꽃기 위한 카드 
    = 왜 필요? 서버와 장치들 제조사마다 인터페이스가 다르기 때문에 서로 호환을 시켜주기 위해 필요하다!
    ( -> 요새는 왠만해서는 다 호환 가능하다고.....)

 

 

 

GBIC

  • Giga Bit Interface Converter
  • 광신호(Optical Signal)를 디지털 신호(Digital Signal)로 바꿔주는 Tansceiver
  • 네트워크 장치들을 파이버채널이나 기가비트 이더넷과 같은 광섬유 기반의 전송 시스템에 부착하기 위한 인터페이스
  • WAN에서 사용되는 것 = 광케이블
    스위치나 브릿지에 연결 할 때 사용되는 것 = GBIC 매체

 

 

SFP

  • Small Form-factor Pluggable
  • 광 모듈 트랜시버에 사용되며 이 모듈은 광/디지털 변환인 소형 GBIC이라고 한다.
  • 실제로 단순 크기 차이!! mini-GBIC이라고도 부름.

 

 

 

RJ45

  • 일반적으로 가장 많이 사용하는 커넥터

 

 

 

LC Type

  • SFP Type Transceiver
  • 대형서버, SAN 스위치, 스토리지 등에서 가장 많이 사용되는 종류

 

 

 

 

Power supply

  • 구동에 필요한 전력을 컴퓨터 등 전자기기 또는 전기 부하에 공급해 주는 전기 장치로 입력 전력으로 부터 필요한 출력 전력을 생성하는 전력 회로
  • 대부분의 서버에는 2개씩 이중화로 구성되어 있으며, 하나의 Power Supply가 문제가 생겨도 다른 하나의 Power Supply로 운영 할 수 있도록 구성.

 

 

FAN

  • 서버 내부의 온도 조절을 위한 장치
  • 하나가 장애가 발생해도 온라인 중에 핫스왑이 가능하게 설계되어 있다.
  • 장비들마다 넣는 방향이 다른 점 유의!

 

 

Dedicated iLO 4 connector

  • IP할당 포트, 매니징까지도 가능 -> Remote Console, 하드웨어 관리 -> 라이센스 필요.

 

 

 

 

반응형
LIST