"인프라 엔지니어의 교과서"를 읽고 내용 정리
1장 : 인프라 엔지니어의 업무
인프라 엔지니어 업무
1. 인프라 설계
인프라 만드는 목적 이해하고 조건을 기준으로 정리한다. 그 다음 그 조건에 맞는 적절한 기획서와 설계서 작성
2. 인프라 구축
기기의 운반과 조립, 장착, 설치, 설정, 동작 테스트, 부하 테스트
SI업계 : 기기를 들여와서 설치하는 하드웨어 관련 작업은 CE가, 서버스토리지 설정은 SE가, 네트워크 장비 설정은 NE가 함.
3. 인프라 운영
장애대응, 수용량 관리, 인프라가 원인이 아닌 문제의 파악
인프라를 구성하는 요소
퍼실리티 : 건물,설비,시설
서버,스토리지 : 서버와 데이터를 대량으로 저장
네트워크 : 서버와 스토리지를 연결하고 인터넷에 접속
기술자 관점에서 보는 인프라 엔지니어
1. 서버 하드웨어
2. 서버 운영체제
3. 스토리지
4. 네트워크 설계와 구축
5. 네트워크 장비
선정자로서의 인프라 엔지니어
1. 시스템 구성
- 메일 시스템을 구축하는 것도 다양한 구성 패턴을 상상할 수 있음
- 최선의 구성을 선택하게 되야 함
- ex) 이중화 구성, 데이터 영역 분리 구성
2. 서버 사양 선정
3. 네트워크 구성
- 렉에 몇개의 스위치 설치?
- 각 스위치 수용량 어느정도?
- 보증 기간
등
4. 데이터베이스 설계
5. 운영 시스템
애플리케이션+미들웨어 = 개발자의 책임 범위
미들웨어+운영체제+BOS하드웨어+연결 = 서버 엔지니어의 책임 범위
연결+네트워크 스위치 = 네트워크 엔지니어의 책임 범위
2장 : 서버
서버의 종류
1. 랙 마운트형과 타워형 서버의 차이
- 랙 마운트 : 데이터 센터나 서버 룸에 설치된 랙
- 타워형 서버 : 사내서버, 사무실, 점포
2. 엔트리, 미들레인지, 하이엔드 서버
- 엔트리 서버 : 웹서버, 애플리케이션
- 미들레인지 서버 : 데이터베이스 서버, 기간계 서버
- 하이엔드 서버 : 데이터베이스 서버, 기간계 서버
3. IA 서버
- 인텔 호환 CPU 탑재하고 일반 컴퓨터와 같은 아키텍처를 기반으로 해 만들어짐
4. 엔터 프라이즈 서버
- 액세스가 대량으로 일어나도 견딜 수 ㅣㅆ도록 수용량이 크고 내구성이 높은 기기
서버와 일반 컴퓨터 차이
서버란,,,
- 24시간 365일 가동되는 것을 전제로 하기 때문에 하드웨어가 잘 고장나지 않고, 시스템이 멈추지 않게 설계
- 더 많은 메모리, 하드디스크등의 하드웨어 자원 장착
서버 선정
1. 서버의 조건
- 필요한 하드웨어 자원의 사용량 정하기
- CPU, 메모리, 디스크, NIC포트수
- RAID 유무, PSU 이중화, 보수 연수, 보수 수준, 확장성, 물리 사이즈와 중량
2. 서버 사양 결정 방법
- 실제 환경을 시험적으로 구축해 측정 결과 보고 판단
- 임시로 결정한 서버 사양의 기기를 현장에 투입해 실제 하드웨어 자원의 이용 상황을 측정한 다음 서버와 서버의 부품을 늘리거나 줄임
- 소거법으로 사양을 좁혀감
3. 스케일 아웃과 스케일 업
스케일 아웃 : 성능이 부족해지면 서버의 수를 늘려서 수용량을 늘림
스케일 업 : 성능이 부족해지면 메모리 증설 등 부품을 추가/교환하거나 상위 기종으로 교체해 서버 성능을 높임
4. 업체 선정
CPU
1. 성능과 발열, 소비전력
배경
이전에는 동작 주파수를 올려 연산 능력을 높였지만,, 일반적으로 cpu의 연산능력이 높아질수록 발열과 소비 전력도 커지므로 그것을 억제하는 방향으로 진화. 이제는 동작 주파수를 올려도 소비 전력이 증가한다는 단점이 더 커지게 됨.
현재
따라서 최근에는 동작 주파수를 어느 정도 억제하는 대신, 멀티코어나 멀티스레드 방식을 통해 하나의 cpu로 동시 처리할 수 있는 연산 개수 늘려서 연산 능력 향상을 유도
2. cpu 용어
소켓 수 : cpu 개수
코어 수 : cpu의 주요 계산 부분
복수 코어 = 멀티 코어
스레드 수 : 하나의 코어에서 처리할 수 있는 수
동작 주파수 : 1초당 클럭수. 동작 주파수가 높을 수록 처리 속도 빨라짐
캐시 : 자주 액세스하는 데이터를 저장해 상대적으로 느린 메인 메모리로서의 액세스 줄여서 cpu 성능 높임
하이퍼스레딩 : 하나의 코어로 두개 처리 실행
터보 부스트 기술 : cpu 의 속도를 자동으로 기준 클럭보다 빠르게 동작시킴
3. cpu 선정의 포인트
- 성능 : 요구하는 연산 능력을 만족하는가
- 가격 : 가격 타당한지
- 사용할 소프트웨어의 라이선스 체계
- 소비 전력
메모리
메모리는 단기 기억 영역이라고 불리며 일시적으로 데이터를 기억할 수 있지만 전원이 공급되지 않으면 데이터가 모두 지워짐
1. 성능
- 메모리 속도=메모리 자체의 속도와 cpu와 각종 버스 간의 데이터 전송폭을 모두 고려
- 보통 DDR3 메모리
2. 메모리 용어
- 슬롯 : 메인보드에 있는 메모리 삽입구
ex) 메모리 슬롯 8개=메모리 8개 삽입
- ECC 메모리 : 메모리 고장으로 비트 반전 오류가 발생했을 때, 자동으로 보정, 감지 할 수 있도록 ECC라고 불리는 패리티 정보가 추가된 메모리를 'ECC 메모리'라고 함
추가) 일반 메모리를 사용하면 메모리고장이 발생하면 바로 운영체제 수준에서 이상 종료되지만, ECC 메모리를 사용했을 때는 메모리 고장이 발생해도 비트 반전 오류를 메모리가 스스로 바로 잡음(경고도 보냄)
- 채널
cpu와 메인보드의 칩셋이 복수의 채널을 지원하면, 채널별로 같은 종류의 메모리를 탑재해 데이터 폭을 넓히고 성능을 높일 수 있음
- 하나의 메모리로는 64bit 데이터폭으로 전송
- 두개의 메모리로는 128bit 데이터폭으로 전송
- 랭크
- 메모리 컨트롤러가 메모리의 DRAM에서 데이터를 입출력하는 단위
- 서버에 메모리를 삽입할 때 랭크의 총 사용 수가 많아지도록 조합하면 액세스 성능이 향상
- UDIMM : 버퍼없는 DIMM
- RDIMM : 레지스터 DIMM
- LDIMM : RDIMM을 발전시킨, 메모리 칩 사이의 모든 통신이 버퍼 회로를 매개로 이루어진 DIMM. 고속 전송 실현 가능
- LV : 저전력 실현한 메모리
3. 메모리 선정 포인트
용량, 성능, 확장성
디스크의 종류
SATA 하드디스크
가격저렴. 하루 8시간 정도 가동 용도
SAS 하드디스크
고속동작. 24시간 365일 가동 가능
FC 하드디스크
초고속동작
SSD
반도체 소자 메모리를 기억 장치에 이용한 디스크. 저전력이고 빠르지만 매우 배쌈. 또한 쓰기와 지우기를 반복하면 성능이 떨어짐. 수명이 짧음
RAID
성능과 내장애성을 높이기 위한 목적으로 이용됨
RAID 레벨
0,1,2,3,4,5,6 까지 일곱 단계
RAID 성능
RAID 구성하면 디스크 I/O 성능(서버와 스토리지 사이에 주고받는 데이터의 읽기, 쓰기 성능) 높일 수 있음
- 디스크 두개를 병렬로 연결해 사용=>두배 빠르게 디스크 읽고 쓸 수 있음
- 디스크를 병렬로 여러 개 사용할 때의 디스크 수=스트라이핑 개수
- 스트라이핑 개수 늘릴수록 디스크 I/O 성능 높아짐
RAID5 vs RAID10
RAID5 : 용량 많이 확보할 수 있는 대신 속도 느림
RAID10 : 실제 용량이 줄어드는 대신 속도 빠름ㄱ
RAID5 : 패리티 정보를 한 종류만 이용. 응답속도 빠름
RAID6 : 패리티 정보를 두 종류 이용. 응답속도 느림
가상화
- 서버 가상화 : 한 대의 물리 서버에서도 여러 개의 게스트 운영체제를 가동할 수 있음
- 가상화 환경에서는 물리 서버가 제공하는 하드웨어 자원을 각 게스트 운영체제에 자유롭게 할당
물리서버 vs 가상서버
물리서버 : 데이터베이스 서버, 애플리케이션 서버
가상 서버 : 웹 서버, 개발서버, 메모리 db
물리서버를 가상화할 때의 장단점
- 장점
- 비용 줄임
- 하드웨어 자원 쉽게 늘리거나 줄일 수 있음
- 게스트 운영체제는 다른 새로운 물리 서버에 가상화 환경을 준비한 다음 간단히 옮길 수 있음
- 단점
- 다른 게스트 운영체제가 하드웨어 자원을 많이 사용하면 다른 게스트 운영체제의 동작이 불안정해짐
- 한 번 만들어진 게스트 운영체제는 이후에 사용하지 않아도 삭제되지 않고 그대로 남기가 십상
가상화 모델
호스트 운영체제 타입 : 일반 운영체제에 게스트 운영체제를 관리하는 프로그램을 설치해서 가상화하는 방식
하이퍼바이저 타입 : 호스트 운영체제 대신 가상화 전용 운영체제를 사용
가상화 환경의 종류
- 상용 소프트웨어
VMware vSphere : 가상화 업계의 리더적 입장. 안정성 편리성 good
Hyper-v : 마이크로스프트가 제공. 비용상 이익 기대
- 오픈소스
Xen : Iaas형 클라우드로서 Amazon Ec2에서 이용
KVM
가상화 환경을 선택하는 방법
- 상용 소프트웨어
윈도+리눅스=VMware
윈도중심=Hyper-V
- 오픈소스
리눅스 중심, 초기비용 줄이고 싶음=Xen, KVM
클라우드 : IaaS
SaaS : 애플리케이션을 서비스로 제공
PaaS : 애플리케이션 실행 환경을 서비스로서 제공
IaaS : 시스템 인프라를 서비스로서 제공
IaaS 특징
- 사내에 물리 서버를 두지 않아도 사용할 수 있음 -> 물리 서버를 관리하는 엔지니어가 필요 없음, 물리적 제약이 없이 이용하고 싶은만큼 서버 증강 가능
- 사용한만큼 비용 발생
클라우드 환경에서의 인프라 이용
- IaaS에서는 클라우드 업체로부터 서버의 인스턴스나 물리서버의 사용권을 빌려서 원격에서 각종 설정을 해서 서버 기능사용가능
AWS
- IaaS에서 가장 영향력있는 미국 아마존사의 아마존 웹 서비스
- Amazon EC2/Amazon S3
클라우드의 약점
- 하드웨어자원이 대량으로 요구되는 스케일 업에 약함
- 클라우드에서는 물리서버 관리를 클라우드 업체가 책임지므로, 물리 서버에 장애가 발생했을 때 클라우드 업체로부터 복구 완료 통지를 기다려야 함
- 클라우드 업체의 착오로 중요한 데이터가 소실될 위험이 있음
클라우드에 맞지 않는 용도
- 기밀 정보 저장
- 대용량 파일 전송
- 대규모 시스템
클라우드 업체 선택법
- IT인프라를 자사에서 구축하거나 관리할 수 있는 기술이 있는 회사 : 클라우드 업체 점유율 상위 몇 개 업체 중 자신들이 중요하게 여기는 특징에 가중치를 설정해 업체를 선택,이용
- IT인프라를 자사에서 구축하거나 관리할 수 있는 기술이 없는 회사 : 개발 회사나 MSP 업체에 인프라 운용 대행을 위임
3장 : 운영체제
리눅스
래드햇 계열 : Red hat Enterprise, Linux, CentOS, Fedora, Vine Linux, Scientific Linux, Oracle Linux
데비안 계열 : Debian KNOPPIX, Ubuntu, Linux Mint
Red hat Enterprise : 상용 운영체제의 안정성과 오픈소스로서의 무료 운영체제의 이점을 모두 만족. 패키지의 동작 안정성이 중시되므로 오픈소스의 버전이 올라가도 곧바로 최신 버전이 제공되진 않음
윈도 서버
PC용 위도 운영체제의 GUI를 따르고 있기 때문에 서버 운영체제 사용에 익숙하지 않은 사람에게 문턱이 낮은 장점
윈도 서버 선정 이유
- 윈도 서버에서 실행되는 소프트웨어를 사용하고 싶음
- 닷넷 프레임워크를 사용하고 싶음
- 액티브 디렉터리 환경을 사용하고 싶음
윈도 서버의 라이선스 체계
기본적으로 Standard Edition과 Datacenter Edition 두가지로 집약
cpu가 두개를 넘어가는 서버에서는 cpu 두개 당 라이선스 하나를 추가로 구매해야 윈도 서버 이용가능
유닉스
현재, 엔터프라이즈 서버 운영체제로 이용되는 일이 많아졌고, 이런 점에서 엔터프라이즈 서버 업체 제품과 밀접하게 연결되어 있음
대표적인 유닉스 운영체제
4장 : 네트워크
네트워크 장비 선택
라우터의 역할
- LAN(로컬네트워크)끼리는 라우터라고 불리는 장비를 매개로 연결됨
- LAN에서 WAN으로 날아가는 메시지가 발생하면 라우터를 통해 다른 LAN의 라우터로 메시지를 전달함으로서 통신 이루어짐
- 통신은 라우터를 통하지 않으면 LAN 외부로 나아갈 수 없음
라우터의 구조
- 라우터가 패킷을 받으면 라우터는 패킷에 있는 목적지인 IP주소를 보고 적절한 라우터로 전송(라우팅)
- 라우터가 전송할 곳을 결정할 때는 라우터에 미리 설정된 라우팅 테이블(목적지 정보)을 참조
- 목적지 IP주소를 포함하는 네트워크 주소와 IP 주소가 라우팅 테이블에 있을 때는 라우팅 테이블에 따라서 패킷을 전송하지만 라우팅 테이블에 해당 라우터가 없을 때는 기본 게이트웨이로 전송
- 종류 : 스태틱 라우팅(경로정보수동입력) / 다이내믹 라우팅(경로정보자동갱신)
라우터의 선택 포인트
- ISP나 데이터 센터 등 라우터를 연결하는 곳에서 제공되는 상위 회선의 인터페이스와 일치하는 WAN 인터페이스를 가질 것
- WAN에서의 통신 대역
- 쓰루풋
- 단위 시간당 데이터 전송량
- 라우터에 어느 정도 전송 속도를 요구할지 결정
- 통신량 많으면 스루풋 높고 빠른 라우터 도입
- 보안 기능을 라우터에도 요구할 것인가?
- 특정 IP주소나 TCP/UDP 포트 번호 이외의 통신을 차단하는 필터링 기능
- 도입 비용
L2와 L3 스위치의 역할
L2 스위치 : 업무용 스위칭 허브
L3 스위치 : 라우터 기능이 추가된 L2 스위치
두 스위치 선택 요령
- 인터페이스의 속도와 포트 수
- 지능형 또는 비지능형
- 지능형 : 웹 접속 등으로 포트 설정을 변경하거나 스위치의 상태 및 통신량 확인가능
- 비지능형 : 단순히 서버를 네트워크에 연결
- 스위칭 능력과 스위칭 용량
- 스위칭 능력 : 스위치 속도(1초에 얼마나 패킷을 처리할 수 있나)
- 스위칭 용량 : 동시에 스위칭 할 수 있는 양
- 와이어 스피드와 논블로킹 : 각 포트에 이론상 최대 통신량이 발생하는 상태
- 하드웨어 처리와 소프트웨어 처리
통신량이 대규모일 때 소프트웨어 방식으로 처리하면 cpu 사용률이 올라가서 스위칭 능력에 영향을 줌
네트워크 토폴러지
프론트엔드와 백엔드 2계층 구조
- 프론트엔드 : 토폴러지적으로 인터넷에서 가까운 곳에 위치
- 백엔드 : 토폴러지적으로 인터넷에서 먼 곳에 위치. 프론트엔드 계층을 거쳐야지만 백엔드 서버에 액세스 가능
3계층 구조
- 코어 계층 : 디스트리뷰션 계층에서 오는 통신을 집약해 인터넷 연결
- 디스트리뷰션 계층 : 현 계층의 통신을 집약해 코어 계층에 연결하고 액세스 계층 간 통신을 중계
- 액세스 계층 : 서버에서 오는 통신을 집약해서 디스트리뷰션 층에 연결
네트워크 패브릭 구조
기존=>처음에 네트워크 구성이 정해지면, 이후에는 네트워크 구성의 제약 속에서 서버와 랙의 물리적 배치를 결정해야만 함
요즘=>서버의 성능향상 및 가상화 보급으로 서버 한대에서 입출력되는 트래픽이 늘어나면서 네트워크 장비가 병목을 일으키는 상황이 증가
그래서 등장한 페브릭 구조!
네트워크 패브릭 : 액세스 계층의 L2 네트워크를 가상화해서 물리적으로 다른 랙이나 스위치를 논리적으로 한 네트워크로 보이게 하는 기술
정확히 무엇인가?
네트워크 기본 용어 요점 정리
- TCP/IP : 인터넷에서 일반적으로 이용되는 프로토콜. 이를 통해 전세계의 컴퓨터와 쉽게 통신
- OSI 참조 모델 : 컴퓨터가 가져야할 통신 기능을 계층 구조로 나눈 모델(응용,표현,세션,전송,테트워크,데이터링크,물리)
- TCP/UDP
TCP : 연결 지향형 프로토콜이며 고품질 통신을 실현. TCP에서는 보내는 쪽과 받는 쪽의 확실한 통신이 보증됨. 대신 오버헤드가 크고 느림. 확실하게 통신이 이루어져야하는 신뢰성이 필요한 애플리케이션에서 사용
UDP : 비연결형 프로토콜. 저품질이지만 속도 빠름. 연결을 지속하지 않고 데이터를 일방적으로 전송. 송수신의 확실한 통신이 보장되지 않음
- 3웨이 핸드쉐이크 : SYN 과 ACK
3웨이 핸드쉐이크는 SYN과 ACK를 서로 주고 받으며 성립
정확히 무엇인가?
TCP 프로토콜 : 연결지향적임. 상대방이 내 신호를 받을 수 있는지 확인하고 전송함
3 way-Handshake
-전송제어 프로토콜(TCP)에서 통신을 하는 장치간 서로 연결이 잘 돼있는지 확인하는 과정/방식 = 송수신자 사이에 연결 확인하는 과정
-client/server 사이에서 이루어짐
- 스위칭 : LAN안에서 L2 스위치를 통한 통신
- 라우팅 : 라우터 혹은 L3 스위치를 통해 LAN과 LAN 사이를 걸쳐 통신
- IP4 : 32bit. '172.16.5.21'
- IP6 : 128bit. '1951 : ac65 : aaaa : bbbb : cccc :: 1'
- '네트워크 인터페이스를 묶는다' 의 개념
여러개의 네트워크 인터페이스에 같은 IP 주소나 MAC 주소를 부여해서 Active-Active 등과 같은 구성으로 통신하도록 설정하는 구조. 내장애성이 올라가고 사용할 수 있는 대역이 늘어나기 때문에 사용
인터넷 연결
인터넷 회선 비용의 요금 체계
- 고정대역 사용 무제한 : 계약한 대역의 범위 안에서 마음대로 사용
- 종량과금 : 한달 통신량 따라 과금
네트워크 케이블
LAN 케이블
이더넷( 컴퓨터 네트워크 기술의 하나로, 전세계의 사무실이나 가정에서 일반적으로 사용되는 LAN에서 가장 많이 활용되는 기술 규격 )이 고속화됨에 따라 LAN 케이블도 점점 새로운 규격 등장
광파이버 케이블
5장 : 스토리지
스토리지
데이터를 저장하는 장치 = 스토리지
로컬 스토리지 + 외부 스토리지 = 스토리지
로컬 스토리지
- 서버 내부에 디스크를 설치해서 이용하는 저장 영역
- 설치 공간 절약
- 설치할 수 있는 디스크 개수와 확장성 적어짐
외부 스토리지
- DAS
- 서버에 직접 연결하는 스토리지 장비
- 로컬 스토리지만으로 용량이 부족할 때 필요한만큼 디스크 용량 늘릴 수 있음
- 많은 디스크를 설치할 수 있으므로 스트라이핑(스트라이핑은 논리적으로 연속된 데이터 세그먼트들이 물리적으로 여러 개의 디스크 드라이브에 라운드로빈 방식으로 나누어 저장하는 것) 수가 많은 RAID 로 구성해 디스크 I/O 성능 높일 수 있음
- 운영체제는 DAS에 생성된 논리 드라이브를 내장 디스크의 논리 드라이브로 인식
- 서버에 RAID 컨트롤러 보드를 꽂아 연결하는 형태 : RAID 컨트롤러 보드가 RAID 구성을 관리
- 서버에 HBA 보드를 꽂아 연결하는 형태 : 스토리지에 내장된 RAID 컨트롤러가 RAID 구성을 관리
- DAS 선택할 때 는 필요한 실제용량,성능,내장애성 및 확장성 고려
- NAS
- 네트워크를 통해 여러 대의 서버가 액세스 할 수 있는 스토리지
- 여러 대의 서버에서 데이터를 공유할 때나 여러 대의 서버에서 발생하는 백업 및 로그 파일을 한 군데에 모으는 용도로 사용
- SAN
- 블록 단위의 데이터 스토리지 전용 네트워크
- 고속.고품질 환경을 요구하는 환경에서 이용
- FC-SAN
- 파이버 채널(주로 스토리지 네트워킹에 쓰이는 기가비트 속도의 네트워크 기술) 기반으로 구축된 고속.고품질 스토리지 전용 네트워크
- IP-SAN
- 고속.고품질 통신을 가능하게 하지만 매우 비쌈
RAID 와 핫스페어
- 스토리지 장비는 인클로저 안에 디스크를 대량으로 탑재할 수 있게 설계
- 인클로저 안에 탑재된 여러 개의 디스크로 RAID를 구성해, 큰 스토리지 영역으로 사용 => 이때, 스토리지 영역은 '볼륨'
- 여러개의 디스크를 묶어 볼륨으로 사용하면 디스크 하나가 고장나도 RAID로 이중화한 덕에 금방은 서비스에 영향받지 않음->새디스크로 교환하면 됨
- 하지만 고장난 디스크를 곧바로 교환할 수 없을 때 다른 디스크마저 고장나서 RAID 구성이 깨질지도 모름=> 이런 경우 '핫스페어' 이용
핫스페어
- 다른 디스크가 망가졌을 때를 위해 대기하는 '스탠바이 디스크'
- 핫스페어가 있으면 스토리지 인클로저가 디스크 고장을 감지했을 때 자동으로 핫스페어가 활성화되며, 고장난 디스클 대신해 RAID 그룹 안에 들어감->망가진 디스크는 고장 상태로 처리돼 시스템에서 분리됨
- 핫스페어는 몇개든 할당할 수 있음
외부 스토리지 이용
도입 동기
- 저장영역을 많이 확보하고 싶음
- 디스크 I/O 성능 높임
- 스토리지를 통합해서 집중 관리 : 통합 스토리지로 복수의 스토리지를 집약하면, 저장 영역을 낭비하지 않고 유용하게 활용할 수 있어 운영 비용을 낮출 수 있음. 통합스토리지에서는 물리 스토리지를 증설해 저장영역 늘릴 수 있음
- 복수 서버에서 데이터 공유
스토리지의 고급 기능
씬 프로비저닝
- 물리 스토리지 용량보다 많은 논리 볼륨을 할당할 수 있는 기능
자동 계층화
- 서로 다른 성능의 디스크를 조합해 이용 빈도가 높은 데이터는 고가의 빠른 장비에, 이용 빈도가 낮은 데이터는 싸고 느린 장비에 자동으로 저장하는 기능
디둡
- 스토리지를 백업할때, 먼저 저장된 데이터가 있으면 그 데이터는 복사하지 않기 때문에 저장 영역을 절약할 수 있는 기능
- 데이터 압축 기능
스냅 샷
- 어떤 순간의 파일 시스템의 정지점을 순간적으로 보존해 두는 기능
- 갱신 이력 정보를 관리함으로서 그 시점에서의 파일 시스템의 상황을 복원할 수 있는 기능
6장 : 구매 및 상담
구매 및 상담
구매처 선정
방문목적을 생각해두기
업체 선정
비교 견젹
도입 테스트
해외 구매
7장 : 데이터 센터
데이터 센터 사용
데이터 센터 = 전기,온도,네트워크,보안,재해대책 등이 충분히 고려된 IT 인프라 구축에 최적의 환경 제공
데이터 센터의 냉각 시스템
- 이중 마루 냉각 방식
- 열 복도/ 냉 복도 냉각 방식
- 외기 냉각 방식
데이터 센터 선정
데이터 센터 선정 포인트
- 데이터 센터의 입지
- 서버 설치 대수
- 랙은 반입인가 대여인가?
- 이용 가능한 전원
- 무거운 하중에 대한 대응
- 방재 수준
- UPS(무정전 장치)와 발전기 성능 : 정전이 일어났을 때 어느정도나 스스로 전력을 공급할 수 있는가?
- 폐기물 처리
- 반입 공간과 주차장 유무
- 리모트 핸드 서비스 유무 : 장애가 발생했을 떄 전화를 걸어 전원을 끄고 켜주는 서비스 필요한지
- 사용자 룸 유무
- 케이지 유무
- 네트워크 회선의 커넥티비티
- 비정기적 요구에 강함
- 물품 대여의 유연성
- 매점과 숙박시설 유무
- 비용
랙에 장비를 설치
네트워크 장비 설치
- 네트워크 장비를 랙의 맨위에 설치하는것이 편리 : 랙을 넘어서는 스위치 간 배선이 쉽고 LAN 케이블을 늘어뜨려 둘 수 있음
- 네트워크 장비를 랙의 중간에 설치하는것이 편리 : 네트워크 장비와 서버 간 LAN 케이블의 길이가 짧게 사용됨
공기 흐름
서버는 일반적으로 앞쪽에서 냉기를 빨아들이고 뒤쪽으로 열기 배출. 서로 섞이지 않도록 배치
전력 용량 문제
서버를 랙에 설치할 때는 물리적인 설치 가능 대수뿐만 아니라 전력 사용량도 엄밀하게 계산해야함
자체 서버 룸을 사용
자사에 서버 룸을 만들기 위한 포인트
- 면적
- 전력용량
- 냉각
- 내하중
- 지진대책
- 먼지대책
- 법정 점검 대책
- 보안
- 비품 보관 장소
8장 : 솔루션과 보안
솔루션
감시 솔루션
장비의 가동 상황 전반을 감시하기 위해 감시 솔루션 이용
- 나기오스
- 웹 설정화면이 없고 설정을 텍스트 파일로 저장
- 장애가 발생한 이력을 데이터베이스가 아닌 텍스트 파일로 저장
- 자빅스
- 고급감시, 경고, 가시화 기능
- 서버 및 네트워크 디바이스의 오토 디스커버리
- 등등
- 캑타이
자산관리도구
- 많은 장비를 효율적으로 관리하려면 자산관리 도구를 활용하는 것이 편리
- 어느정도 규모까지는 엑셀등으로 가능->관리 대상 늘어날수록 자산 관리의 시스템화 필요
배포 시스템
- 리눅스에서 rsync명령, 윈도에서 robocopy명령으로
보안
- 서버단위로 이루어지는 보안 대책 : 백신 등의 소프트웨어를 서버에 설치하는 방법
- IT 인프라 전체에서 하는 대책 : LAN내에 방화벽이나 IDS 를 설치하는 방법
퍼실리티 관리 시스템
데이터 센터의 물리적 환경을 감시하는 시스템
스토리지 관리 시스템
스토리지를 집중적으로 관리할 수 있는 시스템
보안
무엇을 지키기 위한 보안인가?
- 고객 데이터 전반
- 매출 정보
- 이메일 정보
- 각종 문서류
- 각종 소스 코드
- 종업원 명부
보안 담당자와 서버 담당자의 연계
- 서버에는 보안구멍이 될 수 있는 요소가 많이 있음
- 서버시 보안 홀이나 권한 설정 실수를 완전히 제거했어도 운영을 시작하고 나면 새로운 보안 패치가 속속 등장하므로 계속 보안 패치를 적용할 필요가 있음
- 보안 담당자는 정기적으로 보안진단을 해서 적시에 부적절한 보안 설정을 개선하고 실시간으로 부정 침입과 공격을 감시하다가 무너가 이상이 있으면 즉시 네트워크 연결 차단하고 서버 담당자에게 전달해 대책을 의뢰하는 일을 계속함
외부 보안 업체 활용
데이터 해시화 암호화
9장 : 인프라 운영
장애 대응
- 하드웨어는 가능한 서비스를 멈추지 않도록 하는 방향으로 진화함
- 핫스왑(서비스를 가동한 채로 이중화된 부품 중 고장난 부품을 교환)기술이나 ECC(이상을 감지하면 자동으로 보정하는)기술은 하드웨어의 가용성을 높여주는 기술의 한 예
- 소프트웨어는 사람이 만드는 것이므로 버그가 섞여있기 마련
- 테스트를 하지만, 그렇지 못한 조작이나 혹은 악의적 접근으로 시스템 이상 발생할 수 있음
- 인프라 엔지니어=감지솔루션이 필요=장애 감지를 위해
병목 해결
- IT 시스템에서는 병목이 한 군데만 있어도 시스템 전체의 응답속도에 악영향을 미침
- 예) 웹서버 부족문제와 데이터베이스 서버의 메모리 부족 문제가 동시에 일어났을 때 아무리 데이터베이스 서버의 메모리를 증설하더라도 웹 서버 부족이 해결되지 않는 한 시스템 전체의 응답 속도는 개선되지 않음
- 예) 접속 수가 급증하는 시스템에서 대응을 하지 않으면 거의 모든 하드웨어 자원이 동시에 고갈되는 상황 생김
- 병목이 발생하는 부분 : 코어 스위치의 수용량, L2 스위치의 수용량, 웹 서버의 메모리 부족, 데이터 베이스 서버의 cpu와 메모리 부족, 데이터베이스 서버의 디스크 I/O
네트워크 장비의 병목 해결
- 각 포트의 물리 인터페이스의 속도가 트래픽을 감당하는가 ?
- 네트워크 장비의 전송 능력에 한계는 없는가 ?
서버 장비의 병목 해결
- 프론트엔드 서버의 응답이 저하 되었는가?
디스크 I/O 값이 크다고 무조건 디스크가 병목이라고 단정할 순 없다. 하드웨어 고장 가능성도 있기 때문이다.
MSP
MSP : IT 인프라 운영 관리를 대행해주는 업자
MSP 업자 선택 방법
- 기업의 신뢰성
- 커뮤니케이션 능력
- 유연성
- 기술력
- 비용 대비 효과
펌웨어
펌웨어란?
- 컴퓨팅과 공학 분야에서 특정 하드웨어 장치에 포함된 소프트웨어로, 소프트웨어를 읽어 실행하거나, 수정하는 것도 가능한 장치
- 하드웨어의 제어(low-level control)와 구동을 담당하는 일종의 운영체제
- 사용되는 곳 : 서버 본체, RAID보드/HBA보드(서버와 장비 사이의 통신을 위해서 장착하는 카드), 하드디스크/SSD(고체 반도체 디스크), 네트워크 기기 본체, 스토리지 본체
펌웨어의 버전과 수준
권장,필요,필수
펌웨어의 버전 업그레이드 여부 판단
- 최신 펌웨어 적용이 안심이라고 생각하는 엔지니어 : 최신 펌웨어에는 이미 알려진 버그 수정이 모두 적용돼 있으니 최신 펌웨어가 안전
- 펌웨어 버전의 업그레이드를 선호하지않는 엔지니어 : 최신 펌웨어에 새로운 버그가 들어 있을 가능성
펌웨어의 버전 업그레이드 방법
- 가동중인 운영체제에서 업데이트 파일을 실행해서 적용하는 방법(재부팅 불필요)
- 가동중인 운영체제에서 업데이트 파일을 실행해서 적용하는 방법(재부팅 필요)
- 시스템 정지 후, USB 메모리나 DVD-ROM 등을 사용해 적용하는 방법
최신 펌웨어 정보 수집
일반적으로 각 업체 홈페이지를 확인
대규모 사이트는 실제 운영 중에 펌웨어 버그를 발견할 때가 많다!!
- 대규모 사이트에서는 하드웨어 업체의 테스트 환경과는 차원이 다른 액세스 양을 처리하므로 업체의 테스트 환경에서 드러나지 않던 오류 발생
- 하드웨어 수용량 한계에 가까이 가면 갈수록 펌웨어 버그가 드러나는 경우가 많음
- 타사보다 앞서 희생양으로 실전에서 테스트하는 상태
10장 : 대규모 인프라
인적자원, 데이터 센터 공간, 서버, 네트워크 장비 등 온갖 자원이 동시에 부족해지는 가운데 우선 순위를 매겨가며 잇달아 대책을 세워야하는 세계
- 기술적 대응
- 기획이나 구매상담
- 오퍼레이터에 대한 작업 지시
시스템 구성의 결정 포인트
업체 지원의 필요성
- 업체 지원 필요없으면 관리 비용 불필요한 것 이용
- 업체 지원 필요하면 유지보수 서비스 있는 것 이용
사용언어
사용언어에 따라 시스템 구성 달라짐
액세스 양
대규모라면 예상되는 부하를 산정해 하드웨어 자원을 충분히 확보하고 적절히 부하 분산
가용성
가용성 높이기 위해서,,
- 스케일 아웃 구성에서는 저렴한 서버를 여러 대 준비해서 중복 구성
- 스케일 업 구성에서는 비싸도 고장이 안나는 엔터프라이즈 서버 사용
외부 업자 이용
윈도우와 리눅스
- SI 기업에서 지지받는 윈도, 웹 기업에서 지지받는 리눅스
- 윈도=상용 운영체제로서 지원이 충실하고 닷넷 프레임워크 기반으로 업무 애플리케이션을 만들기 쉬워 단기간에 고기능 시스템 구축 가능
- 리눅스=오픈소스이므로 유상 지원이 필요하지 않다면 무료로 사용가능
CDN
대규모 사이트에서는,,,이미지나 실행파일 같은 정적 콘텐츠 배포에 CDN 사용
CDN이란,,
서비스 제공 회사의 서버를 대신해 CDN업체가 제공하는 캐시 서버에 접속해서 사용자가 정적 콘텐츠를 받아가는 구조의 콘텐츠 전송망
장점
- 자신의 단말에서 가장 가까운 캐시 서버에 접속해서 빠르게 콘텐츠를 가져올 수 있음
- 자사로서는 아무리 접속이 증가해도 원서버 대수와 네트워크 대역을 늘리지 않아도 됨
예시
뉴욕에 있는 사용자가 런던에 있는 업체의 웹사이트를 보고 싶어 합니다. 이 웹사이트는 영국의 서버에 호스팅되어 있습니다. 해당 사용자가 뉴욕에서 영국까지 대서양을 가로질러 요청을 보낸다면 웹사이트의 콘텐츠 로딩 시간은 길어질 것입니다. CDN은 이런 문제를 해결하기 위해 런던 웹사이트 콘텐츠를 캐싱해 전 세계 여러 곳의 ‘PoP(Points of Presence)’에 저장합니다. 이러한 PoP는 자체 캐싱 서버를 갖고 있으며 뉴욕에 있는 사용자에게 해당 콘텐츠를 전송합니다.
CDN 사업자 선택법
- 품질
- 서비스는 국내 한정인지 국외 대상인지?
- 비용 : CDN 사업자는 대부분 통신량이 늘면 늘수록 단가가 싸짐
DSR 구성을 이용한 부하 분산
DSR 구성 : L4스위치에서 이용되는 부하 분산 기법
네트워크 트래픽이 대량으로 발생하는 대규모 웹 사이트 등에서 이용
일반적인 구성과 DSR 구성의 차이
일반적인 구성 : 스위치와 서버 사이에 L4 스위치 둠. 들어오는 패킷이 L4 스위치 통해 서버에 도달하고 돌아가는 패킷도 L4 스위치 통해 나감.
DSR 구성 : 상위 스위치 등에 직접 L4 스위치 연결. 들어오는 패킷이 L4 스위치 통해 서버에 도달하지만 돌아가는 패킷은 L4 스위치 거치지 않고 서버에서 직접 나감
정확히 무엇인지?
Direct Server Return : 서버에서 클라이언트로 직접 응답 패킷을 전달
DSR의 장점은 영상이나 음성 데이터를 스트리밍하는 경우 응답 속도 이점이 크다는 것입니다. 이외에도 실시간 응답이 중요한 애플리케이션의 경우도 잘 어울립니다
DSR 구성의 장점
- 요청에 대한 L4 스위치의 수용력 증가
- 일반적으로, 웹서버에서는 인바운드와 아웃바운드 트래픽 사이에 큰 차이가 있음
- 웹서버는 요청된 트래픽의 몇 배에서 몇 십배나 되는 트래픽을 응답으로 반환
- 예를들어,
일반적인 구성일 때, 인바운드가 20Mbps, 아웃바운드가 120Mbps 이고 L4 스위치가 100Mbps fastether 포트를 가질때 인바운드 쪽은 아직 80Mbp나 여유가 있지만 아웃바운드는 20Mbps 부족 => 인터페이스를 100Mbps에서 1Gbps 로 업그레이드 해야함
DSR 구성일때, 인바운드 양과 아웃바운드 양이 거의 같아지므로 아웃바운드의 트래픽을 큰 폭으로 절약할 수 있음 => 요청에 대한 L4 스위치의 수용량이 많이 늘어남
- 네트워크 구성이 비교적 자유로워짐
- 일반적인 구성일 때,
스위치와 서버 사이에 L4 스위치를 넣어야한다는 제약 => 서버 구성을 변경 할 때나 L4 스위치가 고장날 때마다 네트워크 구성까지 변경해야만 했음
DSR 구성일 때,
기본적으로 어느 스위치에 L4 스위치를 연결해도 부하분산이 가능해짐 => 네트워크 토폴러지가 단순해지고 고장났을 때의 처리가 쉬워짐
- 한포트만 사용
- 일반적인 구성일 때,
L4 스위치에 많은 스위치나 서버가 연결되기에 포트가 많이 필요해짐 => L4 스위치 매우 고가이므로 일반적으로는 L4 스위치 아래에 L2 스위치 연결하고 거기에 서버 달아서 구성
DSR 구성일 때,
상위 스위치에 포트 하나만 사용하면 되므로 매우 경제적
DSR 구성이 일반적이지 않은 이유
일반적인 구성과 비교하면 설정 항목이 늘어났고, 또한 일반적인 구성이 아니라서 DSR 구성 설정에 익숙하지 않은 사람들이 많기 때문
리소스 부족 대책
- 인적 리소스 부족
- 데이터 센터 스페이스 부족
- 장비 부족
- 네트워크 대역 부족
- 자금 부족
- 중고 장비 활용
급성장한 LINE의 서버 증강
미리 준비 했던 것
11장 : 인프라 엔지니어의 성장
- 도큐먼트를 읽는 힘 기르기
- 카탈로그 읽는 힘 기르기
소규모 인프라 vs 대규모 인프라
소규모 인프라 : IT 인프라 전체를 경험할 수 있음
대규모 인프라 : 각 개인의 업무 범위가 한정된만큼 특정 분야에 대해 고급 스킬 필요해짐
참고링크