thumbnail

1. 서버

  • PC와 구조는 동일하나 CPU나 메모리, 디스크를 좀 더 많이 장착할 수 있어 훨씬 높은 성능과 뛰어난 안정성을 지닌 장비

  • 웹 서버 : HTTP나 HTTPS 프로토콜을 사용하여 사용자들에게 웹 기반의 서비스를 제공할 수 있도록 해주는 ‘소프트웨어로의 서버’

메인프래임

  • 사전적 정의 : 수많은 사용자와 애플리케이션, 장치를 다수의 사람에게 동시에 지원할 수 있는 컴퓨터

  • IBM에서 개발

  • 서버가 나오기 이전에 서버와 비슷한 역할을 수행할 수 있었던 장비

  • 호스트-터미널 방식으로 동작

호스트-터미널 구조(1티어)

단말기(Terminal) 는 모니터와 자판만 달려 있어서 입/출력만 담당하고 입력된 내용을 가지고 컴퓨팅(연산, 저장) 을 수행하는 구조
  • 이러한 1티어 구조에서 서버 운영에 너무 많은 비용이 들어가게 되고, 점차 PC의 성능이 좋아지게 되면서 사용자 화면(UI) 이나 프로그램 처리 등의 비즈니스 로직은 클라이언트에서 수행하고 대용량의 배치나 실시간 처리는 서버에서 수행되는 ‘클라이언트-서버 구조(2티어) 로 발전하게 됨

  • 메인프레임은 작은 장비 여러 대를 쓰는 분산 처리 방식이 아닌 소수의 대형 장비를 활용한 집중 처리 방식 사용

  • 중앙 집중 처리 방식은 안정적이지만 비용이 많이 들고 유연성이 떨어지는 한계를 가지고 있음

  • 중앙 집중 처리를 위해 동시성 제어 기능 제공

    • 예를 들어 하나의 큰 창고를 관리하는 관리자가 10명이 있다고 가정할 때 A라는 관리자가 물건을 입고하거나 출고를 하게 된다면 그 사실을 나머지 9명의 관리자도 알아야 한다.
동시 처리 시스템이 갖추어야 할 네 가지 속성(ACID)

- Atomic : 트랜잭션은 완결된 처리가 되어야 한다. 일주만 수행되고 중단되어서는 안 된다.
- Consistency : 트랜잭션은 데이터를 일관된 상태로 유지할 수 있어야 한다.
- Isolation : 트랜잭션은 동시에 실행되는 다른 트랜잭션에 무관하게 실행되어야 한다.
- Durability : 정상 처리된 트랜잭션의 결과는 영구히 유지되어야 한다.

* 트랜잭션 : 하나의 완결된 업무 처리의 단위이자 더 이상 나눌수 없는 업무 처리의 단위를 뜻한다.
  • 메인프레임의 장점
    1. 신뢰성 : 오랜 노하우로 솔루션의 완성도가 높음
    2. 안정성 : x86서버 대비 CPU 사용률이 높아진다 하여도 성능저하가 발생하지 않는다.
    3. 유연성 : 수준 높은 파티션 기능 제공 (예를 들어 CPU가 10개가 있다고 가정하였을 때 1개를 개발용, 2개를 검증용, 7개를 운영용으로 할당 가능)
  • 메인프레임 동시성 제어 기술
    • CF(Couple Facility) : 두 개 이상의 메인프레임을 논리적으로 하나의 메인프레임으로 묶는 기술
    • DASD (Direct Access Storage Device) : 두 개 이상의 메인프레임이 하나의 스토리지를 공유하기 위한 솔루션

    Unix 서버

메인프레임이 출시된 이 후 사람들은 메인프레임보다 작고 접근성이 쉬운 새로운 시스템을 원하게 되었고 그렇게 탄생한 것이 Unix 서버

  • 대표 제조사 : IBM, HP, SUN

  • Chipset : POWER(IBM) , PA-RISC

  • 서버 가상화 : 물리적인 서버 1대에 여러 논리적인 서버를 설치하여 자원을 효율적으로 사용

