YJWANG

virt-builder 사용법 (virt-builder local repo 설정) 본문

00.OS

virt-builder 사용법 (virt-builder local repo 설정)

왕영주 2020. 9. 29. 17:08

서버에서 Tab으로 멍 때리던 중 아래 명령어가 있어 신기해서 사용 법을 조사해보았다.

virt-builder를 통해 raw, qcow2로 된 vm이미지를 커스텀하여 레포에서 다운받을 수 있나보다.

기본 레포는 이미 등록돼있고 local repo를 만들어야 하는 상황이 있을 수 있으므로 virt-builder local repo 등록 부터 사용 법 까지 간단히 기술해보려고한다.

libvirtqemu는 사전 설치돼 있어야한다.

env

CentOS 7.X

virt-builder 사용을 위해 패키지 설치

# yum install libguestfs-tools

OS template 다운 받기

# wget http://libguestfs.org/download/builder/centos-8.2.xz
# wget http://libguestfs.org/download/builder/centos-8.0.xz
# wget https://builder.libguestfs.org/centos-7.8.xz

virt-builder 에서 사용할 repository 설정

[root@yjwangHost repos.d]# cat /etc/virt-builder/repos.d/local.conf
[local-virt]
uri=file:///data/img/template/template.asc
[root@yjwangHost template]# cat /data/img/template/template.asc
[centos-7.8]
name=CentOS 7.8
arch=x86_64
file=centos-7.8.xz
format=raw
size=6442450944
compressed_size=363772768
expand=/dev/sda2
notes=CentOS 7.8

[centos-8.2]
name=CentOS 8.2
arch=x86_64
file=centos-8.2.xz
format=raw
size=6442450944
compressed_size=379922752
expand=/dev/sda2
notes=CentOS 8.2

[centos-7.8-cloud]
name=cloud-centOS 7.8
arch=x86_64
file=CentOS-7-x86_64-GenericCloud-2003.qcow2
format=qcow2
size=858783744
expand=/dev/sda1
notes=cloud CentOS 7.8

위 정보를 입력하려면 파티션 정보를 알아야하는데 아래와 같이 확인할 수 있다.

[root@yjwangHost template]# virt-filesystems --long --parts --blkdevs -h -a CentOS-7-x86_64-GenericCloud
-2003.qcow2
Name       Type       MBR  Size  Parent
/dev/sda1  partition  83   8.0G  /dev/sda
/dev/sda   device     -    8.0G  -

등록된 virt-builder 정보 확인

[root@yjwangHost repos.d]# virt-builder --list
centos-7.8               x86_64     CentOS 7.8
centos-8.2               x86_64     CentOS 8.2
centos-7.8-cloud         x86_64     cloud-centOS 7.8

vm disk image 생성

hostname, root password, memory size, / filesystem capacity 등 custom하여 생성한다.

[root@yjwangHost img]# virt-builder centos-7.8 --hostname test10G --root-password password:testtest --memsize 4096 --size 10G --output /data/img/yjwang_10_centos78
[   5.9] Downloading: http://libguestfs.org/download/builder/centos-7.8.xz
[  76.7] Planning how to build this image
[  76.7] Uncompressing
[  79.3] Resizing (using virt-resize) to expand the disk to 10.0G
[ 125.8] Opening the new disk
[ 133.0] Setting a random seed
[ 133.0] Setting the hostname: test10G
[ 133.1] Setting passwords
[ 135.2] Finishing off
                   Output file: /data/img/yjwang_10_centos78
                   Output size: 10.0G
                 Output format: raw
            Total usable space: 9.4G
                    free space: 8.1G (86%)
반응형