G027-OP-INS-RHEL-04 RedHat OpenStack 创建自定义的QCOW2格式镜像
Posted CloudCS
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了G027-OP-INS-RHEL-04 RedHat OpenStack 创建自定义的QCOW2格式镜像相关的知识,希望对你有一定的参考价值。
1 您需要了解
- 约定:我们称运行在
VMware Workstation
里面的虚拟机为客户虚拟机
(以下简称虚机
,采用CentOS 7.8
图形化);我们称在虚机
里面基于KVM
运行的虚拟机为KVM虚拟机
(以下简称KVM虚机
,采用CentOS 7.4
),是的,两层套娃 虚机
在启动前,必须在VMware Workstation
上为其开启虚拟化引擎虚拟化 Intel VT-x/EPT 或 AMD-V
- 建议
虚机
网络配置为NAT
或桥接
,因为未来KVM虚机
需要借助虚机
的外网能力进行联网安装软件包 - 您可参考下列相关文章
G016
完成 CentOS 安装及G019
和G020
完成 RedHat OpenStack 环境搭建及基础操作 - 为有更好的浏览体验,您可以点击文章左上方
目录
按钮来显示文章整体目录结构
- 相关文章
- 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 虚机安装虚拟化软件包
#配置本地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 = local
baseurl = 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 网络及主机名
2.3.4 配置 ROOT 密码
2.3.5 重启并测试网络
3 配置 KVM 虚拟机
3.1 修改 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 软件包
[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.cn99.com
* extras: mirrors.ustc.edu.cn
* updates: mirrors.ustc.edu.cn
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) <security@centos.org>"
Fingerprint: 6341 ab27 53d7 8a78 a7c2 7bb1 24c6 a8a7 f4a8 0eb5
Package : centos-release-7-4.1708.el7.centos.x86_64 (@anaconda)
From : /etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
Updating : libsepol-2.5-10.el7.x86_64 1/43
Updating : libselinux-2.5-15.el7.x86_64 2/43
Updating : audit-libs-2.8.5-4.el7.x86_64 3/43
Updating : libsemanage-2.5-14.el7.x86_64 4/43
Updating : libselinux-python-2.5-15.el7.x86_64 5/43
Installing : python-ipaddress-1.0.16-2.el7.noarch 6/43
Installing : python-six-1.9.0-2.el7.noarch 7/43
Installing : libsemanage-python-2.5-14.el7.x86_64 8/43
Installing : audit-libs-python-2.8.5-4.el7.x86_64 9/43
Installing : net-tools-2.0-0.25.20131004git.el7.x86_64 10/43
Updating : libselinux-utils-2.5-15.el7.x86_64 11/43
Updating : policycoreutils-2.5-34.el7.x86_64 12/43
Installing : setools-libs-3.3.8-4.el7.x86_64 13/43
Installing : libcgroup-0.41-21.el7.x86_64 14/43
Installing : python-prettytable-0.7.2-3.el7.noarch 15/43
Installing : libyaml-0.1.4-11.el7_0.x86_64 16/43
Installing : PyYAML-3.10-11.el7.x86_64 17/43
Installing : python-chardet-2.2.1-3.el7.noarch 18/43
Installing : python-jsonpointer-1.9-2.el7.noarch 19/43
Installing : python-jsonpatch-1.2-4.el7.noarch 20/43
Installing : python-backports-1.0-8.el7.x86_64 21/43
Installing : python-backports-ssl_match_hostname-3.5.0.1-1.el7.noarch 22/43
Installing : python-setuptools-0.9.8-7.el7.noarch 23/43
Installing : python-urllib3-1.10.2-7.el7.noarch 24/43
Installing : python-requests-2.6.0-10.el7.noarch 25/43
Installing : python-babel-0.9.6-8.el7.noarch 26/43
Installing : python-markupsafe-0.11-10.el7.x86_64 27/43
Installing : python-jinja2-2.7.2-4.el7.noarch 28/43
Installing : python-IPy-0.75-6.el7.noarch 29/43
Installing : checkpolicy-2.5-8.el7.x86_64 30/43
Installing : policycoreutils-python-2.5-34.el7.x86_64 31/43
Installing : pyserial-2.6-6.el7.noarch 32/43
Installing : cloud-init-19.4-7.el7.centos.6.x86_64 33/43
Updating : audit-2.8.5-4.el7.x86_64 34/43
Installing : cloud-utils-growpart-0.29-5.el7.noarch 35/43
Cleanup : policycoreutils-2.5-17.1.el7.x86_64 36/43
Cleanup : libsemanage-2.5-8.el7.x86_64 37/43
Cleanup : libselinux-utils-2.5-11.el7.x86_64 38/43
Cleanup : audit-2.7.6-3.el7.x86_64 39/43
Cleanup : libselinux-python-2.5-11.el7.x86_64 40/43
Cleanup : libselinux-2.5-11.el7.x86_64 41/43
Cleanup : libsepol-2.5-6.el7.x86_64 42/43
Cleanup : audit-libs-2.7.6-3.el7.x86_64 43/43
Verifying : python-backports-ssl_match_hostname-3.5.0.1-1.el7.noarch 1/43
Verifying : libselinux-2.5-15.el7.x86_64 2/43
Verifying : libselinux-python-2.5-15.el7.x86_64 3/43
Verifying : python-setuptools-0.9.8-7.el7.noarch 4/43
Verifying : pyserial-2.6-6.el7.noarch 5/43
Verifying : python-urllib3-1.10.2-7.el7.noarch 6/43
Verifying : audit-libs-2.8.5-4.el7.x86_64 7/43
Verifying : checkpolicy-2.5-8.el7.x86_64 8/43
Verifying : policycoreutils-2.5-34.el7.x86_64 9/43
Verifying : libsepol-2.5-10.el7.x86_64 10/43
Verifying : net-tools-2.0-0.25.20131004git.el7.x86_64 11/43
Verifying : python-IPy-0.75-6.el7.noarch 12/43
Verifying : python-jinja2-2.7.2-4.el7.noarch 13/43
Verifying : libselinux-utils-2.5-15.el7.x86_64 14/43
Verifying : policycoreutils-python-2.5-34.el7.x86_64 15/43
Verifying : python-six-1.9.0-2.el7.noarch 16/43
Verifying : setools-libs-3.3.8-4.el7.x86_64 17/43
Verifying : python-markupsafe-0.11-10.el7.x86_64 18/43
Verifying : audit-2.8.5-4.el7.x86_64 19/43
Verifying : python-babel-0.9.6-8.el7.noarch 20/43
Verifying : libsemanage-python-2.5-14.el7.x86_64 21/43
Verifying : libsemanage-2.5-14.el7.x86_64 22/43
Verifying : python-backports-1.0-8.el7.x86_64 23/43
Verifying : cloud-init-19.4-7.el7.centos.6.x86_64 24/43
Verifying : python-jsonpointer-1.9-2.el7.noarch 25/43
Verifying : python-jsonpatch-1.2-4.el7.noarch 26/43
Verifying : audit-libs-python-2.8.5-4.el7.x86_64 27/43
Verifying : python-chardet-2.2.1-3.el7.noarch 28/43
Verifying : libyaml-0.1.4-11.el7_0.x86_64 29/43
Verifying : python-prettytable-0.7.2-3.el7.noarch 30/43
Verifying : python-requests-2.6.0-10.el7.noarch 31/43
Verifying : python-ipaddress-1.0.16-2.el7.noarch 32/43
Verifying : PyYAML-3.10-11.el7.x86_64 33/43
Verifying : cloud-utils-growpart-0.29-5.el7.noarch 34/43
Verifying : libcgroup-0.41-21.el7.x86_64 35/43
Verifying : libselinux-utils-2.5-11.el7.x86_64 36/43
Verifying : libselinux-2.5-11.el7.x86_64 37/43
Verifying : libsemanage-2.5-8.el7.x86_64 38/43
Verifying : audit-2.7.6-3.el7.x86_64 39/43
Verifying : policycoreutils-2.5-17.1.el7.x86_64 40/43
Verifying : libsepol-2.5-6.el7.x86_64 41/43
Verifying : audit-libs-2.7.6-3.el7.x86_64 42/43
Verifying : libselinux-python-2.5-11.el7.x86_64 43/43
Installed:
cloud-init.x86_64 0:19.4-7.el7.centos.6
cloud-utils-growpart.noarch 0:0.29-5.el7
Dependency Installed:
PyYAML.x86_64 0:3.10-11.el7
audit-libs-python.x86_64 0:2.8.5-4.el7
checkpolicy.x86_64 0:2.5-8.el7
libcgroup.x86_64 0:0.41-21.el7
libsemanage-python.x86_64 0:2.5-14.el7
libyaml.x86_64 0:0.1.4-11.el7_0
net-tools.x86_64 0:2.0-0.25.20131004git.el7
policycoreutils-python.x86_64 0:2.5-34.el7
pyserial.noarch 0:2.6-6.el7
python-IPy.noarch 0:0.75-6.el7
python-babel.noarch 0:0.9.6-8.el7
python-backports.x86_64 0:1.0-8.el7
python-backports-ssl_match_hostname.noarch 0:3.5.0.1-1.el7
python-chardet.noarch 0:2.2.1-3.el7
python-ipaddress.noarch 0:1.0.16-2.el7
python-jinja2.noarch 0:2.7.2-4.el7
python-jsonpatch.noarch 0:1.2-4.el7
python-jsonpointer.noarch 0:1.9-2.el7
python-markupsafe.x86_64 0:0.11-10.el7
python-prettytable.noarch 0:0.7.2-3.el7
python-requests.noarch 0:2.6.0-10.el7
python-setuptools.noarch 0:0.9.8-7.el7
python-six.noarch 0:1.9.0-2.el7
python-urllib3.noarch 0:1.10.2-7.el7
setools-libs.x86_64 0:3.3.8-4.el7
Dependency Updated:
audit.x86_64 0:2.8.5-4.el7 audit-libs.x86_64 0:2.8.5-4.el7
libselinux.x86_64 0:2.5-15.el7 libselinux-python.x86_64 0:2.5-15.el7
libselinux-utils.x86_64 0:2.5-15.el7 libsemanage.x86_64 0:2.5-14.el7
libsepol.x86_64 0:2.5-10.el7 policycoreutils.x86_64 0:2.5-34.el7
Complete!
3.3 编辑 cloud.cfg 文件
#添加内容
- 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 文件
#添加内容
NOZEROCONF=yes
#最终配置文件效果
[root@local ~]# vi /etc/sysconfig/network
[root@local ~]# cat /etc/sysconfig/network
#Created by anaconda
NOZEROCONF=yes
3.5 编辑 grub 文件
#添加内容
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 镜像
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 注册镜像
5.2 创建云主机类型(规格)
5.3 发放云主机测试
- END
以上是关于G027-OP-INS-RHEL-04 RedHat OpenStack 创建自定义的QCOW2格式镜像的主要内容,如果未能解决你的问题,请参考以下文章