x86 서버

x86 계열 CPU를 사용하는 서버

  • 대표 제조사 : HP, 델, 레노보, 시스코, 화웨이
x86이란 

인텔이 개발한 CPU 아키텍쳐 명칭

- x86 : 32 bit
- x64 : 64 bit 

-형태

  • 타워 형
  • 랙(Rack) 형
  • 블래이드 형

2. 스토리지

데이터를 저장하고 읽기 위한 하드웨어 + 복제, 백업 전용 솔루션

  • 연결 방식
    • DAS (Direct Attached Storage) : 서버와 스토리지가 직업 연결
    • SAN (Storage Area Network) : SAN 스위치를 통해 서버와 스토리지를 연결하여 성능이나 확장성을 보장하는 연결 방식
    • NAS (Network Area Storage) : 이더넷 네트워크를 통해서 서버와 스토리지가 연결
  • 대표 제조사 : EMC, Netapp, HDS, HP

  • 스토리지 선택 시 고려 사항

    1. 성능 : 스토리지 컨트롤러의 처리 대역폭, 캐시 용량
    2. 확장성 : 디스크 장착 갯수, 최대 용량
    3. 호환성 : 서버 인터페이스 및 운영체제 별 지원 여부
    4. 가용성 : RAID
    5. 활용성 : 데이버 복제나 백업하는 등 솔루션 지원 여부
  • 스토리지를 선택 함에 있어서 단순히 IOPS를 비교하거나 BMT, POC을 통해 적합성 여부를 확인

    • IOPS (Input/Output Operations Per Second) : 초당 입/출력 처리량
    • BMT (Benchmart Test) : 서버/스토리지/소프트웨어 등을 도입하기 전에 동일한 조건에서 기능과 성능과 가용성 항목에 대해 테스트하는 것
    • POC (Proof of Concept) : 제품 선정보다는 제품 자체의 기능 검증이 주된 목적이 있으며, 해당 기능이 IT운영에 필요한 기능이며 목적에 부합한디를 사전에 검증하는 것

RAID

미러링

같은 데이터를 2개 이상의 디스크로 복제하여 저장함

  • 장점 : 안정성이 높음
  • 단점 : 비용이 올라감

스트라이핑

하나의 데이터를 2개 이상의 디스크로 분산 저장함

  • 장점 : 성능(Read/Write)이 올라감
  • 단점 : 안정성이 떨어짐 (디스크 하나가 망가지면 데이터 전체 손실)

RAID 0

스트라이핑 적용

RAID 1

미러링 적용

RAID 5

스트라이핑 + 패러티

RAID + 핫 스페어

여분의 디스크를 두어 고장이 나면 핫 스페어가 RAID 그룹에 들어가게 되어 활성화되고, 고장 난 디스크는 그룹에 빠진다.

데이터 복제

백업을 하거나 혹은 다른 목적으로 활용하기 위해 동일한 데이터를 다른 스토리지에 그대로 복사하는 것

내부 복제

같은 스토리지 내에서 원본과 같은 데이터를 복제하는 방식

외부 복제

원본과 다른 곳에 있는 스토리지로 같은 데이터를 복제하는 방식

Snapshot

원본 데이터를 가리키는 주솟값만 갖는 포인터와 변경 이력만 관리하는 복제 개념

IOPS

하나의 I/O를 처리하는 데 걸리는 시간 = 암 이동 시간 + 디스크 회전 시간 + Read/Write

IOPS는 소트리지 사양이나 HDD 종류, I/O 블록 사이즈, 서버 스레드 개수 등의 변수에 따라 다소 차이가 날수 있다.

3. 백업

사용자가 사용하는 정보 시스템에서 가장 중요한 데이터를 보로하기 위해 테이프나 디스크에 미리 저장했다가 유사시에 원래의 데이터를 복구하기 위해 사전에 방비하는 활동

