使用virtualbox自定义Alpine-vrit云镜像
下载 alpine-virt-3.11.5-x86_64.iso
创建vm
virtualbox 创建vm操作参考 在 VirtualBox 中创建新的虚拟机
注意:默认virtbox 的引导顺序为 软驱,光驱,硬盘,所有创建vm 后,必须 在设置--》系统--》启动顺序中 把硬盘引导设置为第一位,否则以后系统就算安装到磁盘,默认还是进入内存引导了iso 系统,相当于始终没有持久化
安装 alpine
通过virtualbox console 界面登入vm, alpine 默认root无密码
设置网卡
# setup-interfaces
# rc-update add networking
# service networking restart设置dns server
# setup-dnsDNS domain name 不输入直接回车
DNS nameservers 输入 114.114.114.114
设置apk repos
vi /etc/apk/repositories
内容如下:
设置持久化存储
alpine 默认从内存引导启动,没有持久化,所以需要执行下面操作
输入块设备 sda
输入持久化的数据类型 sys
关机
删除 iso 引导项
注意:vitrualbox , 调整引导顺序,或删除 iso 引导, 否则默认还是会进入iso 引导到内存系统
开机
在vitrualbox 中启动
设置ssh
因为dns 信息重启会失效,所以设置ssh 前重新设置 dns
开放root 远程ssh登录
vi /etc/ssh/sshd_config
找到PermitRootLogin,放开注释,修改内容如下
重启sshd
修改root 默认密码
替换时区文件 /etc/localtime
安装 cloud-init
添加社区测试源
vi /etc/apk/repositories
关机
导出vm
参考:Exporting an Appliance in OVF Format 导出ovf 2.0 格式 文件
结果文件示例:alpine310-virt-base.ova
转换格式
安装 qemu-img, 使用qemu-img 转换格式
centos7 中安装 qeum-img 使用
执行转换命令
最终文件为 alpine310-virt-base-0.1.qcow2.gz
发布到kubevirt
启动一个http服务,alpine310-virt-base-0.1.qcow2.gz 提供下载,示例下载地址为:
在 kube web ui 中以下面 yaml 创建vm
Last updated