-
Rocky9: Stratis공부합시다!/LInux 2023. 1. 26. 00:14728x90
새로운 기술들이 나오면 또 따라가야겠죠!
오늘은 따끈한 Storage 관리 기술인 Stratis 입니다.
Red Hat과 Fedora Community 에서 공동 개발한 기술인데 Thin Provisioning과 snapshot을 지원한다고 합니다.
1. Stratis 개요
2. Stratis 특징
3. Stratis 관리
순서로 살펴보도록 하겠습니다.
아래 그림은 Storage Stack 입니다. 좌측이 아래쪽, 우측이 위쪽이라 생각하세요
1. Stratis 개요
1.1. Red Hat 과 Fedora Community에서 개발한 Local Storage Management Tool
1.2. Storage 초기 구성, Storage 구성 변경, 고급 Storage 기능 사용 용이
2. Stratis 특징
2.1. 물리적 Storage 장치를 Pool로 관리하는 Service로 실행
2.2. Thin Provisioning 사용하여 Disk Device를 공유 Pool 내에서 File System 생성
2.3. File System 생성 시 물리적 Storage 공간을 할당하는 대신, File System에서 추가 Data저장 시 Pool에서 공간을 동적으로 할당
2.4. File System의 크기가 1TiB로 표시가 되더라도 Pool에서 실제로 할당된 크기는 100GiB뿐일 수 있음.
2.5. 다양한 Storage Device에서 여러 개의 Pool 생성, 각 Pool에서 하나 이상의 File System 생성 가능, 최대 2*24승
2.6. stratis 관리 파일 시스템을 구성하나는 구성 요소를 표준 Linux 구성 요소에서 빌드
2.7. 내부적으로 LVM에서 사용하는 Device Mapper Infra 사용, 파일시스템은 XFS로 포맷
3. Stratis 관리
3.1. stratis 설치 및 활성화
# dnf install -y stratisd stratis-cli # systemctl enable --now stratisd
3.2. stratis pool 생성
# lsblk # stratis pool create sdkim /dev/sdb sdkim이라는 pool을 생성하는데 /dev/sdb 사용 # stratis pool list pool list 확인 # stratis pool add-data sdkim /dev/sdc sdkim이라는 pool에 /dev/sdc 추가
3.3. stratis file system 생성 및 snapshot, mount
# stratis filesystem create sdkim fs1 sdkim pool에 fs1 파일스템 생성 # stratis filesystem list Pool Filesystem Total / Used / Free Created Device UUID sdkim fs1 1 TiB / 546 MiB / 1023.47 GiB Jan 21 2023 00:59 /dev/stratis/sdkim/fs1 a021d9be-dcff-4998-83cc-9343e49c4a04 파일 시스템 확인 # mkdir /stra # mount /dev/stratis/sdkim/fs1 /stra 디렉토리 생성 후 stratis 파일 시스템 마운트 # echo 'stratis test' > /stra/test.txt # cat /stra/test.txt stratis test # stratis filesystem snapshot sdkim fs1 snap fs1 파일 시스템의 snapshot을 snap라는 이름으로 생성 # stratis filesystem list Pool Filesystem Total / Used / Free Created Device UUID sdkim fs1 1 TiB / 546 MiB / 1023.47 GiB Jan 21 2023 00:59 /dev/stratis/sdkim/fs1 a021d9be-dcff-4998-83cc-9343e49c4a04 sdkim snap 1 TiB / 546 MiB / 1023.47 GiB Jan 21 2023 01:01 /dev/stratis/sdkim/snap 967cf392-db5a-43b5-8584-8cb820fa569a snap 파일시스템 확인 # mkdir /strasnap # mount /dev/stratis/sdkim/snap /strasnap snap 파일시스템 마운트 # cat /strasnap/test.txt stratis test 마운트 테스트 # dd if=/dev/zero of=/stra/stra.txt bs=1MB count=500 500+0 records in 500+0 records out 500000000 bytes (500 MB, 477 MiB) copied, 3.04332 s, 164 MB/s # stratis filesystem list Pool Filesystem Total / Used / Free Created Device UUID sdkim fs1 1 TiB / 1023 MiB / 1023.00 GiB Jan 21 2023 00:59 /dev/stratis/sdkim/fs1 a021d9be-dcff-4998-83cc-9343e49c4a04 sdkim snap 1 TiB / 546 MiB / 1023.47 GiB Jan 21 2023 01:01 /dev/stratis/sdkim/snap 967cf392-db5a-43b5-08584-8cb820fa569a 디스크 사용량에 따른 동적확장 확인
3.4. stratis file system 영구 mount
# stratis pool create sdkim /dev/sdb # stratis filesystem create sdkim fs1 # stratis filesystem list UUID 확인 # vi /etc/fatab UUID=f3638957-ca1e-49fb-b8ea-6f03699e67d2 /stra xfs default,x-systemd.requires=stratisd.service 0 0
3.5. stratis file system 및 pool 삭제
# umount /stra /strasnap # stratis filesystem destroy sdkim snap # stratis filesystem list Pool Filesystem Total / Used / Free Created Device UUID sdkim fs1 1 TiB / 1023 MiB / 1023.00 GiB Jan 21 2023 00:59 /dev/stratis/sdkim/fs1 a021d9be-dcff-4998-83cc-9343e49c4a04 # stratis filesystem destroy sdkim fs1 # stratis filesystem list Pool Filesystem Total / Used / Free Created Device UUID 파일시스템 삭제 # stratis pool destroy sdkim # stratis pool list Name Total / Used / Free Properties UUID Alerts pool 삭제 # lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS sda 8:0 0 50G 0 disk ├─sda1 8:1 0 1G 0 part /boot └─sda2 8:2 0 49G 0 part ├─rl-root 253:0 0 47G 0 lvm / └─rl-swap 253:1 0 2G 0 lvm [SWAP] sdb 8:16 0 10G 0 disk sdc 8:32 0 5G 0 disk sdd 8:48 0 5G 0 disk sr0 11:0 1 1.4G 0 rom
3.6. file system 관련 error 해결
3.6.1. stratis pool 생성 시 이전 file system의 흔적이 남아 있으면 오류가 발생합니다. 삭제하세요.
3.6.2. # wipefs -a /dev/sdb
# stratis pool add-data sdkim /dev/sdd Execution failed: stratisd failed to perform the operation that you requested. It returned the following information via the D-Bus: ERROR: At least one of the devices specified was unsuitable for initialization: udev information indicates that device /dev/sdd is a block device which appears to be owned. [root@master ~]# wipefs -a /dev/sdd /dev/sdd: 8 bytes were erased at offset 0x00000200 (gpt): 45 46 49 20 50 41 52 54 /dev/sdd: 8 bytes were erased at offset 0x13ffffe00 (gpt): 45 46 49 20 50 41 52 54 /dev/sdd: 2 bytes were erased at offset 0x000001fe (PMBR): 55 aa /dev/sdd: calling ioctl to re-read partition table: Success [root@master ~]# stratis pool add-data sdkim /dev/sdd [root@master ~]# stratis pool list Name Total / Used / Free Properties UUID Alerts sdkim 20 GiB / 526.02 MiB / 19.49 GiB ~Ca,~Cr, Op 02a8dae4-6d55-49c8-b4b7-56480cec58e7
새로운 기술인데 아주 유연하게 동작을 합니다.
여러 종류의 Device를 통합해서 사용하기에 좋은 기술로 보여지네요!
그럼
Have a nice day!
728x90'공부합시다! > LInux' 카테고리의 다른 글
Rocky9: Auto FS 자동 마운트(직접 맵과 간접 맵) (0) 2023.01.30 Rocky9: SWAP 확장 및 축소 (0) 2023.01.27 Rocky9: SELinux (0) 2023.01.20 Rocky9: Network Management (0) 2023.01.19 Rocky9: root password reset (0) 2023.01.17