백업 받는 대상

  • OS 백업
  • 데이터 백업 (데이터베이스, 일반 파일)

백업 방식

  • 직접 연결
  • SAN
  • 네트워크 연결 (LAN)

Tape

  • DAT(Digital Audio Tape)
  • LTO(Linear Tape Open)

중복 제거(De-Duplication)

중복 제거 솔루션의 핵심은 백업 대상 데이터에서 기존에 백업된 내용은 다시 저장하지 않고 새로운 또는 변경된 내용만을 저장해서 스토리지 저장 효율을 향상 시키는 것

벡업 대상 데이터에서 중복된 데이터는 한 개만 저장하고, 나머지는 일종의 인덱스 형태로 메터데이터에 저장하는 솔루션입니다.

중복 제거 방식

  • 인라인 방식 : 백업 중에 중복 제거하는 방식
  • 포스트 프로세싱 : 백업 장치에서 백업 완료 후에 유휴 시간을 이용하여 백그라운드로 중복 제거하는 방식

백업 중요성을 반영한 설계와 선정

백업 장치를 도입하기 전 고려해야 할 특성

  • 백업 목표 시간, 복구 목표 시간, 백업 주기, 보관 주기, 백업 용량, 백업 정책

4. 네트워크

서바와 네트워크 장비 간에 케이블을 통해 데이터를 주고받을 수 있게 되어 있는 환경이나 망 그 자체를 의미

프로토콜

  • 컴퓨터나 네트워크 장비가 서로 통신하기 위해 미리 정한 약속, 규약
  • IETF, IEEE에서 국제 표준을 정의
  • 가장 대표적은 프로토콜은 TCP/IP

OSI 7 Layer

각 계층은 개별적으로 동작하는 것이 아니라 상호 연관성을 가지고 동작한다.

송/수신자가 서로 다른 운영체제. 브라우저, 회선 환경에서도 통신이 이루어져애 하기 때문에 송신자는 각 계층에서 필요한 정보를 전달하기 위해 상위에서 하위 계층으로 이동하면서 ‘헤더’라고 부르는 구분자를 계속 덧붙이게 된다.

TCP/IP 헤더와 특징

IP 헤더

IP 헤더는 20 byte이고 각각 32비트 크기의 source IP주소와 destination IP주소를 가지고 있습니다.

TCP 헤더

TCP는 16비트의 주소 크기를 가지며 총 65536 개의 주소를 가질수 있다.

  • Retransmission : 데이터가 정상적으로 전달되지 않으면 다시 전달
  • Reordering : 데이터의 순서를 바로 잡아 주는 기능
  • Flow control : 전송 속도 조절

TCP와 IP를 하나로 묶어서 표준이 된 이유는?

IP는 Connectionless의 특성을 가진다. 여기서 Connectionless는 상대방의 연결 여부에 상관없이 데이터를 보내고 받는다.

이렇게 막무가내로 보내버린 데이터의 신뢰성을 보장하기 위해 TCP가 그 역할은 한다.

TCP는 Connection-Oriented 의 특성을 가진다. 여기서 Connection-Oriented란 상대방이 데이터를 받았음을 보장한다.

네트워크 장비

L1 레벨

  • 리피터 : 장거리 전송 시 신호가 감쇄하고 잡음이 발생하기 때문에 이를 보완해주는 장치
  • 허브

L2 레벨

  • L2 스위치 : 송신자 헤더에 포함된 MAC 주소를 확인하고 자신이 가지고 있는 MAC 주소 테이블을 참조하여 데이터를 전달
  • VLAN : 물리적인 LAN을 가상의 여러 개의 LAN으로 확정할수 있도록 해주는 기술, 서로 다른 VLAN끼리 통신하기 위해서 L3 스위치 필요
  • VLAN = 로지컬 네트워크 = Subnet

