Centos图形化界面封装OpenStack Ubuntu镜像

目录

背景

环境

搭建kvm环境

安装ubuntu虚机

虚机设置

系统安装

登录虚机

安装cloud-init

安装cloud-utils-growpart

关闭实例

删除细节信息

删除网卡细节

使虚机脱离libvirt纳管

结束与验证

压缩与转移

验证是否能够正常运行

背景

一般的镜像文件在上传OpenStack之后也无法正常进行安装,适用于OpenStack的镜像可以通过官网进行下载,部分系统官方提供云镜像的下载,也可以通过自己根据需要虚拟化安装之后打包,这里介绍的是centos7环境下通过kvm对Ubuntu18.04版本镜像进行打包的操作。

之所以使用图形化是因为还有很多不熟悉virsh工具的兄弟,也不会使用vnc访问kvm虚机,直接使用virt-manager更为直观也更容易理解

环境

VMwareworkstation17pro

------打开VT

CentOS Linux release 7.9.2009 (Ubuntu也可以,centos8和9都可以,大差不差)

------网络NAT

------50G硬盘,自动分区

镜像版本Ubuntu18.04

bionic-mini.iso

搭建kvm环境

#升级软件包
yum update
#安装kvm的环境
yum -y install qemu-kvm qemu-kvm-tools virt-install qemu-img bridge-utils libvirt virt-manager

#用centos9做到一半发现centos9不支持18.04版本的安装了,很尴尬
#获取镜像,例子中使用的是一个64M的小型镜像,也可以自己下载好传到虚拟机里
wget -O /var/lib/libvirt/boot/bionic-mini.iso \
  http://archive.ubuntu.com/ubuntu/dists/bionic/main/installer-amd64/current/images/netboot/mini.iso

#创建一个10G的卷文件
qemu-img create -f qcow2 /var/lib/libvirt/images/bionic.qcow2 10G

#打开virt-manager
virt-manager

安装ubuntu虚机

虚机设置

找到并选择刚刚下载的镜像

选择内存和vCPU个数,其实这个不太有所谓

选择刚刚创建的卷

网络选项选择默认(我是NAT)

系统安装

------使用默认设置

------设置用户密码,用户名使用ubuntu,密码随意

------分区选择单ext4根分区 或者默认LVM分区亦可

------是否自动下载随意

------在安装软件选项中,选择安装openssh,也可以安装另外在openstack中需要使用的功能

------选择安装grub选单

登录虚机

通过之前设置的账号密码登录

建议登录后立马改root密码,我刚两次都是装完之后输入正确密码后提示错误的

安装cloud-init

cloud-initcloud-init脚本在实例启动时启动,搜索元数据提供者以从中获取公钥,安装并将公钥放置在镜像的默认账户中,在Ubuntu中该账户就是ubuntu

它可以:

1、设置默认语⾔环境

2、设置实例主机名

3、添加 ssh keys到 .ssh/authorized_keys

4、设置⽤户密码

5、配置⽹络安装软件包

同时/var/log/cloud-init.log 会完整地记录 cloud-init 运⾏的所有细节,是 debug 最重要的⼯具。

apt install cloud-init

对cloud init进行设置

dpkg-reconfigure cloud-init

并选择EC2

通过vim /etc/cloud/cloud.cfg可以修改将密钥放在哪个user的目录下

关闭实例

su - root

/sbin/shutdown -h now

删除细节信息

删除网卡细节

#我的vm名称是ubuntu18.04

virt-sysprep -d ubuntu18.04

使虚机脱离libvirt纳管

virsh undefine ubuntu18.04

结束与验证

压缩与转移

cd /var/lib/libvirt/images/

mkdir /iso

#修改一下权限

chown root:root bionic.qcow2

virt-sparsify --compress bionic.qcow2 /iso/bionic.qcow2

#注意如果硬盘空间不足就会告警
也可以使用qemu-img convert精简置备,两个命令作用一样

qemu-img convert -c -O qcow2 bionic.qcow2 /iso/bionic.qcow2

可以看到压缩之后体积大大减少

将压缩后的bionic.qcow2拿出来上传至OpenStack

验证是否能够正常运行

glance image-create --name ubuntu-bionic --disk-format qcow2 --container-format bare --visibility public --progress < /image/bionic.qcow2

创建实例,成功登录

相关推荐
袁庭新3 小时前
CentOS7通过yum无法安装软件问题解决方案
centos·操作系统
reset20215 小时前
ubuntu离线安装ollama
linux·ubuntu·ollama
m0_748248775 小时前
在 Ubuntu 上安装 Nginx 的详细指南
nginx·ubuntu·postgresql
猫猫的小茶馆17 小时前
【网络编程】UDP协议
linux·服务器·网络·网络协议·ubuntu·udp
AuGuSt_8118 小时前
在windows下安装windows+Ubuntu16.04双系统(下)
linux·ubuntu·双系统
aaon2235719 小时前
ubuntu ffmpeg 安装踩坑
linux·ubuntu·ffmpeg
从后端到QT19 小时前
ubuntu磁盘清理垃圾文件
linux·运维·ubuntu
JsenLong19 小时前
ubuntu 守护进程
linux·chrome·ubuntu
三天不学习20 小时前
如何在 Ubuntu 上安装 Docker:详细步骤指南
ubuntu·docker·eureka
geovindu21 小时前
python: SQLAlchemy (ORM) Simple example using mysql in Ubuntu 24.04
python·mysql·ubuntu