IT 기획의 길

[IT 인프라 총정리]1편 서버 본문

IT 인프라/서버

[IT 인프라 총정리]1편 서버

완벽하기 쉽지 않지만 완벽해지려고 노력해야 한다 2022. 8. 5. 11:57

IT기획일을 하다보면 인프라 지식을 많이 알고 있어야한다.

근데 이 인프라 지식은 너무나 방대하고 잘 까먹기 쉽다.

너무 너무 잘 까먹는다. 심지어 공인 IP가 무엇인지 사설 IP가 무엇인지도 개념이 가물가물할때가 있다.

이럴때 보면 내가 늙어서 기억을 못하는건지(아직 20대지만..) 인프라 영역이 어려운건지 현타가 오고는 한다.

어째든 나만의 인프라 총정리 시리즈를 만들어보려고 한다.

인프라 관련해서 다양한 게시글이 있는데 그 게시글들을 언제 다 복습하고 앉아있냐

이것만 보게끔 할 수 있게 만들어보려고 한다.

1편 서버

 

Keyword1 

서버 : 서버는 일반 컴퓨터와 마찬가지로 메인보드, CPU, 메모리, 디스크 등의 부품으로 구성된다.

보통 24시간 가동하는것을 전제로 하기 때문에 일반 컴퓨터에 비해 훨씬 더 많은 메모리와 디스크 등의

하드웨어 자원을 장착할 수 있다.

일반 컴퓨터는 개인의 이용을 목적으로 하므로 그래픽이나 음향 등 멀티미디어 기능에 충실하다

원칙적으로 서버에는 서버용 운영체제를 설치할 필요가 있다. 서버는 높은 안정성이 요구되기 때문이다.

 

 

 

 

Keyword2

CPU : CPU의 성능은 코어와 캐시에 영향을 받습니다. 코어가 많을수록 동시에 처리하는 연산이 늘어나고 

메모리와의 처리 속도를 완화하기 위한 캐시는 크기가 클수록 성능이 좋다.

특히 GPU(Graphics Processing Unit)는 그래픽을 처리하는데 특화된 프로세서이다.

CPU가 직렬 처리에 최적화된 몇 개의 코어로 구성된 반면

GPU는 병렬 처리에 최적화된 작고 많은 코어로 이루어져 있다.

 

 

CPU 용어

소켓 수 : CPU의 개수 

코어 수 : CPU의 주요 계산 부분, 복수의 코어가 있는 것을 멀티코어라 함

스레드 수 : 하나의 코어에서 처리할 수 있는 process 수(작업 수)

캐시 : CPU와 메인 메로리 사이에 캐시 메모리라는 빠른 속도의 메모리

          캐시 메모리에 자주 엑세스하는 데이터를 저장해서 상대적으로 느린 메인 메모리로의 엑세스를 줄여 

          CPU의 처리 성능을 높인다.

 

 

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

참고로 CPU i3,i5,i7을 구분하는 기준은 코어와 스레드 개수의 차이이다.

intel CPU i3시리즈는 2코어 4스레드,

intel CPU i5시리즈는 4코어 4스레드,

intel CPU i7시리즈는 4코어 8스레드, 6코어 12스레드, 8코어 16스레드가 있다.

 

작업관리자로 보는 CPU

 

이용률: 현재 CPU가 부하를 받고 있는 백분율을 표시하며 높을수록 과부하되는 것이므로 100%되는 것을 가급적 피해야 합니다.

속도: 현재 CPU가 구동되고 있는 클럭 속도를 표시하며 클럭이 높으며 높을수록 처리 속도가 빠르게 증가한다.

프로세스: 현재 프로세스가 실행되고 있는 수를 표시하며 많으면 많을수록 부하가 발생할 수 있다.

스레드: 현재 프로세스들이 만들어내고 있는 처리 프로세스의 스레드 수를 표시하며 많으면 많을수록 부하가 발생할 수 있다.

작동시간 : 현재 CPU가 켜진 이후 동작하고 있는 시간

소켓 : CPU 개수

코어 : 현재 CPU의 물리적 코어 수 