L3 레벨

  • L3 스위치 : 송신자의 IP 헤더를 확인하여 IP 주소를 확인 한 후 자기가 가지고 있는 라우팅 테이블을 참조하여 해당 패킷을 다음 위치의 장비로 전달하는 역할

L4 레벨

  • L4 스위치 : TCP 영역, 서비스의 상태를 모니터링하고 지능적으로 로드밸런싱 기능 제공

로드 밸런싱

  • 라운드 로빈 : 분산 서버에 순차적으로 트래픽 분배
  • 최소 연결 방식 : 세션이 적은 서버로 분배
  • 최소 응답시간 방식 : 응답 시간이 가장 작은 서버로 분배
  • hash 방식 : 클라이언트의 IP, Port 정보를 가지고 고유의 hash key를 만들어서 연결해 주는 방식

L7 레벨

  • L7 스위치 : URL, Cookie, Contents와 같은 어플리케이션 정보를 바탕으로 로드밸런싱, 웹 가속, SSL 가속 기능을 제공

  • 웹 캐싱 : 자주 호출되는 오브젝트를 L7 스위치에 캐싱하여 전달하는 기능으로 사용자 요청이 웹 서버까지 전달되지 않아서 웹 서버의 부하를 감소시켜 주고 응답 시간을 개선

  • 웹 압축 : 오브젝트를 압축하여 전송

5. 가상화

가상화란??

서버뿐만 아니라 물리적으로 존재하는 CPU, 메모리, NIC, 스토리지 같이 물이 장치를 논리적으로 연결하거나 분할, 통합하여 새로운 장치로 만들어 낸 것

가상화 기술을 사용하는 이유

  • 서버의 성능이 급격하게 증가하고 남는 자원의 활용에 대한 필요성 증가
  • 시장의 변화를 민첩하게 대응하기 위해 IT리소스를 유연하게 관리 필요성 증가
  • 정보 보호
  • 자원 절연 (Resource insulation) : 특정 물지 장치가 비정상인 상태에서도 논리 장치의 가용성을 보장하는 것

공유(Sharing) 가상화

다수의 가상 자원을 하나의 물리적 자원가 연결시켜서 시간 분할 기법으로 물리적 자원을 공유하여 사용하게 하는 방법

집합(Aggregation) 가상화

여러 개의 자원을 하나로 묶어서 물리적인 용량과 성능능 향상시키노, 하나의 논리 장치로 관리할 수 있도록 만들어 주는 것

스위치

  • LACP : 하나의 스위치와 하나의 인터페이스로 통신하는 것처럼 인식하는 것
  • MLAG

스토리지

  • LUN (Logical Unit Number) : 수십 개에서 수백 개의 디스크에서 자원을 할당받아서 만든 논리적인 디스크, 수십 개에서 수백 개의 디스크에서 데이터를 찾을 수 있어서 성능도 매우 높아진다.

하이퍼바이저

여러개의 VM이 동시에 수행되도록 하는 환경을 제공하는 것

  • Type 1 : 운영체제 없이 가상화 솔루션만 동작하는 형태, 베어메탈 하이퍼바이저라고도 부른다.
베어메탈 서버(Bare-metal Server) 
소프트웨어가 설치되지 않은 하드웨어를 뜻하며, 일반적인 경우는 운영체제가 설치되지 않은 상태의 서버를 의미하나, 경우에 따라서 서버 벤더의 서버 관리 소프트웨어도 설치되지 않은 상태의 서버를 의미하기도 한다.
  • Type 2 : 운영체제와 분리되어 있는 형태, 사전에 별도의 운영체제를 설치한 다음 하이퍼바이저를 설치

전가상화

하이퍼바이저가 호스트 운영체제에서 모든 일을 처리하는 개념, 하이퍼바이저가 하드웨어에 직접 접근 가능

반가상화

