社区编辑申请
注册/登录
在云端自动化设置和交付虚拟机
运维 服务器运维
Testcloud 是一个可以轻松的在几分钟之内准备云镜像测试的工具。它用几个命令就可以在云端自动化设置并交付准备运行的虚拟机(VM)。

  • 通过使用 Testcloud 自动化设置过程并交付一个准备运行的虚拟机,在几分钟之内准备好一个云镜像。

如果你是一个在云端使用 Fedora qcow2 镜像 的开发者或者爱好者,在一个镜像准备使用之前,你总是不得不做一大堆初始化设置。我对此深有体会,所以我很想找到一种使设置过程更加简单的方法。碰巧,整个 Fedora 质量保证团队也有同感,所以我们开发了 Testcloud 。

Testcloud 是一个可以轻松的在几分钟之内准备云镜像测试的工具。它用几个命令就可以在云端自动化设置并交付准备运行的虚拟机(VM)。

Testcloud:

  • 下载 qcow2 镜像
  • 用你选择的名称创建实例
  • 创建一个密码为 passw0rd,用户名为 fedora 的用户
  • 分配一个 IP 地址,以便于你之后用 SSH 登录到云端
  • 启动、停止、删除和列出一个实例

安装 Testcloud

要开始你的旅程,首先你必须安装 Testcloud 软件包。你可以通过终端或者“软件”应用来安装它。在这两种情况下,软件包的名字都是 testcloud 。用以下命令安装:

    $ sudo dnf install testcloud -y

一旦安装完成,将你所需要的用户添加到 testcloud 用户组,这有助于 Testcloud 自动完成设置过程的剩余部分。执行这两个命令,添加你的用户到 testcloud 用户组,并通过提升组权限重启会话:

    $ sudo usermod -a -G testcloud $USER
$ su - $USER

添加用户到 testcloud 组

像老手一样玩转云镜像

一旦你的用户获得了所需的组权限,创建一个实例:

    $ testcloud instance create <instance name> -u <url for qcow2 image>

或者,你可以使用 fedora:latest/fedora:XX(XX 是你的 Fedora 发行版本)来代替 完整的 URL 地址:

$ testcloud instance create -u fedora:latest

这将返回你的虚拟机的 IP 地址:

    $ testcloud instance create testcloud272593 -u https://download.fedoraproject.org/pub/fedora/linux/releases/33/Cloud/x86_64/images/Fedora-Cloud-Base-33-1.2.x86_64.qcow2  
[...]
INFO:Successfully booted instance testcloud272593
The IP of vm testcloud272593: 192.168.122.202
------------------------------------------------------------
To connect to the VM, use the following command (password is 'passw0rd'):
ssh fedora@192.168.122.202

你可以用默认用户 fedora 登录,密码是 passw0rd(注意是零)。你可以使用 ssh、virt-manager 或者支持连接到 libvirt 虚拟机方式来连接到它。

另一种创建 Fedora 云的方式是:

    $ testcloud instance create testcloud193 -u fedora:33

WARNING:Not proceeding with backingstore cleanup because there are some testcloud instances running.
You can fix this by following command(s):
testcloud instance stop testcloud272593
DEBUG:Local downloads will be stored in /var/lib/testcloud/backingstores.
DEBUG:successfully changed SELinux context for image /var/lib/testcloud/backingstores/Fedora-Cloud-Base-33-1.2.x86_64.qcow2
DEBUG:Creating instance directories
DEBUG:creating seed image /var/lib/testcloud/instances/testcloud193/testcloud193-seed.img
INFO:Seed image generated successfully
INFO:Successfully booted instance testcloud193
The IP of vm testcloud193: 192.168.122.225
------------------------------------------------------------
To connect to the VM, use the following command (password is 'passw0rd'):
ssh fedora@192.168.122.225
------------------------------------------------------------

玩转实例

Testcloud 可以用来管理实例。这包括像列出镜像或者停止和启动一个实例等活动。

要列出实例,使用 list 子命令:

    $ testcloud instance list                
Name IP State
------------------------------------------------------------
testcloud272593 192.168.122.202 running
testcloud193 192.168.122.225 running
testcloud252793 192.168.122.146 shutoff
testcloud93 192.168.122.152 shutoff

要停止一个运行的实例:

    $ testcloud instance stop testcloud193  
DEBUG:stop instance: testcloud193
DEBUG:stopping instance testcloud193.

要删除一个实例:

    $ testcloud instance destroy testcloud193  
DEBUG:remove instance: testcloud193
DEBUG:removing instance testcloud193 from libvirt.
DEBUG:Unregistering instance from libvirt.
DEBUG:removing instance /var/lib/testcloud/instances/testcloud193 from disk

要重启一个运行中的实例:

    $ testcloud instance reboot testcloud93                                                                                        
DEBUG:stop instance: testcloud93
[...]
INFO:Successfully booted instance testcloud93
The IP of vm testcloud93: 192.168.122.152
usage: testcloud [-h] {instance,image} ...
责任编辑:未丽燕 来源: Linux中国
相关推荐

2022-06-05 21:09:47

Python办公自动化

2022-06-20 22:37:25

Linux操作系统命令

2022-06-15 11:02:40

网络安全运营

2022-05-11 08:23:54

自动化测试软件测试

2022-06-15 08:21:49

Linux运维工程师

2022-06-06 14:35:59

KubevirtKubernetes虚拟机

2022-05-05 09:45:16

KVM虚拟机磁盘

2022-05-23 07:48:10

zabbix监控CentOS7

2022-06-15 08:25:07

Python天气数据可视化分析

2022-06-26 09:55:00

接口自动化项目

2022-06-01 17:30:06

UbuntuKVM虚拟化

2022-06-24 10:16:59

Python精选库

2022-06-23 12:43:36

区块链加密货币

2022-07-01 14:25:27

机器学习人工智能工业4.0

2022-06-23 11:42:22

MySQL数据库

2022-06-07 09:59:21

网络安全安全漏洞

2022-07-01 05:47:19

PyCharm插件开发

2022-06-03 09:41:03

DockerKubernetes容器

2022-06-17 18:49:25

pythonexcel

2022-06-10 07:45:09

CentOS国产操作系统

编辑推荐

运维工作到底是做什么的?给1到10年运维人的修仙指南Windows下的几种提权方式的粗略汇总推荐 | 10款优秀的SQL Server服务器监控工具9款优秀网络,服务器和应用程序监控工具
我收藏的内容
点赞
收藏

51CTO技术栈公众号