创建 Image - 每天5分钟玩转 OpenStack(21)

本节演示如何通过 Web GUI 和 CLI 两种方法创建 Image。

OpenStack 为终端用户提供了 Web UI(Horizon)和命令行 CLI 两种交换界面。
两种方式我们都要会用。

可能有些同学觉得既然有更友好的 Web UI 了,干嘛还要用 CLI?
这里 CloudMan 给出下面的理由:

  1. Web UI 的功能没有 CLI 全,有些操作只提供了 CLI。 即便是都有的功能,CLI 可以使用的参数更多
  2. 一般来说,CLI 返回结果更快,操作起来更高效
  3. CLI 可放在脚本中进行批处理
  4. 有些耗时的操作 CLI 更合适,比如创建镜像(后面将涉及)

Web UI 创建 image

  1. admin 登录后,Project -> Compute -> Images
  2. 点击右上角按钮,为新 image 命名。

    这里我们上传一个 image。
    点击,选择镜像文件 cirros-0.3.4-x86_64-disk.img。
    cirros 是一个很小的 linux 镜像,非常适合测试用。
    大家可以到 http://download.cirros-cloud.net/ 下载。
  3. 格式选择 QCOW2。

    如果勾选,该 image 可以被其他 Project 使用
    如果勾选,该 image 不允许被删除。
  4. 点击,文件上传到 OpenStack 并创建新的 image
  5. 点击 image 链接,显示详细信息

CLI 创建 image

cirros 这个 linux 镜像很小,通过 Web UI 上传很快,操作会很顺畅。
但如果我们要上传的镜像比较大(比如好几个 G ),那么操作会长时间停留在上传的 Web 界面,我们也不知道目前到底处于什么状态。
对于这样的操作,CLI 是更好的选择。

  1. 将 image 上传到控制节点的文件系统中,例如 /tmp/cirros-0.3.4-x86_64-disk.img
  2. 设置环境变量

    Devstack 的安装目录下有个 openrc 文件。source 该文件就可以配置 CLI 的环境变量。这里我们传入了两个参数,第一个参数是 OpenStack 用户名 admin;第二个参数是 Project 名 admin
  3. 执行 image 创建命令

glance image-create --name cirros --file /tmp/cirros-0.3.4-x86_64-disk.img --disk-format qcow2 --container-format bare --progress

在创建 image 的 CLI 参数中我们用 --progress 让其显示文件上传的百分比 %,是不是比 Web UI更直观呢?

在 /opt/stack/data/glance/images/ 下查看新的 Image

下一节我们演示删除 image 的操作。

时间: 2024-11-08 20:07:22

创建 Image - 每天5分钟玩转 OpenStack(21)的相关文章

创建 VXLAN - 每天5分钟玩转 OpenStack(111)

前面我们讨论了 VXLAN 的理论知识,并且在 ML2 中完成了相关配置.今天将通过 Web UI 创建 vxlan100_net 并观察节点网络结构的变化. 打开菜单 Admin -> Networks,点击 "Create Network" 按钮 显示创建页面. Provider Network Type 选择 "VXLAN" Segmentation ID 即 VNI,设置为 100 点击 "Create Network",vxlan

创建 Pool & VIP - 每天5分钟玩转 OpenStack(122)

上节完成了 LBaaS 配置,今天我们开始实现如下 LBaaS 环境. 环境描述如下:1. 创建一个 Pool "web servers".2. 两个 pool member "WEB1" 和 "WEB2",均为运行 Ubuntu cloud image 的 instance.3. load balancer VIP 与 floating IP 关联.4. 位于外网的 client 通过 floating IP 外网访问 web server.

每天5分钟 玩转OpenStack

最近在学习OpenStack的相关知识,一直苦于OpenStack的体系庞大以及复杂程度,学习没有进度,停滞不前.偶然机会在51CTO上发现了一个热点的专题关于OpenStack的,题目叫做<每天5分钟 玩转OpenStack>,抱着试试的态度看了几篇,被文章的内容和书写风格吸引了,内容全面,思路清晰,简单易懂,关键是每篇博文的内容很少,绝对是一泡大便的功夫.每周一.周三.周五定时更新,微信也有同步更新.不过大神在博客园cnblogs上的博文没有目录,每次翻阅的时候甚是费劲,可能是大神太忙了,

写在最前面 - 每天5分钟玩转 OpenStack(1)

<每天5分钟玩转 OpenStack>是一个 OpenStack 教程,这是第 1 篇. 这个教程有下面两个特点: 系统讲解 OpenStack 从架构到各个组件:从整体到细节逐一讨论 重实践并兼顾理论 主要从实际操作的角度带着大家学习 OpenStack. 为啥要写这个? 简单回答是:因为OpenStack 学习难度大,但如果掌握了价值会很大 先做一个自我介绍吧. 本人网名CloudMan,在 IT 这个行当已经摸爬滚打了十多年,05年之前是搞上层应用开发的,那时候 Java 比较火,所以

学习 OpenStack 的方法论 - 每天5分钟玩转 OpenStack(150)

作为 OpenStack 的核心教程,我们已经到了最后总结的部分. OpenStack 目前已经有好几十个模块,本教程讨论的是最最重要的核心模块:Keystone,Nova,Glance,Cinder 和 Neutron.请大家看下图: 此图截自 https://www.openstack.org/software/project-navigator/,这是 OpenStack 官方定义的 6 个 Core Service.每个模块都会从三个维度来衡量: ADOPTION - 采用度 MATUR

cloud-init 典型应用 - 每天5分钟玩转 OpenStack(174)

本节介绍几个 cloud-init 的典型应用:设置 hostanme,设置用户初始密码,安装软件. 设置 hostname cloud-init 默认会将 instance 的名字设置为 hostname.但这样不太方便,有时希望能够将二者分开,可利用 cloud-init 的set_hostname 模块实现.set_hostname 它会查询 metadata 中 hostname 信息,默认值就是 instance 的名字.我们可以指定自己的 hostname,方法是将下面的内容传给 c

创建 OVS 外部网络 ext_net - 每天5分钟玩转 OpenStack(144)

上一节完成连接外网的配置准备工作,今天就来创建 OVS 外部网络 ext_net. 进入 Admin -> Networks 菜单,点击 "Create Network" 按钮. 显示创建页面. Provider Network Type 选择 "Flat". Network 填写 "external",与 ml2_conf.ini 中 flat_networks 的参数值保持一致. 勾选 External Network 选择框. 点击

创建 OVS vlan101 并部署 instance - 每天5分钟玩转 OpenStack(139)

前面我们创建了 OVS vlan100 并部署了 instance,今天继续创建 vlan101. subnet IP 地址为 172.16.101.0/24. 底层网络发生了什么变化 Neutron 自动在 br-int 网桥上创建了 vlan100 dhcp 的接口 "tap1820558c-0a". 现在,网络结构如下: 将 instance 连接到 vlan101 launch 新的 instance "cirros-vm3",网络选择 vlan101. c

创建 Monitor 并测试 - 每天5分钟玩转 OpenStack(124)

前面我们创建了 Pool,VIP 并添加了 Member.今天将创建 Monitor,然后测试 LBaaS 是否能够正常工作. 创建 Monitor LBaaS 可以创建 monitor,用于监控 Pool Member 健康状态. 如果某个 member 不能正常工作,monitor 会将其状态设置为 down,从而避免将后续请求转发给它. 下面我们为 Pool 添加一个 monitor. 在 Monitors 标签页中点击 "Add Monitor" 按钮 Type 选择 &quo