일부 역할은 VM의 도움을 받아서 처리하는 개념, Xen을 기준으로 컨트롤 도메인이라는 아주 가벼운 리눅스 환경의 특수한 VM이 존재하고 게스트 도메인이 요청한 CPU와 메모리, 타이머 등에 대한 하이퍼콜은 하이퍼바이저가 처리하고 네트워크나 스토리지 I/O를 발생하는 하이퍼콜은 컨트롤 도메인이 하드웨어에 요청하는 구조

컨테이너

장점

  • VM 또는 게스트 운영체제가 없다.
  • 리눅스 컨테이너는 호스트 운영체제에서 부팅과정 없이 바로 시작한다.
  • VM에 대한 하드웨어 초기화 작업이 필요 없기 때문에 가상 환경을 시작하고 종료하는 시간이 거의 수초밖에 되지 않으며, 가상화 오버헤드가 거의 존재하지 않는다.
  • 요구되는 하드웨어 자원 수준이 낮다.

단점

  • 호스트 운영체제인 리눅스 이외의 다른 운영체제에서는 동작하지 않고, 리눅스 계열이 아닌 다른 운영체제를 설치할수 없다.

CPU 가상화 기술

워크로드의 패턴에 따라 가상 시스템에 몇 개의 CPU를 할당할지를 결정, 상황에 따라 CPU 오버커밋을 고려

오버 커밋

물리적인 용량 한계를 넘어서 할당하는 개념, 예를 들어 식당 테이블 의자가 10개가 있을 때 점심 시간에 30명의 사람들이 예약을 하는 경우
물리적인 자원을 초과한다. 
오버 커밋 비율이 높을 수록 자원 경합에 의한 성능 지연 현상이 발생할 수 있다.

워크로드 패턴

시스템에서 어플리케이션을 수행하는 동안 소모하는 인프라 자원(CPU, 메모리, I/O)에 대한 사용 형태 및 사용량을 의미한다.

메모리 가상화 기술

메모리는 공간을 차지하는 개념이기 때문에 먼저 메모리 공간을 차지한 VM이 메모리를 해제하거자 재기동하기 전까지는 메모리 공간을 할당받지 못하여 기다리는 VM이 발생할 수 있기 때문에 CPU보다 더 보수적으로 설계해야 한다.

여기서 보수적이라는 것은 오버커밋 비율을 최대한 낮추는 것

  • 벌룬 드라이버 : 메모리 오버커밋 상태에서 게스트 OS의 메모리 사용량이 하이퍼바이져 메모리 크기를 초과하면 하이퍼바이저 디스크(swap space)를 사용, 게스트 OS의 메모리 사용량이 줄어들면 하이퍼바이저 디스크(swap space)에 저장된 데이터를 하이퍼바이저 메모리로 이동

6. 클라우드

정의

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

접근성

누구든지 가장 직관적으로 쉽게 이용할 수 있는 것

확장성 보장

사용자의 위치에 구애받지 않고 사용자가 원하는 만큼의 무제한 컴퓨팅 용량을 언제 어디서든지 제송하는 것

클라우드 서비스 유형

IaaS (Infrastructure as a Service)

네트워크, 서버, 스토리지에서 운영체제까지 인프라 영역을 서비스 형태로 제공하는 것

AWS EC2가 대표적

리소스 풀링

스토리지, 프로세서, 메모리, 네트워크 등의 인프라 자원들을 분할하여 풀을 만들고, 시스템 성능 목표를 충적할 수 있는 만큼 가져다 사용

Rapid Elasticity (Auto Scaling)

평소에 들어오는 트래픽에 맞도록 인프라 자원(리소스)을 할당하여 사용하다가 저장한 임계치 이상으로 트래픽이 폭주할 때 그 수요에 맞쳐 자동으로 인프라 자원을 추가 할당함으로써 트래픽에 기만하게 대응할 수 있도록 하는 것

사용량 측정

사용량의 측정과 모니터링을 통해서 시간 단위로 변하는 사용량에 대한 정확한 비용 청구, 클라우드 자원에 대한 유지/보수/증설 계획 수립을 위한 표본 데이터를 추출하고, 트래픽에 따른 인프라 자원의 할당과 회수를 할 수 있게 한다.

