且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

《OpenStack云计算实战手册(第2版)》一2.5 用OpenStack镜像服务管理镜像

更新时间:2022-09-04 14:31:06

本节书摘来异步社区《OpenStack云计算实战手册(第2版)》一书中的第2章,第2.5节,作者: 【英】Kevin Jackson , 【美】Cody Bunch 译者: 黄凯 , 杜玉杰 责编: 杨海玲,更多章节内容可以访问云栖社区“异步社区”公众号查看。

2.5 用OpenStack镜像服务管理镜像

OpenStack云计算实战手册(第2版)
在OpenStack存储中上传和管理镜像都是通过glance命令行工具实现的,它提供了一系列OpenStack环境中上传、删除、修改存储镜像相关信息的命令,非常方便。

准备工作
开始时,请确认登录到了可以运行glance工具的Ubuntu系统或者已经在OpenStack镜像服务直接运行在其上的OpenStack 控制节点上。可以通过下面的方法安装glance客户端工具:

sudo apt-get update  
sudo apt-get -y install glance-client

为了保证环境变量设置正确,admin用户和密码应和之前创建的保持一致,执行以下操作:

export OS_TENANT_NAME=cookbook  
export OS_USERNAME=admin  
export OS_PASSWORD=openstack  
export OS_AUTH_URL=http://172.16.0.1:5000/v2.0/  
export OS_NO_CACHE=1

操作步骤
可以有多种方式上传和查看OpenStack镜像服务中的镜像文件,本书中将介绍其中一种。按照下面的步骤上传镜像文件和查看上传镜像的详细信息。

上传Ubuntu镜像文件
Ubuntu提供的镜像可以方便地添加到OpenStack环境之中。

1.首先,从http://uec-images.ubuntu.com上下载Ubuntu云系统镜像。

wget http://uec-images.ubuntu.com/precise/current/precise-server-  
cloudimg-amd64-disk1.img

2.然后上传这个文件:

glance image-create \  
   --name='Ubuntu 12.04 x86_64 Server' \  
   --disk-format=qcow2 \  
   --container-format=bare \  
   --public < precise-server-cloudimg-amd64-disk1.img

输出如图2-2所示。


《OpenStack云计算实战手册(第2版)》一2.5 用OpenStack镜像服务管理镜像


列出镜像文件
要列出OpenStack镜像服务资源库中的镜像文件,可以直接使用glance客户端来询问镜像服务或使用nova客户端来管理OpenStack环境,这将在第3章中详细介绍。

要列出用户可用的镜像,需要使用下面的命令:

glance image-list

可得到类似图2-3所示的结果。


《OpenStack云计算实战手册(第2版)》一2.5 用OpenStack镜像服务管理镜像

查看镜像文件详细信息
需要查看资源库中更详细的镜像信息时,可以通过下面的命令获得:

glance image-show IMAGE_ID

例如:

glance image-show 794dca52-5fcd-4216-ac8e-7655cdc88852

它将返回一个关于相关镜像文件的详细列表。

删除镜像文件
在一个OpenStack云计算环境中,将会有很多情况下需要删除已经有的镜像文件。可以通过下面的方式删除私有或公共的镜像文件。

1.使用如下命令删除镜像文件:

glance image-delete IMAGE_ID

例如:

glance image-delete 794dca52-5fcd-4216-ac8e-7655cdc88852

2.当成功执行删除镜像后,OpenStack Image不会产生输出。可以通过执行glance image-list验证结果。

将私有镜像文件设为公开镜像文件
当上传镜像文件时,这些镜像文件将只有上传者才拥有权限,即私有镜像文件。如果使用上述方式上传了镜像文件,但又希望它可以给其他用户使用时,在OpenStack环境下,可以使用下面的方法将其设为公开。

1.首先,查看镜像文件确认哪一个需要公开。在本书的例子中,选择了最初上传的镜像。

glance image-show IMAGE_ID

例如:

glance image-show 2e696cf4-5167-4908-a769-356a51dc5728

这个命令会得到类似图2-4所示的反馈信息。


《OpenStack云计算实战手册(第2版)》一2.5 用OpenStack镜像服务管理镜像

2.这时,可以将其设为公开镜像,使本环境内所有用户均可以使用这个镜像文件。

glance image-update 2e696cf4-5167-4908-a769-356a51dc5728 \
   --is-public True

3.使用glance查看详细信息。

glance image-show 2e696cf4-5167-4908-a769-356a51dc5728

输出如图2-5所示。


《OpenStack云计算实战手册(第2版)》一2.5 用OpenStack镜像服务管理镜像

工作原理
从私有云环境来看,OpenStack镜像服务是一个非常灵活的镜像管理系统,它允许用户进行多种镜像管理方式,从添加新镜像,删除镜像,到更新信息,比如文件的命名方式,它让用户很方便的能识别这些镜像文件,还能将私有镜像转换为共有镜像。当然,还可以将共有镜像转换为私有镜像。

要做到这一切,只需要使用glance工具。为了使用glance工具,需要查看源头的OpenStack身份认证服务的认证信息。