app开发者平台在数字化时代的重要性与发展趋势解析
635
2022-11-14
G027-OP-INS-RHEL-04 RedHat OpenStack 创建自定义的QCOW2格式镜像
1 您需要了解
相关文章 G016-OS-LIN-CENT-01 CentOS 7.8.2003 安装 G019-OP-INS-RHEL-01 PackStack 安装 RedHat OpenStack G020-OP-INS-RHEL-02 RedHat OpenStack 发放云主机(命令行) G023-OP-INS-RHEL-03 RedHat OpenStack Cinder 对接 NFS 后端存储
2 安装 KVM 虚机
2.1 虚机安装虚拟化软件包
注意:虚机 指的是 CentOS 7.8 #挂载光盘 [root@cloudcs ~]# mount /dev/cdrom /mnt mount: /dev/sr0 is write-protected, mounting read-only [root@cloudcs ~]# ls /mnt/ CentOS_BuildTag EULA images LiveOS repodata RPM-GPG-KEY-CentOS-Testing-7 EFI GPL isolinux Packages RPM-GPG-KEY-CentOS-7 TRANS.TBL
#配置本地YUM源[root@cloudcs ~]# mkdir /tmp/repo[root@cloudcs ~]# mv /etc/yum.repos.d/*.repo /tmp/repo/[root@cloudcs ~]# vim /etc/yum.repos.d/local.repo[root@cloudcs ~]# cat /etc/yum.repos.d/local.repo [local_repo]name = localbaseurl = file:///mnt/gpgcheck = 0
#安装虚拟化软件包及虚拟机镜像管理工具[root@cloudcs ~]# yum groupinstall -y "Virtualization*"[root@cloudcs ~]# yum install -y libguestfs-tools-c.x86_64
## 2.2 创建 KVM 虚机 > 注意:`虚机` 通过命令 `ifconfig` 可看到一张虚拟网卡 `vritbr0`,该虚拟网卡为 `kvm虚机` default 默认的 `NAT` 网络类型网卡(`192.168.122.1`) ```shell #创建目录上传ISO镜像 [root@cloudcs ~]# mkdir -p /soft/disk #将 CentOS 7.4 上传到 /soft 目录下 [root@cloudcs ~]# ls /soft/ CentOS-7-x86_64-DVD-1708.iso disk #创建 kvm虚机 使用的磁盘文件 [root@cloudcs ~]# qemu-img create -f qcow2 /soft/disk/centos7.qcow2 15G Formatting '/soft/disk/centos7.qcow2', fmt=qcow2 size=16106127360 encryption=off cluster_size=65536 lazy_refcounts=off #创建 kvm 虚机 virt-install \ --name centos \ --disk path=/soft/disk/centos7.qcow2 \ --vcpus 1 \ --memory 2048 \ --location /soft/CentOS-7-x86_64-DVD-1708.iso \ --network network=default
2.3 安装 KVM 虚机
2.3.1 语言选择
2.3.2 自动分区
2.3.3 网络及主机名
注意:当开启网络后,必须可以通过 DHCP 自动获取到 IP 地址,如下图
2.3.4 配置 ROOT 密码
默认采用最小化 minimal 安装
2.3.5 重启并测试网络
重启 kvm 虚机,并以 root 身份登录,测试 kvm 虚机 能否连通外网
3 配置 KVM 虚拟机
3.1 修改 KVM 虚机网络配置文件
注意:修改的是 kvm虚机,不是 虚机,概念分不清?参考第一部分 约定
# 修改 kvm 虚机网卡配置文件,使其只包括以下 4 行内容 [root@local ~]# vi /etc/sysconfig/network-scripts/ifcfg-eth0 [root@local ~]# cat /etc/sysconfig/network-scripts/ifcfg-eth0 TYPE=Ethernet BOOTPROTO=dhcp DEVICE=eth0 ONBOOT=yes
3.2 安装 cloud-init 软件包
根据 2.3.5 小节测试,kvm 虚机可正常连通外网,此时直接在线安装软件包即可。目的是为了可以获取到客户自定义元数据信息,如主机名及root密码等。
[root@local ~]# yum install -y cloud-utils-growpart cloud-init
#输出
Loaded plugins: fastestmirror
base | 3.6 kB 00:00
extras | 2.9 kB 00:00
updates | 2.9 kB 00:00
(1/4): extras/7/x86_64/primary_db | 247 kB 00:00
(2/4): base/7/x86_64/group_gz | 153 kB 00:00
(3/4): updates/7/x86_64/primary_db | 16 MB 00:31
(4/4): base/7/x86_64/primary_db | 6.1 MB 00:36
Determining fastest mirrors
* base: mirrors-99.com
* extras: mirrors.ustc.edu-
* updates: mirrors.ustc.edu-
Resolving Dependencies
--> Running transaction check
---> Package cloud-init.x86_64 0:19.4-7.el7.centos.6 will be installed
--> Processing Dependency: python-six for package: cloud-init-19.4-7.el7.centos.6.x86_64
--> Processing Dependency: python-setuptools for package: cloud-init-19.4-7.el7.centos.6.x86_64
--> Processing Dependency: python-requests for package: cloud-init-19.4-7.el7.centos.6.x86_64
--> Processing Dependency: python-prettytable for package: cloud-init-19.4-7.el7.centos.6.x86_64
--> Processing Dependency: python-jsonpatch for package: cloud-init-19.4-7.el7.centos.6.x86_64
--> Processing Dependency: python-jinja2 for package: cloud-init-19.4-7.el7.centos.6.x86_64
--> Processing Dependency: pyserial for package: cloud-init-19.4-7.el7.centos.6.x86_64
--> Processing Dependency: policycoreutils-python for package: cloud-init-19.4-7.el7.centos.6.x86_64
--> Processing Dependency: net-tools for package: cloud-init-19.4-7.el7.centos.6.x86_64
--> Processing Dependency: PyYAML for package: cloud-init-19.4-7.el7.centos.6.x86_64
---> Package cloud-utils-growpart.noarch 0:0.29-5.el7 will be installed
--> Running transaction check
---> Package PyYAML.x86_64 0:3.10-11.el7 will be installed
--> Processing Dependency: libyaml-0.so.2()(64bit) for package: PyYAML-3.10-11.el7.x86_64
---> Package net-tools.x86_64 0:2.0-0.25.20131004git.el7 will be installed
---> Package policycoreutils-python.x86_64 0:2.5-34.el7 will be installed
--> Processing Dependency: policycoreutils = 2.5-34.el7 for package: policycoreutils-python-2.5-34.el7.x86_64
--> Processing Dependency: setools-libs >= 3.3.8-4 for package: policycoreutils-python-2.5-34.el7.x86_64
--> Processing Dependency: libsemanage-python >= 2.5-14 for package: policycoreutils-python-2.5-34.el7.x86_64
--> Processing Dependency: audit-libs-python >= 2.1.3-4 for package: policycoreutils-python-2.5-34.el7.x86_64
--> Processing Dependency: python-IPy for package: policycoreutils-python-2.5-34.el7.x86_64
--> Processing Dependency: libqpol.so.1(VERS_1.4)(64bit) for package: policycoreutils-python-2.5-34.el7.x86_64
--> Processing Dependency: libqpol.so.1(VERS_1.2)(64bit) for package: policycoreutils-python-2.5-34.el7.x86_64
--> Processing Dependency: libcgroup for package: policycoreutils-python-2.5-34.el7.x86_64
--> Processing Dependency: libapol.so.4(VERS_4.0)(64bit) for package: policycoreutils-python-2.5-34.el7.x86_64
--> Processing Dependency: checkpolicy for package: policycoreutils-python-2.5-34.el7.x86_64
--> Processing Dependency: libqpol.so.1()(64bit) for package: policycoreutils-python-2.5-34.el7.x86_64
--> Processing Dependency: libapol.so.4()(64bit) for package: policycoreutils-python-2.5-34.el7.x86_64
---> Package pyserial.noarch 0:2.6-6.el7 will be installed
---> Package python-jinja2.noarch 0:2.7.2-4.el7 will be installed
--> Processing Dependency: python-babel >= 0.8 for package: python-jinja2-2.7.2-4.el7.noarch
--> Processing Dependency: python-markupsafe for package: python-jinja2-2.7.2-4.el7.noarch
---> Package python-jsonpatch.noarch 0:1.2-4.el7 will be installed
--> Processing Dependency: python-jsonpointer for package: python-jsonpatch-1.2-4.el7.noarch
---> Package python-prettytable.noarch 0:0.7.2-3.el7 will be installed
---> Package python-requests.noarch 0:2.6.0-10.el7 will be installed
--> Processing Dependency: python-urllib3 >= 1.10.2-1 for package: python-requests-2.6.0-10.el7.noarch
--> Processing Dependency: python-chardet >= 2.2.1-1 for package: python-requests-2.6.0-10.el7.noarch
---> Package python-setuptools.noarch 0:0.9.8-7.el7 will be installed
--> Processing Dependency: python-backports-ssl_match_hostname for package: python-setuptools-0.9.8-7.el7.noarch
---> Package python-six.noarch 0:1.9.0-2.el7 will be installed
--> Running transaction check
---> Package audit-libs-python.x86_64 0:2.8.5-4.el7 will be installed
--> Processing Dependency: audit-libs(x86-64) = 2.8.5-4.el7 for package: audit-libs-python-2.8.5-4.el7.x86_64
---> Package checkpolicy.x86_64 0:2.5-8.el7 will be installed
---> Package libcgroup.x86_64 0:0.41-21.el7 will be installed
---> Package libsemanage-python.x86_64 0:2.5-14.el7 will be installed
--> Processing Dependency: libsemanage = 2.5-14.el7 for package: libsemanage-python-2.5-14.el7.x86_64
---> Package libyaml.x86_64 0:0.1.4-11.el7_0 will be installed
---> Package policycoreutils.x86_64 0:2.5-17.1.el7 will be updated
---> Package policycoreutils.x86_64 0:2.5-34.el7 will be an update
--> Processing Dependency: libsepol >= 2.5-10 for package: policycoreutils-2.5-34.el7.x86_64
--> Processing Dependency: libselinux-utils >= 2.5-14 for package: policycoreutils-2.5-34.el7.x86_64
---> Package python-IPy.noarch 0:0.75-6.el7 will be installed
---> Package python-babel.noarch 0:0.9.6-8.el7 will be installed
---> Package python-backports-ssl_match_hostname.noarch 0:3.5.0.1-1.el7 will be installed
--> Processing Dependency: python-ipaddress for package: python-backports-ssl_match_hostname-3.5.0.1-1.el7.noarch
--> Processing Dependency: python-backports for package: python-backports-ssl_match_hostname-3.5.0.1-1.el7.noarch
---> Package python-chardet.noarch 0:2.2.1-3.el7 will be installed
---> Package python-jsonpointer.noarch 0:1.9-2.el7 will be installed
---> Package python-markupsafe.x86_64 0:0.11-10.el7 will be installed
---> Package python-urllib3.noarch 0:1.10.2-7.el7 will be installed
---> Package setools-libs.x86_64 0:3.3.8-4.el7 will be installed
--> Processing Dependency: libselinux >= 2.5-14.1 for package: setools-libs-3.3.8-4.el7.x86_64
--> Running transaction check
---> Package audit-libs.x86_64 0:2.7.6-3.el7 will be updated
--> Processing Dependency: audit-libs(x86-64) = 2.7.6-3.el7 for package: audit-2.7.6-3.el7.x86_64
---> Package audit-libs.x86_64 0:2.8.5-4.el7 will be an update
---> Package libselinux.x86_64 0:2.5-11.el7 will be updated
--> Processing Dependency: libselinux(x86-64) = 2.5-11.el7 for package: libselinux-python-2.5-11.el7.x86_64
---> Package libselinux.x86_64 0:2.5-15.el7 will be an update
---> Package libselinux-utils.x86_64 0:2.5-11.el7 will be updated
---> Package libselinux-utils.x86_64 0:2.5-15.el7 will be an update
---> Package libsemanage.x86_64 0:2.5-8.el7 will be updated
---> Package libsemanage.x86_64 0:2.5-14.el7 will be an update
---> Package libsepol.x86_64 0:2.5-6.el7 will be updated
---> Package libsepol.x86_64 0:2.5-10.el7 will be an update
---> Package python-backports.x86_64 0:1.0-8.el7 will be installed
---> Package python-ipaddress.noarch 0:1.0.16-2.el7 will be installed
--> Running transaction check
---> Package audit.x86_64 0:2.7.6-3.el7 will be updated
---> Package audit.x86_64 0:2.8.5-4.el7 will be an update
---> Package libselinux-python.x86_64 0:2.5-11.el7 will be updated
---> Package libselinux-python.x86_64 0:2.5-15.el7 will be an update
--> Finished Dependency Resolution
Dependencies Resolved
================================================================================
Package Arch Version Repository
Size
================================================================================
Installing:
cloud-init x86_64 19.4-7.el7.centos.6 updates 933 k
cloud-utils-growpart noarch 0.29-5.el7 base 27 k
Installing for dependencies:
PyYAML x86_64 3.10-11.el7 base 153 k
audit-libs-python x86_64 2.8.5-4.el7 base 76 k
checkpolicy x86_64 2.5-8.el7 base 295 k
libcgroup x86_64 0.41-21.el7 base 66 k
libsemanage-python x86_64 2.5-14.el7 base 113 k
libyaml x86_64 0.1.4-11.el7_0 base 55 k
net-tools x86_64 2.0-0.25.20131004git.el7 base 306 k
policycoreutils-python x86_64 2.5-34.el7 base 457 k
pyserial noarch 2.6-6.el7 base 124 k
python-IPy noarch 0.75-6.el7 base 32 k
python-babel noarch 0.9.6-8.el7 base 1.4 M
python-backports x86_64 1.0-8.el7 base 5.8 k
python-backports-ssl_match_hostname
noarch 3.5.0.1-1.el7 base 13 k
python-chardet noarch 2.2.1-3.el7 base 227 k
python-ipaddress noarch 1.0.16-2.el7 base 34 k
python-jinja2 noarch 2.7.2-4.el7 base 519 k
python-jsonpatch noarch 1.2-4.el7 base 15 k
python-jsonpointer noarch 1.9-2.el7 base 13 k
python-markupsafe x86_64 0.11-10.el7 base 25 k
python-prettytable noarch 0.7.2-3.el7 base 37 k
python-requests noarch 2.6.0-10.el7 base 95 k
python-setuptools noarch 0.9.8-7.el7 base 397 k
python-six noarch 1.9.0-2.el7 base 29 k
python-urllib3 noarch 1.10.2-7.el7 base 103 k
setools-libs x86_64 3.3.8-4.el7 base 620 k
Updating for dependencies:
audit x86_64 2.8.5-4.el7 base 256 k
audit-libs x86_64 2.8.5-4.el7 base 102 k
libselinux x86_64 2.5-15.el7 base 162 k
libselinux-python x86_64 2.5-15.el7 base 236 k
libselinux-utils x86_64 2.5-15.el7 base 151 k
libsemanage x86_64 2.5-14.el7 base 151 k
libsepol x86_64 2.5-10.el7 base 297 k
policycoreutils x86_64 2.5-34.el7 base 917 k
Transaction Summary
================================================================================
Install 2 Packages (+25 Dependent packages)
Upgrade ( 8 Dependent packages)
Total download size: 8.2 M
Downloading packages:
Delta RPMs disabled because /usr/bin/applydeltarpm not installed.
warning: /var/cache/yum/x86_64/7/base/packages/PyYAML-3.10-11.el7.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID f4a80eb5: NOKEY
Public key for PyYAML-3.10-11.el7.x86_64.rpm is not installed
(1/35): PyYAML-3.10-11.el7.x86_64.rpm | 153 kB 00:00
(2/35): audit-libs-python-2.8.5-4.el7.x86_64.rpm | 76 kB 00:00
(3/35): cloud-utils-growpart-0.29-5.el7.noarch.rpm | 27 kB 00:00
(4/35): audit-2.8.5-4.el7.x86_64.rpm | 256 kB 00:00
(5/35): audit-libs-2.8.5-4.el7.x86_64.rpm | 102 kB 00:00
(6/35): libcgroup-0.41-21.el7.x86_64.rpm | 66 kB 00:00
(7/35): libselinux-utils-2.5-15.el7.x86_64.rpm | 151 kB 00:00
(8/35): libselinux-python-2.5-15.el7.x86_64.rpm | 236 kB 00:00
(9/35): libselinux-2.5-15.el7.x86_64.rpm | 162 kB 00:00
(10/35): libsemanage-2.5-14.el7.x86_64.rpm | 151 kB 00:00
(11/35): checkpolicy-2.5-8.el7.x86_64.rpm | 295 kB 00:00
(12/35): libyaml-0.1.4-11.el7_0.x86_64.rpm | 55 kB 00:00
(13/35): libsemanage-python-2.5-14.el7.x86_64.rpm | 113 kB 00:00
(14/35): libsepol-2.5-10.el7.x86_64.rpm | 297 kB 00:00
(15/35): net-tools-2.0-0.25.20131004git.el7.x86_64.rpm | 306 kB 00:00
Public key for cloud-init-19.4-7.el7.centos.6.x86_64.rpm is not installed03 ETA
(16/35): cloud-init-19.4-7.el7.centos.6.x86_64.rpm | 933 kB 00:01
(17/35): policycoreutils-python-2.5-34.el7.x86_64.rpm | 457 kB 00:00
(18/35): python-IPy-0.75-6.el7.noarch.rpm | 32 kB 00:00
(19/35): python-backports-1.0-8.el7.x86_64.rpm | 5.8 kB 00:00
(20/35): policycoreutils-2.5-34.el7.x86_64.rpm | 917 kB 00:00
(21/35): pyserial-2.6-6.el7.noarch.rpm | 124 kB 00:00
(22/35): python-backports-ssl_match_hostname-3.5.0.1-1.el7 | 13 kB 00:00
(23/35): python-ipaddress-1.0.16-2.el7.noarch.rpm | 34 kB 00:00
(24/35): python-jsonpatch-1.2-4.el7.noarch.rpm | 15 kB 00:00
(25/35): python-jsonpointer-1.9-2.el7.noarch.rpm | 13 kB 00:00
(26/35): python-prettytable-0.7.2-3.el7.noarch.rpm | 37 kB 00:00
(27/35): python-markupsafe-0.11-10.el7.x86_64.rpm | 25 kB 00:00
(28/35): python-requests-2.6.0-10.el7.noarch.rpm | 95 kB 00:00
(29/35): python-chardet-2.2.1-3.el7.noarch.rpm | 227 kB 00:00
(30/35): python-six-1.9.0-2.el7.noarch.rpm | 29 kB 00:00
(31/35): python-urllib3-1.10.2-7.el7.noarch.rpm | 103 kB 00:00
(32/35): python-jinja2-2.7.2-4.el7.noarch.rpm | 519 kB 00:00
(33/35): setools-libs-3.3.8-4.el7.x86_64.rpm | 620 kB 00:00
(34/35): python-setuptools-0.9.8-7.el7.noarch.rpm | 397 kB 00:00
(35/35): python-babel-0.9.6-8.el7.noarch.rpm | 1.4 MB 00:02
--------------------------------------------------------------------------------
Total 2.0 MB/s | 8.2 MB 00:04
Retrieving key from file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
Importing GPG key 0xF4A80EB5:
Userid : "CentOS-7 Key (CentOS 7 Official Signing Key)
3.3 编辑 cloud.cfg 文件
编辑 /etc/cloud/cloud.cfg 配置文件,在 cloud_init_modules 下添加以下内容
#添加内容 - resolv-conf #最终配置文件效果 [root@local ~]# vi /etc/cloud/cloud.cfg [root@local ~]# cat /etc/cloud/cloud.cfg users: - default disable_root: 1 ssh_pwauth: 0 mount_default_fields: [~, ~, 'auto', 'defaults,nofail,x-systemd.requires=cloud-init.service', '0', '2'] resize_rootfs_tmp: /dev ssh_deletekeys: 1 ssh_genkeytypes: ~ syslog_fix_perms: ~ disable_vmware_customization: false cloud_init_modules: - disk_setup - migrator - bootcmd - write-files - growpart - resizefs - set_hostname - update_hostname - update_etc_hosts - rsyslog - users-groups - ssh - resolv-conf cloud_config_modules: - mounts - locale - set-passwords - rh_subscription - yum-add-repo - package-update-upgrade-install - timezone - puppet - chef - salt-minion - mcollective - disable-ec2-metadata - runcmd cloud_final_modules: - rightscale_userdata - scripts-per-once - scripts-per-boot - scripts-per-instance - scripts-user - ssh-authkey-fingerprints - keys-to-console - phone-home - final-message - power-state-change system_info: default_user: name: centos lock_passwd: true gecos: Cloud User groups: [adm, systemd-journal] sudo: ["ALL=(ALL) NOPASSWD:ALL"] shell: /bin/bash distro: rhel paths: cloud_dir: /var/lib/cloud templates_dir: /etc/cloud/templates ssh_svcname: sshd # vim:syntax=yaml
3.4 编辑 network 文件
编辑 /etc/sysconfig/network 配置文件,使其包含以下内容,避免访问 EC2 元数据服务时出现问题。
#添加内容 NOZEROCONF=yes #最终配置文件效果 [root@local ~]# vi /etc/sysconfig/network [root@local ~]# cat /etc/sysconfig/network #Created by anaconda NOZEROCONF=yes
3.5 编辑 grub 文件
编辑 /etc/default/grub 配置文件,使其包含以下引导选项内容,为了确保控制台的信息出现在 dashboard 的日志标签页中,以及 nova console-log 日志的输出内容中。
#添加内容 GRUB_CMDLINE_LINUX_DEFAULT="console=tty0 console=ttyS0,115200n8" #最终配置文件效果 [root@local ~]# vi /etc/default/grub [root@local ~]# cat /etc/default/grub GRUB_TIMEOUT=5 GRUB_DISTRIBUTOR="$(sed 's, release .*$,,g' /etc/system-release)" GRUB_DEFAULT=saved GRUB_DISABLE_SUBMENU=true GRUB_TERMINAL_OUTPUT="console" GRUB_CMDLINE_LINUX="rd.lvm.lv=centos/root rd.lvm.lv=centos/swap rhgb quiet" GRUB_CMDLINE_LINUX_DEFAULT="console=tty0 console=ttyS0,115200n8" GRUB_DISABLE_RECOVERY="true" #执行命令使参数生效 [root@local ~]# grub2-mkconfig -o /boot/grub2/grub.cfg Generating grub configuration file ... Found linux image: /boot/vmlinuz-3.10.0-693.el7.x86_64 Found initrd image: /boot/initramfs-3.10.0-693.el7.x86_64.img Found linux image: /boot/vmlinuz-0-rescue-c515a8f65bf14e138d99b2c451179327 Found initrd image: /boot/initramfs-0-rescue-c515a8f65bf14e138d99b2c451179327.img done
3.6 关闭 KVM 虚拟机
[root@local ~]# init 0
4 创建 QCOW2 镜像
注意:以下步骤在 虚机 中操作,不是 kvm 虚机,概念分不清?参考第一部分 约定
4.1 重置并清理镜像
[root@cloudcs ~]# virsh list --all Id Name State ---------------------------------------------------- - centos shut off [root@cloudcs ~]# virt-sysprep -d centos #输出 [ 0.0] Examining the guest ... [ 25.4] Performing "abrt-data" ... [ 25.4] Performing "backup-files" ... [ 26.3] Performing "bash-history" ... [ 26.4] Performing "blkid-tab" ... [ 26.4] Performing "crash-data" ... [ 26.4] Performing "cron-spool" ... [ 26.4] Performing "dhcp-client-state" ... [ 26.4] Performing "dhcp-server-state" ... [ 26.4] Performing "dovecot-data" ... [ 26.4] Performing "logfiles" ... [ 26.5] Performing "machine-id" ... [ 26.5] Performing "mail-spool" ... [ 26.5] Performing "net-hostname" ... [ 26.5] Performing "net-hwaddr" ... [ 26.5] Performing "pacct-log" ... [ 26.5] Performing "package-manager-cache" ... [ 26.5] Performing "pam-data" ... [ 26.5] Performing "passwd-backups" ... [ 26.5] Performing "puppet-data-log" ... [ 26.6] Performing "rh-subscription-manager" ... [ 26.6] Performing "rhn-systemid" ... [ 26.6] Performing "rpm-db" ... [ 26.6] Performing "samba-db-log" ... [ 26.6] Performing "script" ... [ 26.6] Performing "smolt-uuid" ... [ 26.6] Performing "ssh-hostkeys" ... [ 26.6] Performing "ssh-userdir" ... [ 26.6] Performing "sssd-db-log" ... [ 26.6] Performing "tmp-files" ... [ 26.6] Performing "udev-persistent-net" ... [ 26.6] Performing "utmp" ... [ 26.6] Performing "yum-uuid" ... [ 26.6] Performing "customize" ... [ 26.6] Setting a random seed [ 26.6] Setting the machine ID in /etc/machine-id [ 26.7] Performing "lvm-uuids" ...
4.2 创建并压缩镜像
#查找 centos 实例对应的磁盘文件 [root@cloudcs ~]# virsh domblklist centos Target Source ------------------------------------------------ vda /soft/disk/centos7.qcow2 hda - #创建并清理压缩镜像 [root@cloudcs ~]# virt-sparsify --compress /soft/disk/centos7.qcow2 /tmp/centos-cloud.qcow2 #输出 [ 0.0] Create overlay file in /tmp to protect source disk [ 0.1] Examine source disk 100% ⟦▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒⟧ 00:00 [ 13.6] Fill free space in /dev/centos/root with zero 100% ⟦▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒⟧ 00:00 [ 31.5] Clearing Linux swap on /dev/centos/swap [ 33.3] Fill free space in /dev/sda1 with zero [ 40.9] Copy to destination and make sparse [ 101.4] Sparsify operation completed with no errors. virt-sparsify: Before deleting the old disk, carefully check that the target disk boots and works correctly.
5 测试镜像启动
5.1 注册镜像
将镜像 centos-cloud.qcow2 注册到 OpenStack 平台,以下为图形化注册演示,命令行注册请参考博文 G020-OP-INS-RHEL-02 RedHat OpenStack 发放云主机(命令行)
5.2 创建云主机类型(规格)
5.3 发放云主机测试
注意:网络及路由请参考 G020 创建,务必保证路由及网关存在,否则无法获取到客户自定义主机名
观察启动流程及尝试登录,测试镜像正确无误
END
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~