SaaS (Software as a Service)

개발자 없이 사용자 환경에 최적화된 소프트웨어를 제공하는 것을 목표

PaaS (Platform as a Service)

오픈 스택

  • IaaS 형태의 클라우드 컴퓨팅 오픈 소스 프로젝트이다.
  • 기존 인프라 기능들이 소프트웨어적으로 구현이 되어 있다.
  • SDx(Software Defined Anything)

호라이즌(Horizon)

  • 웹 대시보드 GUI

노바(Nova)

  • 컴퓨터의 자원 풀을 관리하고 자동화하는 것
  • 하이퍼바이저 기술이나 리눅스 컨테이너 등을 제어하는 개념

스위프트

  • 오브젝트 스토리지

뉴트론

  • 수많은 네트워킹 기술을 소프트웨어 기반으로 구현한 것
  • L1부터 L7까지 그리고 방화벽 등 네트워크 관련 장비의 모든 기능을 수행

Keystone

  • 인증 관련 서비스
  • 한번 인증받은 것은 다시 인증받지 않기 위해 토큰을 발행한다.

Heat

  • 오케스트레이션 서비스
  • 오픈스텍의 모든 서비스는 기본적으로 REST API를 사용하는데 히트를 통하여 각각의 서비스에 일괄된 명령어 집합을 한 번에 전송하게 구현함으로써 매우 손쉽게 VM를 관리가 가능하다.

7. 데이터 센터

  • 기계실, 전산실, IDC(Internet Data Center)등으로 불리기도 한다.
  • 서버들을 한 곳에 모아 안정적으로 관리하기 위한 전용 건물인 데이터 센터를 세우게 되었음.
  • 데이터 센터에는 기업들의 정보 시스템들이 항상 운용될수 있도록 1년 365일 무중단 서비스를 제공해야 하므로 내진이나 안정적인 전력 공급과 인터넷 연결 및 보안이 중요하다.

8. BMT

Bench Mark Test

Tool

구분 측정 도구
CPU Sysbench
메모리 Stream, Memory Latency Checker
디스크 IOzone, Vdbench
HBA Vdbench
NIC Iperf, qperf

네트워크 장비 BMT

네트워크 장비 테스트는 대량의 패킷이 유입이 될 때 얼마나 빨리 패킷을 라우팅하는 지, 패킷 손실은 없는지를 보는게 목직.

그런 테스트 환경을 구성하기 위해서는 대량의 패킷을 발생시켜 주는 장비가 필요한데 그것이 계측기다.

L2/백본 스위치 BMT 사례

네트워크 장비의 가용성, 대역폭 테스트를 진행한다.

  • 스네이크 체인 방식

L4 스위치 BMT 사례

L4 기본 기능인 가상 IP, 포트 제공과 서버간 부하분산 성능을 측정하기 위해 CPS, MCC 지표를 사용한다.

  • CPS (Connection Per Seconds) : 1초당 생성 가능한 연결의 수
  • MCC (Max Concurrent Connection) : 동시에 유지 가능한 연결의 수

L7 스위치 BMT 사례

  • 웹 가속 기능 중에 오브젝트 압축 / 코드 압축 기능 두 가지를 주로 테스트
  • SSL 가속 기능 테스트

스토리지 장비 BMT

가능한 적은 비용으로 비즈니스를 수행하기에 충분한 성능과 용량을 확보한 스토리지를 구매하기 위해 진행

공정한 테스트를 위해 충분한 서버 및 FC 채널 수를 확보, 서버 메모리 캐시를 이용하지 못하도록 조치

SPC(Storage Performance Council)

수많은 스토리지 제품에 대해서 공개적으로 테스트한 결과를 인터넷이 공개하는 기관

Vdbench

스토리지 BMT를 하기 위핸 Tool

태그:

카테고리:

업데이트:

댓글남기기