논리 프로세서 : CPU의 물리적 코어와 CPU 스레드를 모두 합친 숫자

가상화: 해당 CPU로 가상(VM)을 구동할 수 있는지 표시해준다.

L1캐시: CPU 내부에 있는 L1 캐시 용량을 보여준다.

L2캐시: CPU 내부에 있는 L2 캐시 용량을 보여준다.

L3캐시: CPU 내부에 있는 L3 캐시 용량을 보여준다.

 

 

Keyword3

메모리: 주기억장치인 메모리는 데이터 용량이 크거나 전송 속도가 고속일수록 고성능이다.

서버용으로는 전력 소모가 적고 오류 처리가 탑재되어 있는 것을 주로 선정한다. 

 

 

Keyword4

스토리지 : 스토리지란 컴퓨터(일반적인 노트북 부터 서버급 까지 모두 포함)가 접근할 수 있는 데이터를 저장하기 위한

별도의 장소 또는 장치를 말합니다. 크게 RAM과 같이 내부 장치로 쓰이는 1차 스토리지와 하드디스크, 테이프 등과 외부 장치로 쓰이는 2차 스토리지, 그리고 최근에는 클라우드 스토리지로 표현하는 3차 스토리지로 구분할 수 있습니다.

보통 스토리지의 속도가 제일 느리기 때문에 스토리지의 용량이나 읽기, 쓰기 속도가 시스템 전테의 속도에 영향을 주는 경우가 많다.

ex) HDD, SSD

 

하드디스크 : 하드디스크는 램(RAM)과는 달리 전원이 나가도 데이터가 날라가지 않는 비휘발성메모리라고도 합니다. 하드디스크는 정보를 저장하는 역할을 하기때문에 하드디스크가 고장이 나게 되면 컴퓨터를 사용하지 못하게 됩니다. 그러므로 하드디스크는 관리가 중요합니다

 

SSD : SSD는 Solid State Drive의 약자로서 메모리를 이용한 기억장치 입니다. 하드디스크보다 크기가 작고 무게도 가볍고

속도도 훨씬 빠르기에 요즘 많이들 사용하고 있는 추세입니다.

 

스토리지의 연결 방식의 종류 

 

1.DAS(Direct Attached storage)

 

저장 장치가 직접 개별 호스트(PC)에 연결되어 사용 및 관리되는 방식이다. 해당 호스트의 환경에서 저장 공간이 부족해질 경우 새로운 저장 공간을 가장 쉽게 확보할 수 있는 방법입니다.

 

 

장점:

각 호스트에서 저장 장치까지 물리적으로 가까운 곳에서 접근 가능

확장이 비교적 쉬움

 

단점:

데이터가 증가함에 따라 외부 저장 장치를 계속 추가하게 되는 경우에는 호스트의 운영 효율성이 떨어짐

호스트에 장애가 발생할 경우 저장 장치의 접근이 제한 

물리적인 공간이 한계에 봉착 했을 때 확장이 더이상 어려움

 

2. NAS(Network Attached Storage)

 

스토리지를 네트워크(ex) LAN)에 부착하여 네트워크에 기반한 데이터 공유 방식을 의미합니다.  

특히 NAS 방식은 스토리지가 다른 호스트 없이 직접 네트워크에 연결되는 방식입니다. 

유명한 FTP(File Transfer Protocol)가 NAS의 프로토콜중 하나입니다. 

 

 

장점:

1. 네트워크를 통해 데이터를 공유하므로 높은 대역폭의 네트워크를 통한 전송 속도 확보가 가능

2. 여러 다른 장치들의 데이터 저장/읽기에 용이

3. 전용 OS를 사용하여 DAS 방식 대비 I/O 입/출력 속도가 더 높음

4. 단순한 시스템아키텍처 구조로 유지 관리가 비교적 편함

5. 스케일 아웃 방식(여러 NAS 스토리지를 추가로 계속 증설 하는 방식)의 NAS는 클러스터 구성이 가능하므로 

성능과 용량을 동시에 높일 수 있음

 

단점:

1. 네트워크를 사용해야 하므로 대역폭에 제한이 있음

