CentOS为各种不同的云环境提供cloud images, 一般来说,是通过cloud-init工具来修改用户密码或SSH keys. 但是那似乎不太方便。 下面是一种方便的方法。
官方的CentOS的cloud image的下载地址是:
第一步,安装软件libguestfs-tools
yum install libguestfs-tools
第二步,设定一个密码
virt-customize -a CentOS-6-x86_64-GenericCloud.qcow2 --root-password password:passw0rd
or
virt-customize -a CentOS-6-x86_64-GenericCloud.qcow2 --root-password random
可以参考文档:https://developer.aliyun.com/article/799104
Failed to connect socket to '/var/run/libvirt/libvirt-sock'的问题解决
1、增加libvirtd用户组
groupadd libvirtd
2、设置用户到组
sudo usermod -a -G libvirtd $USER
3、设置启动libvirtd服务的用户组
vi /etc/libvirt/libvirtd.conf
4、增加权限启动配置
vi /etc/polkit-1/localauthority/50-local.d/50-org.libvirtd-group-access.pkla
[libvirtd group Management Access]
Identity=unix-group:libvirtd
Action=org.libvirt.unix.manage
ResultAny=yes
ResultInactive=yes
ResultActive=yes
5、重启服务
service libvirtd restart
遇到virt-customize: error: libguestfs error: could not create appliance through
libvirt.
执行:export LIBGUESTFS_BACKEND=direct
成功:
[root@test01 ~]# export LIBGUESTFS_BACKEND=direct
[root@test01 ~]# virt-customize -a CentOS-6-x86_64-GenericCloud.qcow2 --root-password random
[ 0.0] Examining the guest ...
[ 31.4] Setting a random seed
[ 31.7] Setting passwords
virt-customize: Setting random password of root to qPpDcmZhMaSdrLi7
[ 43.7] Finishing off
随后将镜像上传到IBM COS中,可以通过rclone或者API方式调用COS,具体安装和配置可以参考链接:https://blog.csdn.net/weixin_42599323/article/details/111412387
随后我们执行上传操作:
rclone copy /root/CentOS-7-x86_64-GenericCloud.qcow2 icos-test:den-jok
上传后我们可以到数据桶里查看是否已完成上传。
下一步通过VPC自定义镜像导入COS中的qcow2的镜像。
首先进入VPC中的定制镜像页面:https://cloud.ibm.com/vpc-ext/compute/images
然后选择区域并点击创建,然后数据名称、资源组和标记
选择镜像所在的区域
选择源为“Cloud Object Storage”,然后选择实例、位置和桶名后,会显出qcow2和VHD的镜像格式的文件,选择需要导入的文件。
最后选择操作系统和版本,然后点击“导入镜像文件”。
镜像创建后,从VPC镜像模板中选择进行部署,部署完成,如果是通过root/password方式访问,可以通过VPC虚机处,选择VNC打开命令行登录系统。