1. 물리서버
- 하드웨어 장비 및 데이터 흐름
1.1. 서버 외관 및 설치
- 서버는 랙에 장착되며, 랙에는 서버 외에도 HDD가 장착되어 있는 저장소나 인터넷 및 LAN을 연결하기 위한 스위치 등도 탑재
- 전원이나 네트워크 케이블 배선 등은 모두 랙 뒷면에서 연결
- 랙 규격
- 대부분 랙의 폭은 19인치
- 높이는 한 눈금에 약 4.5cm
- 서버 높이의 단위 : 한 눈금당 1U(2U 서버는 2눈금, 높이 약 9cm의 서버)
- 서버 장착 시 중요 정보
- 서버 크기(1U), 소비 전력(A), 중량(kg)
- 서버 크기(1U), 소비 전력(A), 중량(kg)
1.2. 서버 내부 구성
- 서버 내부 구성
- CPU가 2개 연결되어 있으며 옆에 메모리 배치, CPU와 메모리는 물리적으로 직접 연결
- CPU를 중심으로 HDD나 NIC는 메모리에 비해 떨어진 곳에 위치
- 각 컴퍼넌트(부품)을 연결하는 선 버스(bus)
- PCI Express 슬롯 : 외부 장치 연결하는 곳
- NIC : 네트워크 인터페이스
1.3. CPU(Central Processing Unit)
- 서버 중심에 위치해서 연산 처리
- CPU는 OS(운영체제)라는 소프트웨어에서 명령을 받아 연산을 실행하고 결과 반환
- 프로세스(OS상에서 동작하는 웹 서버나 데이터베이스)와 사용자 키보드, 마우스를 통한 입력으로 OS에 명령
- 키보드, 마우스, 프로세스 → OS → CPU
- 명령과 데이터는 기억 장치나 입출력 장치를 통해 전달
- 연산은 1초에 1억회 이상 실행
- CPU 안에서 물리적인 연산(데이터 처리)을 담당하는 코어는 각자 독립된 처리가 가능하며, 하나의 CPU에 여러 개의 코어가 존재(멀티 코어)
- 명령이나 데이터는 기억 장치(메모리, HDD)에 존재
1.4. 메모리
- 기억 영역으로 CPU 옆에 위치
- CPU에 전달하는 내용이나 데이터를 저장하거나 처리 결과를 수신
- 메모리에 저장되는 정보는 영구성이 없으며, 서버를 재시작하면 데이터 존재 X
- 메모리 액세스가 매우 빠르게 이루어지며, 전기적인 처리만으로 데이터 저장
- CPU 자체의 메모리를 레지스터, 1차(L1)/2차(L2) 캐시라고 호칭 → 메모리보다 빠르지만 용량이 메모리보다 작은 형태
- 캐시를 여러 단으로 배치해서 대기 시간 축소
- L1, L2 캐시에 있는 데이터는 L3 캐시에도 존재 → 다른 코어는 자신 이외의 캐시를 확인하지 않고 L3 캐시만 확인
- 메모리 영역이 CPU 안에 여러 개 존재하는 이유
- 처리 지연을 줄이기 위해 가장 자주 사용하는 명령/데이터를 코어 가까운 곳에 배치
- 메모리를 이용하려면 메모리 컨트롤러를 경유해 CPU 외부로 나가야 함
- 메모리를 사용하면 처리 지연 발생(latency)
- 액세스 속도
- 일반적으로 캐시 메모리가 커질수록 액세스 속도 저하
- 초고속으로 액세스하고 싶은 데이터는 L1 캐시, 고속으로 액세스하고 싶은 데이터는 L2 캐시에 캐싱하는 형태
- 처리 지연을 줄이기 위해 가장 자주 사용하는 명령/데이터를 코어 가까운 곳에 배치
- 메모리 인터러빙(memory interleaving) : 데이터를 미리 CPU에 전달해서 처리 지연을 줄이는 메모리 기능
- 채널 : CPU와 메모리 간의 데이터 경로
- 뱅크 : 하나의 채널 안에서 하나 또는 그 이상의 메모리 묶음
- 최대 3개의 채널을 사용해서 데이터 1을 요구하면 데이터 2와 데이터 3도 함께 보내는 형태
- 대부분 데이터가 연속해서 액세스 된다는 규칙을 기반으로
2. I/O 장치
2.1. 하드 디스크 드라이브(HDD)
- CPU와 떨어져 있으며 주로 장기 저장 목적의 데이터 저장 장소로 사용
- 메모리는 전기가 흐르지 않으면 데이터가 사라지지만, 디스크는 전기가 없어도 데이터 사라지지 않는 형태
- HDD 내부
- 자기 원반이 여러 개 들어있는데, 이것이 고속으로 회전하고 레코드 바늘 같은 것을 사용해서 읽기/쓰기 처리
- 메모리처럼 빠른 속도로 액세스 할 수 없으며, 일반적으로 수 밀리초에서 수십 밀리초 정도의 시간 소요(메모리는 수~수십 마이크로초)
- 최근에는 SSD(Solid State Disk)를 많이 사용
- 물리적인 회전 요소를 사용하지 않는 디스크
- 메모리와 기억 장치 간 속도 차이 거의 x
- HDD가 여러 개 탑재된 하드웨어를 스토리지(storage, 저장소)라고 호칭
- 스토리지는 I/O 서브 시스템이라고 불리는 장치
- 내부에 CPU와 캐시가 존재하고 수많은 HDD 외에도 여러 기능 탑재
- 서버 I/O 시에는 HDD가 직접 데이터를 교환하지 않고 캐시 이용
- 저장소 캐시는 CPU 캐시 이용 방법과 동일
- 대형 저장소와 연결할 때는 파이버 채널이라는 케이블을 사용하여 SAN(Storage Area Network)를 경유
- SAN에 접속하기 위한 파이버 채널 인터페이스를 FC 포트로 호칭
- 보통 서버 시스템 포트에 FC 포트가 없기 때문에 PCI 슬롯에 HBA 카드를 삽입해서 사용
2.1.1. 하드 디스크 내부 구조
- 하드디스크 내부 구조
- 전원 커넥터 : 하드디스크에 전원을 공급하는 역할
- 데이터 커넥터 : 하드디스크와 컴퓨터 사이의 데이터를 전송해주는 단자
- 헤드 : 데이터를 읽어주는 역할
- 액추에이터암 : 헤드를 데이터가 있는 곳으로 움직이는 역할
- 플래터 : 실제로 데이터가 저장
- 스핀들 : 플래터를 돌려주는 역할
- 트랙, 섹터
- 하드 디스크 기록 단위의 하나로 자기 매체에 늘어선 동심원으로 구획된 하나하나를 트랙이라고 부르며, 그 트랙들을 작은 단위로 쪼갠 것을 섹터라고 호칭
- 디스크에서 데이터를 읽고 쓰는 단위는 섹터 512가 아니며 4KB인 disk block으로 나누어 관리
- 실린더
- 다수개의 플래터의 트랙을 수직적으로 관통하는 3차원 적인 스택
- 하드 용량 = (헤드수) * (실린더 수) * (섹터수) * (섹터당 기록 용량) 의 공식으로 계산
- 모든섹터가 같은 길이를 갖도록 데이터를 기록하는 방식을 사용하는 것이 일반적인 추세
- 하드디스크의 헤드 위치에 관한 정보를 읽을 수 있도록 별도의 헤드를 하나 더 사용
2.1.2. 하드 디스크 각종 규격
- SATA(Serial Advanced Technology Attachment)
- SATA_1 규격에서는 초당 150MB, SATA_2는 초당 300MB의 전송 속도
- STAT_2 규격에서는 USB처럼 하나의 포트에 여러 개의 하드 디스크 연결 가능
- PC를 끄지 않고 장치를 연결할 수 있는 핫플러그 기능 추가
- SCSI (Small Computer System Interface)
- 서버나 워크스테이션 등에 쓰이는 고속 인터페이스
- 사용을 위해 별도 확장 카드 필요
- 이를 대체하는 SAS 인터페이스가 등장하면서 사용도 저하
- SAS(Serial Attached SCSI)
- SCSI 규격을 한 단계 발전한 것으로 서버 등의 주로 사용
- SSD(Solid State Drive, Solid State Disk)
- 하드디스크 드라이브와 비슷하게 동작하면서 기계적 장치인 HDD와 다르게 반도체를 이용해 정보 저장
2.2. 네트워크 인터페이스
- 서버와 외부 장비를 연결, 이더넷 네트워크 어댑터
- OSI 7 계층에서 데이터 링크 계층과 달리 물리 계층 사이에서 통신 가능하게 함
- 통신을 위해 인터페이스 역할 수행하며 고성능의 데이터 처리를 위해 송수신 되는 데이터 압축
- NIC 카드에는 물리적인 하드웨어 주소인 MAC 주소 할당
3. 버스
- 서버 내부의 컴포넌트들을 서로 연결시키는 회선
- 버스가 어느 정도의 데이터 전송 능력을 갖고 있는지 중요
3.1. 대역
- IT 인프라에서 대역은 데이터 전송 능력 의미
- 한 번에 데이터를 보낼 수 있는 데이터의 폭(전송폭), 1초에 전송할 수 있는 횟수(전송 횟수)로 결정
- 전송 횟수 → 1초 / 1 처리 당 소요 시간(응답 시간)
- 대역을 스루풋(throughput, 처리량)이라고 호칭 → 대역은 전송 폭*전송 횟수
3.2. 버스 대역
- CPU와 가까운 쪽이 1초당 전송량 ↑
- 일상에서 접하는 대역
- 버스 흐름에서 CPU와 장치 사이에 병목 현상이 없어야 함
'하드웨어(Hardware)' 카테고리의 다른 글
Ubuntu 22.04 LTS OMSA 설치 (2) | 2024.03.27 |
---|---|
Memory Hierachy(메모리 계층 구조) (0) | 2024.03.09 |
DELL 서버의 OMSA 관련 명령어(srvadmin-services.sh) (0) | 2022.07.23 |
[DELL] 서버 하드웨어 재시작 3가지 방법 (0) | 2022.07.21 |
[DELL] BIOS의 System Profile (0) | 2022.07.20 |