14.3. 디스크 분할
전체 사전 캐싱 프로세스를 실행하려면 라이브 ISO에서 부팅하고 컨테이너 이미지에서 factory-precaching-cli 도구를 사용하여 필요한 모든 아티팩트를 분할하고 사전 캐싱해야 합니다.
프로비저닝 중에 운영 체제(RHCOS)가 장치에 기록될 때 디스크가 사용 중이어서는 안 되므로 라이브 ISO 또는 RHCOS 라이브 ISO가 필요합니다. 이 절차를 통해 단일 디스크 서버도 활성화할 수 있습니다.
사전 요구 사항
- 파티션되지 않은 디스크가 있습니다.
-
quay.io/openshift-kni/telco-ran-tools:latest
이미지에 접근할 수 있습니다. - OpenShift Container Platform을 설치하고 필요한 이미지를 사전 캐싱할 수 있는 충분한 저장 공간이 있습니다.
프로세스
디스크가 지워졌는지 확인하세요.
lsblk
# lsblk
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 출력 예
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT loop0 7:0 0 93.8G 0 loop /run/ephemeral loop1 7:1 0 897.3M 1 loop /sysroot sr0 11:0 1 999M 0 rom /run/media/iso nvme0n1 259:1 0 1.5T 0 disk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT loop0 7:0 0 93.8G 0 loop /run/ephemeral loop1 7:1 0 897.3M 1 loop /sysroot sr0 11:0 1 999M 0 rom /run/media/iso nvme0n1 259:1 0 1.5T 0 disk
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 장치에서 모든 파일 시스템, RAID 또는 파티션 테이블 서명을 지웁니다.
wipefs -a /dev/nvme0n1
# wipefs -a /dev/nvme0n1
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 출력 예
/dev/nvme0n1: 8 bytes were erased at offset 0x00000200 (gpt): 45 46 49 20 50 41 52 54 /dev/nvme0n1: 8 bytes were erased at offset 0x1749a955e00 (gpt): 45 46 49 20 50 41 52 54 /dev/nvme0n1: 2 bytes were erased at offset 0x000001fe (PMBR): 55 aa
/dev/nvme0n1: 8 bytes were erased at offset 0x00000200 (gpt): 45 46 49 20 50 41 52 54 /dev/nvme0n1: 8 bytes were erased at offset 0x1749a955e00 (gpt): 45 46 49 20 50 41 52 54 /dev/nvme0n1: 2 bytes were erased at offset 0x000001fe (PMBR): 55 aa
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
디스크가 비어 있지 않으면 도구가 실패합니다. 이 도구는 장치의 파티션 번호 1을 사용하여 아티팩트를 사전 캐싱하기 때문입니다.
14.3.1. 파티션 생성 링크 복사링크가 클립보드에 복사되었습니다!
장치가 준비되면 단일 파티션과 GPT 파티션 테이블을 만듭니다. 파티션은 자동으로 데이터
로 표시되고 장치 끝에 생성됩니다. 그렇지 않으면 해당 파티션은 coreos-installer
에 의해 재정의됩니다.
coreos-installer를
사용하려면 장치 끝에 파티션을 만들고 data
로 레이블을 지정해야 합니다. 두 가지 요구 사항 모두 RHCOS 이미지를 디스크에 쓸 때 파티션을 저장하는 데 필요합니다.
사전 요구 사항
-
호스트 장치를 포맷해야 하므로 컨테이너는
특권
모드로 실행되어야 합니다. -
컨테이너 내부에서 프로세스를 실행하려면
/dev
폴더를 마운트해야 합니다.
프로세스
다음 예에서 파티션 크기는 Day 2 Operators의 DU 프로필을 사전 캐싱할 수 있도록 250GiB입니다.
컨테이너를
권한 있는 권한
으로 실행하고 디스크를 분할합니다.podman run -v /dev:/dev --privileged \ --rm quay.io/openshift-kni/telco-ran-tools:latest -- \ factory-precaching-cli partition \ -d /dev/nvme0n1 \ -s 250
# podman run -v /dev:/dev --privileged \ --rm quay.io/openshift-kni/telco-ran-tools:latest -- \ factory-precaching-cli partition \
1 -d /dev/nvme0n1 \
2 -s 250
3 Copy to Clipboard Copied! Toggle word wrap Toggle overflow 저장 정보를 확인하세요:
lsblk
# lsblk
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 출력 예
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
검증
다음 요구 사항이 충족되었는지 확인해야 합니다.
- 장치에는 GPT 파티션 테이블이 있습니다.
- 해당 파티션은 장치의 최신 섹터를 사용합니다.
-
파티션이
데이터
로 올바르게 레이블이 지정되었습니다.
디스크가 예상대로 파티션되었는지 확인하려면 디스크 상태를 쿼리하세요.
gdisk -l /dev/nvme0n1
# gdisk -l /dev/nvme0n1
출력 예
14.3.2. 파티션 장착 링크 복사링크가 클립보드에 복사되었습니다!
디스크가 올바르게 분할되었는지 확인한 후 장치를 /mnt
에 마운트할 수 있습니다.
GitOps ZTP 준비 중에 해당 마운트 지점이 사용되므로 장치를 /mnt
에 마운트하는 것이 좋습니다.
파티션이
xfs
로 포맷되었는지 확인하세요.lsblk -f /dev/nvme0n1
# lsblk -f /dev/nvme0n1
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 출력 예
NAME FSTYPE LABEL UUID MOUNTPOINT nvme0n1 └─nvme0n1p1 xfs 1bee8ea4-d6cf-4339-b690-a76594794071
NAME FSTYPE LABEL UUID MOUNTPOINT nvme0n1 └─nvme0n1p1 xfs 1bee8ea4-d6cf-4339-b690-a76594794071
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 파티션을 마운트하세요:
mount /dev/nvme0n1p1 /mnt/
# mount /dev/nvme0n1p1 /mnt/
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
검증
파티션이 마운트되었는지 확인하세요.
lsblk
# lsblk
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 출력 예
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 마운트 지점은
/var/mnt
입니다. RHCOS의/mnt
폴더는/var/mnt
에 대한 링크이기 때문입니다.