LabHub
배우기 러닝패스 코스

LFCS — 리눅스 재단 시스템 관리자 · 스토리지를 손으로 — LVM·fstab·swap·NFS·autofs · 실습

LVM 부터 autofs 까지 — 스토리지를 손으로 만든다

LabHub 에서 이어서 보기

목표

루프 장치 두 개 위에 LVM 을 세우고, ext4 를 UUID 로 fstab 에 등록하고, 온라인으로 늘리고, 스왑 파일을 켜고, 같은 VM 안에서 NFS 서버와 autofs 클라이언트를 구성한 뒤 iostat·vmstat 로 지표를 남깁니다. 전부 진짜로 붙습니다.

왜 중요한가

LFCS 의 Storage 도메인(20%)은 파드에서는 한 줄도 할 수 없었습니다 — pvcreatemount 도 capability 가 없어 막힙니다. 이 실습은 우분투 24.04 VM 에서 root 로 돕니다. 대신 빈 디스크는 없습니다. 스크래치 디스크는 플랫폼이 이미 ext4 로 포맷해 붙였으므로, 파일을 블록 장치처럼 보이게 하는 루프 장치(losetup)로 시작합니다. 실무에서 디스크 없이 LVM 이나 RAID 를 시험할 때 쓰는 바로 그 방법입니다.

세 가지가 이 실습의 뼈대입니다. 첫째, LVM 은 PV → VG → LV 세 층이고 늘리는 일은 두 층에서 따로 일어납니다(lvextend 뒤에 resize2fs). 둘째, fstab 에는 장치 이름이 아니라 UUID 를 적습니다 — 장치 순서는 부팅마다 바뀔 수 있습니다. 셋째, 설정 파일을 고치는 것과 데몬이 그것을 아는 것은 다릅니다(exportfs -ra, systemctl restart autofs).

세션은 60분에 시작해 최대 180분까지 연장할 수 있고, VM 은 세션이 끝나면 사라집니다.

단계

1. /var/lib/lfcs/disk1.img/var/lib/lfcs/disk2.img 를 각각 1GiB 크기로 만들고(희소 파일이면 됩니다) 둘 다 루프 장치로 붙이세요. 붙인 뒤 losetup -a 출력을 /root/lfcs/storage/loop.txt 로 저장하세요.
2. 두 루프 장치를 LVM 물리 볼륨(PV)으로 초기화하고, 둘을 합쳐 볼륨 그룹 vg_lfcs 를 만드세요.
3. vg_lfcs 에서 600MiB 크기의 논리 볼륨 lv_data 를 만들고 ext4 로 포맷하세요.
4. lv_data/srv/data 에 마운트하고, 재부팅 뒤에도 붙도록 /etc/fstabUUID= 로 시작하는 줄(타입 ext4, 옵션 defaults, dump 0, pass 2)을 추가하세요. findmnt --verify 로 fstab 에 오류가 없어야 합니다.
5. lv_data300MiB 더 늘리고(총 900MiB 이상), 마운트를 풀지 않은 채 ext4 파일시스템도 같이 커지게 하세요. df 로 본 /srv/data 의 크기가 커져야 합니다.
6. /var/swap/lfcs.swap256MiB 스왑 파일로 만들어 켜세요. 권한은 600 이어야 하고, /etc/fstab 에 재부팅 뒤에도 켜지도록 줄(타입 swap)을 추가하세요.
7. /srv/share 를 NFS 로 내보내되 127.0.0.1 에만 허용하세요(옵션 rw,sync,no_subtree_check). /srv/share/hello.txt 에 아무 내용이나 적고, 그 공유를 /mnt/share 에 NFS 로 마운트해 같은 파일이 보이게 하세요.
8. 같은 공유를 autofs 가 접근하는 순간 붙이게 하세요. 마스터 맵 /etc/auto.master.d/lfcs.autofs/nfs 를 맵 /etc/auto.lfcs 로 연결하고, 그 맵에 키 share127.0.0.1:/srv/share 를 nfs4 로 가리키게 적으세요. autofs 를 재시작한 뒤 ls /nfs/share 가 hello.txt 를 보여야 합니다. (서버가 자기 자신이면 autofs 는 NFS 대신 bind 로 붙입니다 — findmnt /nfs/share 의 SOURCE 가 [/srv/share] 로 보여도 정상입니다.)
9. iostat -dxk 1 3 출력을 /root/lfcs/storage/iostat.txt 에, vmstat 1 3 출력을 /root/lfcs/storage/vmstat.txt 에 저장하세요. 그리고 /root/lfcs/storage/summary.txt 를 네 줄로 만드세요: VG=vg_lfcs, PVS=<vg_lfcs 의 PV 개수>, LV_MB=<lv_data 의 크기(MiB, 정수)>, SWAP=<켜져 있는 스왑 파일 경로>.

참고

단계 9개

  1. 루프 장치 두 개 만들기
  2. PV 두 개로 VG 만들기
  3. LV 를 자르고 ext4 로 포맷
  4. 마운트하고 fstab 에 UUID 로 적기
  5. 온라인으로 LV 와 파일시스템 늘리기
  6. 스왑 파일 만들고 켜기
  7. 로컬 NFS 서버로 내보내고 마운트
  8. autofs 로 접근할 때 붙이기
  9. iostat·vmstat 로 성능 지표 남기기