2. 네트워크 병목 현상에 취약

3. 스케일 업(새로 추가하는 것이 아닌 기존 NAS 장치 자체의 업그레이드)에는 한계

 

아울러 NAS는 블록보다 상위 개념인 파일을 저장 단위로 사용합니다. 파일은 폴더에 저장되며 하나의 폴더에 여러 하위 폴더가 겹쳐져서 존재하는 계층 구조를 가지고 있습니다. 또한 각 파일은 이름과 파일에 대한 세부 정보를 나타내는 메타데이터를 가지며, 이를 활용해 특정 파일이 어느 위치에 있는지 알 수 있습니다.

 

 

Keyword5

가상화 : 한 대의 물리 서버에는 보통 하나의 운영체제만 가동할 수 있다.

반면 가상화 기술을 사용하면 한 대의 물리 서버에서도 여러 개의 게스트 운영체제를 가동할 수 있다.

이것을 서버 가상화라고 부른다.

가상화 환경에서는 물리 서버가 제공하는 CPU, 메모리, 네트워크, 디스크 등의 하드웨어 자원을 각 게스트 운영체제에 자유롭게 할당한다. 여러 운영체제마다 물리 서버를 준비하는 것과 비교했을때, 한 물리 서버의 하드웨어 자원을 최대한 활용할 수 있는 가상화를 잘 이용하면 비용을 많이 줄일 수 있다.

 

물리 서버를 가상화할 때의 장점과 단점 

 

장점

1. 비용을 줄일 수 있다. (한 물리 서버의 자원을 최대한 이용하므로) 

2. 게스트 운영체제의 하드웨어 자원을 쉽게 늘리거나 줄일 수 있다.

3. 물리 서버는 하드웨어가 노후화 되므로 일정 기간이 지나면 하드웨어를 교체해야 한다. 하지만 게스트 운영체제는 다른 새로운 물리 서버에 가상화 환경을 준비한 다음 간단히 옮길 수 있다.

 

단점

1. 다른 게스트 운영체제가 하드웨어 자원을 많이 사용하면 다른 게스트 운영체제의 동작이 불안정해진다.

2. 한 번 만들어진 게스트 운영체제는 이후에 사용하지 않아도 삭제되지 않고 그대로 남기가 십상이다.

 

 

가상머신(Virtual Machine) : 가상 머신을 사용하면 현재 사용하는 Windows를 변경 없이

그대로 사용하면서도 여러대의 Windows Server를 운영하는 효과를 거둘 수 있다.

 

가상머신 소프트웨어 :  진짜 컴퓨터에 설치된 운영체제(호스트 OS)안에 가상의 컴퓨터를 만들고 

그 안에 또 다른 운영체제(게스트 OS)를 설치/운영할 수 있도록 제작된 소프트웨어 

 

진짜 컴퓨터에 설치되어 있는 윈도우 -> 호스트 운영체제(게스트 OS)

가상머신에 설치된 윈도우 -> 게스트 운영체제(게스트 OS)

 

 

가상머신을 쉽게 가짜 컴퓨터로 생각해도 좋다. 

원래는 CPU, RAM, 하드디스크 등이 있는 진짜 컴퓨터에만 운영체제를 설치할 수 있는데 

가상머신 프로그램이 소프트웨어적으로 가짜 CPU, 가짜 RAM, 가짜 하드디스크 등을 가진 

가짜 컴퓨터(가상머신)를 만들어서 그 안에 운영체제를 설치할 수 있게 해주는 것이다.

 

 

가상머신 소프트웨어의 종류 : VMware Workstation pro, VMware Workstation Player 등

 

 

Vmware의 특징

 

1. 컴퓨터 1대로 실무환경과 비슷한 네트워크 환경을 구성할 수 있다.

2. 운영체제의 특정 시점을 저장하는 스냅숏 기능을 사용할 수 있다.

3. 하드디스크 등의 하드웨어를 내 마음대로 여러 개 장착해서 테스트 할 수 있다.

4. 현재 pc의 상태를 그대로 저장해 놓고 다음 사용할때 현재 상태를 이어서 구동할 수 있다.