6장. 하드디스크 관리와 사용자별 공간 할당
IDE 장치와 SCSI 장치의 구성 (1) [p324] Server의 하드웨어 구성도 Vmware Player 5.0.x 는 총 60개의 SCSI 하드디스크, 총 4개의 IDE하드디스크를 장착할 수 있다.
IDE 장치와 SCSI 장치의 구성 (2) [p326] 하드디스크를 물리적으로는 /dev/sda, /dev/sdb, /dev/sdc … 형식으 로 부름 디스크 파티션이 나눠진 것을 논리적으로는 /dev/sda1, /dev/sda2, /dev/sda3, /dev/sdb1, /dev/sdb2 … 형식으로 부름
하드디스크 추가하기 – 1개 [p327] 하드디스크 1개 추가 하드웨어 구성 장착된 디스크의 이름은 /dev/sdb 파티션을 그냥 사용할 수 없으며 반드시 특정한 디렉터리에 마운트 시켜야만 사용이 가능
<실습1> 하드디스크 1개 장착 [p328] 실습목표 하드디스크를 추가 장착해서 사용한다. 디스크 파티셔닝과 관련된 fdisk, mkfs, mount 명령을 익힌다. 부팅시 자동으로 읽히는 /etc/fstab 파일을 편집한다. 실습 흐름도
비타민 퀴즈 6-1 [p336] ▶ 힌트 : 1번째 /dev/sdb1에 2GB를 할당할 때는 <실습 1>의 'step 3' Last Sector 부분에 ‘+2G’를 입력하면 되고, 2번째 /dev/sdb2에 1GB를 할당할 때는 First sector와 Last Sector 모두 기본 값을 사용한다.
RAID 정의 및 개념 [p337] RAID 정의 하드웨어 RAID 소프트웨어 RAID RAID(Redundant Array of Inexpensive Disks)는 여러 개의 디스 크를 하나의 디스크처럼 사용함 비용 절감 + 신뢰성 향상 + 성능 향상의 효과를 냄 하드웨어 RAID 하드웨어 제조업체에서 여러 개의 하드디스크를 가지고 장비를 만들어서 그 자체를 공급 좀더 안정적이지만, 상당한 고가임 소프트웨어 RAID 고가의 하드웨어 RAID의 대안 운영체제에서 지원하는 방식 저렴한 비용으로 좀더 안전한 데이터의 저장이 가능 교재에서 진행하는 내용은 소프트웨어 RAID 임
각 RAID방식의 비교 [p338]
Linear RAID, RAID0 [p339~p341] Linear RAID 개요 RAID 0 개요 최소 2개의 하드디스크가 필요 2개 이상의 하드디스크를 1개의 볼륨으로 사용 앞 디스크부터 차례로 저장 100%의 공간효율성 (= 비용 저렴) RAID 0 개요 모든 디스크에 동시에 저장됨 신뢰성 낮음 ‘빠른 성능을 요구하되, 혹시 전부 잃어버려도 큰 문제가 되지 않는 자료’ 가 적당함
RAID 1 [p341] RAID 1 개요 RAID0와 RAID1 비교 ‘미러링(Mirroring)’ 이라 부름 데이터 저장에 두 배의 용량이 필요 “결함 허용(Fault-tolerance)을 제공 = 신뢰성 높음 두 배의 저장 공간 = 비용이 두 배 = 공간효율 나쁨 저장속도(성능)는 변함 없음 ‘중요한 데이터’를 저장하기에 적절함 RAID0와 RAID1 비교
RAID 5 (1) [p342~p344] RAID 5 개요 RAID1의 데이터의 안전성 + RAID0처럼 공간 효율성 최소한 3개 이상의 하드디스크 오류가 발생할 때는 ‘패리티(Parity)’를 이용해서 데이터를 복구 “000 111 010 011”(12bit) 데이터 RAID5 저장 사례
RAID 5 (2) [p342~p344] “000 111 010 011”(12bit) 데이터 RAID5 복구 사례 어느 정도의 결함 허용을 해 주면서 저장 공간의 효율도 좋음 ‘디스크의 개수 – 1’ 의 공간을 사용 디스크 2개가 고장 나면 복구 못함
기타 RAID [p344~p345] RAID6 RAID1+0 = RAID1 + RAID0 신뢰성(안전성)과 성능(속도)이 동시에 뛰어난 방법
Linear RAID, RAID0, RAID1, RAID5 구현 [p346] 실습 구성도 Linear RAID(/dev/sdb, /dev/sdc) RAID0(/dev/sdd, /dev/sde) RAID1(/dev/sdf, /dev/sdg) RAID5(/dev/sdh, /dev/sdi, /dev/sdj)
<실습2> 하드디스크 9개 준비 [p347] 실습목표 하드디스크 9개를 장착하고, 각각을 fdisk로 파티셔닝 한다. 장착할 디스크
비타민 퀴즈 6-2 [p351] ▶ 힌트 없음.
<실습3> Linear RAID 구축 [p351] 실습목표 Linear RAID를 구축한다. mdadm 사용법을 익힌다. 실습 흐름도
<실습4> RAID0 구축 [p355] 실습목표 RAID0 를 구축한다. 실습 결과
<실습5> RAID1 구축 [p357] 실습목표 RAID1 를 구축한다. 실습 결과
<실습6> RAID 5 구축 [p358] 실습목표 RAID 5를 구축한다. 실습 흐름도
비타민 퀴즈 6-3 [p361] ▶ 힌트 : mdadm 패키지를 ‘yum’ 명령어를 실행해 미리 설치해야 한다.
Linear RAID, RAID 0,1,5 문제발생 [p362] 실습 구성도 RAID1, RAID5는 ‘결함 허용’기능이 있음 각 1개씩 디스크를 고장냄.
<실습7> RAID의 하드디스크 고장 [p363] 실습목표 Linear RAID, RAID 0, 1, 5의 하드디스크가 고장 난 상황을 본다. 일단 부팅이 가능하도록 한다. 고장 난 디스크와 정상 디스크
비타민 퀴즈 6-4 [p369] ▶ 힌트 없음.
Linear RAID, RAID 0,1,5 원상 복구 [p370] 실습 구성도 고장난 디스크 4개를 새 디스크로 교체
<실습8> RAID의 하드디스크 교체 [p370] 실습목표 Linear RAID, RAID 0, RAID 1, RAID 5의 장치의 고장 난 하드디스 크를 새로운 하드디스크로 교체한다. 복구 전후의 내부적 변화
비타민 퀴즈 6-5 [p376] ▶ 힌트 없음.
RAID 6와 RAID 1+0 개념 [p377] 실습 구성도 RAID5보다 신뢰도를 높인 RAID6 RAID6의 공간효율은 N-2 RAID1+0의 공간효율은 50%
<실습9> RAID 6과 RAID 1+0 [p377] 실습목표 고급 RAID 방식인 RAID 6과 RAID 1+0을 구성해 본다. 결과 화면 (RAID 구성 완료)
비타민 퀴즈 6-6 [p381] ▶ 힌트 없음.
RAID 6와 RAID 1+0 의 문제 발생 [p382] 실습 구성도 각 2개씩 하드디스크를 고장 낸다. 고장 후에도 데이터의 이상 여부를 확인한다.
<실습10> RAID 6과 RAID 1+0의 고장 [p382] 실습목표 RAID 6과 RAID 1+0의 결함 허용을 확인한다. 각 하드디스크를 2개씩 고장 낸 후에 파일이 정상적으로 있는지 확인한다. 실습 화면(디스크 2개가 고장나도 작동중인 RAID6)
비타민 퀴즈 6-7 [p385] ▶ 힌트 1 : sdc, sde, sdg, sdh로 사용할 4개 하드디스크에 파티션을 설정한다. ▶ 힌트 2 : /dev/md6에는 /dev/sdc1와 /dev/sde1를, /dev/md2에는 /dev/sdg1를, /dev/md3에는 /dev/sdh1를 추가한 후 재부팅하면 된다.
비타민 퀴즈 6-8 [p385] ▶ 힌트 : RAID를 구성하는 명령은 다음과 같이 사용하자. mdadm --create /dev/md0 --level =1 --raid-devices =2 /dev/sdb1 /dev/sdc1 mdadm --create /dev/md1 --level =1 --raid-devices =2 /dev/sdd1 /dev/sde1 mdadm --create /dev/md2 --level =1 --raid-devices =2 /dev/sdf1 /dev/sdg1 mdadm --create /dev/md3 --level =1 --raid-devices =2 /dev/sdh1 /dev/sdi1 mdadm --create /dev/md16 --level =6 --raid-devices =4 /dev/md0 /dev/md1 /dev/md2 /dev/md3 //VMware 오른쪽 하드디스크의 깜박거림이 멈출 때까지 몇 분간 기다린다 mkfs. ext4 /dev/md16 mkdir /raid16 mount /dev/md16 /raid16
LVM 개념(1) [p386~p387] LVM(Logical Volume Manage) 개념 이해 LVM 주요 기능 용어 여러 개의 하드디스크를 합쳐서 한 개의 파일시스템으로 사용하는 것 으로 필요에 따라서 다시 나눌 수 있다. 예로 2TB 용량의 하드디스크 2개를 합친 후에 다시 1TB와 3TB로 나눠 서 사용할 수 있다. 용어 Physical Volume(물리 볼륨) : /dev/sda1, /dev/sdb1 등의 파티션 Volume Group(볼륨 그룹) : 물리 볼륨을 합쳐서 1개의 물리 그룹으로 만드는 것 Logical Volume(논리 볼륨) : 볼륨 그룹을 1개 이상으로 나눠서 논리 그룹으로 나눈 것
LVM 개념(2) [p386~p387] LVM을 구현하려고 하드디스크 2개를 추가한 구성도
<실습11> LVM 구성 [p388] 실습목표 실습 흐름도 LVM을 구현한다. 관련 명령어 pvcreate, vgcreate, lvcreate 를 익힌다. 실습 흐름도
비타민 퀴즈 6-9 [p392] ▶ 힌트 1 : ‘yum’ 명령어를 사용해 lvm2 패키지를 설치해야 한다. ▶ 힌트 2 : 명령 실행 시 ‘WARNING: Failed to connect to lvemtad ~~’라는 경고 메시지가 나와도 무시한다.
RAID에 CentOS 설치 [p393] CentOS 설치를 위한 RAID1 구성도
<실습12> RAID1에 CentOS 설치 [p393] 실습목표 2개의 80GB 하드디스크에서 RAID 1으로 안전하게 작동되는 CentOS를 새로 설치한다. 실습 화면 (RAID1에 설치 중인 CentOS)
비타민 퀴즈 6-10 [p399] ▶ 힌트 1 : 추가한 하드디스크는 SCSI 0:2로 변경한다(빈 하드디스크가 SCSI 0:0이면 부팅이 안 될수 있다). [Virtual Network Settings]에서 추가한 하드디스크를 선택하고 <Advanced>를 클릭하면 변경할 수 있다. ▶ 힌트 2 : ‘fdisk -l /dev/sda를 입력해 /dev/sda의 파티션을 확인하고, 동일하게 /dev/sdb 장치의 파티션도 확인한다. ▶ 힌트 3 : ‘mdadm’ 명령어를 사용해 /dev/md/swap과 /dev/md/root로 분할한 파티션을 원상 복구하자. 이때 하드디스크 추가 후 하드디스크 2개를 동일하게 만드는 데는 오랜 시간이 걸린다.
사용자별 공간 할당 - 쿼터 [p400] 쿼터(Quota) 개념 파일시스템마다 사용자나 그룹이 생성할 수 있는 파일의 용량 및 개수를 제한하는 것 파일시스템을 “/”로 지정하는 것보다는, 별도의 파일시스템을 지 정해서 해당 부분을 쓰도록 하는 것이 좋음 “/”파일시스템을 많은 사용자가 동시에 사용하게 되면, CentOS 서버를 운영하기 위해서 디스크를 읽고 쓰는 작업과 일반 사용자 가 디스크를 읽고 쓰는 작업이 동시에 발생하므로 전반적으로 시 스템의 성능이 저하됨
<실습13> 쿼터 실습 [p401] 실습목표 실습 진행 순서 사용자를 만들고, 해당 사용자에게 공간을 할당한다. 쿼터의 설정 및 작동에 대해서 익힌다. 실습 진행 순서
비타민 퀴즈 6-11 [p407] ▶ 힌트 없음.