OpenStack入门体验

发布于:2025-06-19 ⋅ 阅读:(11) ⋅ 点赞:(0)

目录

1.1云计算概念

1.1.1什么是云计算

1.1.2云计算的服务模型

1.laas

2.paas

3.saas

1.1.3OpenStack概述

1.OpenStack起源

2.什么是OpenStack

3.OpenStack优势

1.2OpenStack一键部署

1.2.1环境介绍

1.本章实验环境

2.实验需求

3.实验思路

1.2.2在线安装前准备工作

1.准备虚拟机:实验所需虚拟机可以通过 VMware 等软件实现。虚拟机需要配置静态 IP 地址、网关及 DNS 参数,并测试网络连通性(具体过程略)。不过在配置 IP 地址的时候不要有 “DOMAIN=x.x.X.X” 这一行,因为这会影响 nova 配置文件内 host 的配置项,从而导致可用域不可用,无法创建虚拟机。后面离线部署也要注意此问题。

2.修改主机名:

3.更新系统并安装常用软件:

4.关闭防火墙并取消开机启动:

5.禁用 NetworkManager:

6.禁用 Selinux:

7.添加 hosts 绑定

1.2.3使用packstack 一键在线部署OpenStack

1.Train 版 YUM 源安装

2.Packstack 软件包安装

3.Packstack 一键部署 OpenStack

1.2.4 离线安装前准备工作

1.虚拟机准备:

2.修改主机名

3.安装常用软件并更新系统

4.关闭 firewalld 防火墙并取消开机启动

5.关闭 NetworkManager 并取消开机启动

6.禁用 Selinux

7.添加 hosts 绑定

1.2.5 使用 packstack 一键离线部署 OpenStack

1.上传并解压 Train 版离线安装包

2.配置本地 YUM 源

3.更新 YUM 源数据

4.安装 openstack-packstack

5.一键部署 OpenStack

1.2.6 通过 Dashboard 体验 OpenStack 功能

1. 项目

2. 管理员

3. 身份管理

1.2.7 创建云主机

1. 创建网络

2. 创建路由

3. 创建云主机

4. 管理云主机并测试连通性


1.1云计算概念

1.1.1什么是云计算

云计算(cloud computing)是一种基于网络的超级计算模式,基于用户的不同需求,提供所需的资源,包括计算资源、存储资源、网络资源等。云计算服务运行在若干台高性能物理服务器之上,提供每秒 10 万亿次的运算能力,可以用于模拟核爆炸、预测气候变化以及市场发展趋势。

云计算有广义和狭义之分。

  • 狭义的云计算:指通过网络按需向用户提供 IT 基础设施,包括硬件、平台和软件,提供资源的网络被称为 “云”。在使用者看来,“云” 中的资源是无限大的,无论需要多少资源,云都可以提供。而在云端,所有的资源都可以通过横向进行扩展,如同使用水电、煤气一样。
  • 广义的云计算:指服务的交付和使用模式,通过网络以按需、易扩展的方式获得所需的服务。这种服务可以是 IT 和软件、互联网相关的,也可以是任意其他的服务。

云计算是一种模型,提供无论在何时何地都可以便捷获取所需资源的模型,并能够让用户根据需要快速创建应用,并且在不需要时进行资源释放。

现在云计算技术已经日渐成熟,很多企业已经拥有自己的私有云,而掌握这种技术的人才也更为抢手。目前,云计算使用最广泛的是开源项目 OpenStack。经过多个版本的开发更新,现在已经到 T 版。作为云计算项目之一的 OpenStack 也受到各个企业的青睐,成为大家搭建私有云的首选。

1.1.2云计算的服务模型

云计算模型中有 IaaS(Infrastructure as a Service,基础架构即服务)、PaaS(Platform as a Service,平台即服务)、SaaS(Software as a Service,软件即服务)三种基本服务模型。

1.laas

提供最底层的 IT 基础设施服务,包括处理能力、存储空间、网络资源等。用户可以从中获取硬件或者虚拟硬件资源(包括裸机或者虚拟机),之后可以给申请到的资源安装操作系统和其他应用程序。一般面向的对象是 IT 管理人员。

2.paas

把已经安装好开发环境的系统平台作为一种服务通过互联网提供给用户。用户可以在上面安装其他应用程序,但不能修改已经安装好的操作系统和运行环境。一般面向的对象是开发人员,需要了解平台提供环境下的应用开发和部署。

3.saas

可直接通过互联网为用户提供软件和应用程序等服务。用户可以通过租赁的方式获取安装在厂商或者服务供应商那里的软件。一般面向的对象是普通用户,最常见的模式是提供给用户一组账号和密码。

1.1.3OpenStack概述

1.OpenStack起源

OpenStack 是 Rackspace(一家美国的云计算厂商)和美国国家航空航天局(National)Aeronautics and Space Administration,简称 NASA)在 2010 年 7 月共同发起的项目。由 Rackspace 贡献存储源码(Swift)、NASA 贡献计算源码(Nova)。

2.什么是OpenStack

OpenStack 是一个通过数据中心控制计算资源、存储资源和网络资源的云平台。同时它又是一款开源软件,以 Apache 许可证授权的自由软件和开放源代码项目,支持所有类型的云环境。OpenStack 的目标是提供简单实施、可扩展以及丰富功能集的云产品,来自全世界的云计算专家共同维护该云项目。OpenStack 通过多种补充服务提供了 IaaS 解决方案,每一种服务均提供了相应的应用程序接口(Application Programming Interface,简称 API),以促进各组件之间的整合。

OpenStack 被用来提供公有云以及私有云的建设以及管理。作为一个开源项目,其社区规模涵盖 130 家企业以及 1350 位开发人员。这些机构与个人都将 OpenStack 作为 IaaS 资源的通用前端。

OpenStack 覆盖了网络、虚拟化、操作系统、服务器等各个方面。2019 年 10 月 OpenStack 发布了最新版本 Train。一般情况下,OpenStack 每半年左右更新一次版本。

服务 项目名称 描述
Compute(计算服务) Nova 负责实例生命周期的管理,计算资源的单位。对 Hypervisor 进行屏蔽,支持多种虚拟化技术(红帽默认为 KVM),支持横向扩展。
Network(网络服务) Neutron 负责虚拟网络的管理,为实例创建网络拓扑结构。是面向租户的网络管理,可以自定义网络,并使租户之间互不影响。
Identity(身份认证服务) Keystone 类似于 LDAP 服务,对用户、租户和角色、服务进行认证与授权,并且支持多认证机制。
Dashboard(控制面板服务) Horizon 提供一个 Web 管理界面,与 OpenStack 底层服务进行交互。
Image Service(镜像服务) Glance 提供虚拟机镜像模板的注册与管理,将做好的操作系统复制为镜像模板,在创建虚拟机时直接使用。可支持多格式的镜像。
Block Storage(块存储服务) Cinder 负责为运行实例提供持久的块存储设备,可进行方便的扩展,按需付费,支持多种后端存储。
Object Storage(对象存储服务) Swift 为 OpenStack 提供基于云的弹性存储,支持集群无单点故障。
Telemetry(计量服务) Ceilometer 用于度量、监控和控制数据资源的集中来源,为 OpenStack 用户提供记账途径。

3.OpenStack优势

OpenStack 在控制性、兼容性、可扩展性、灵活性方面具备有优势,它可能成为云计算领域的行业标准。

  • 控制性:完全开源的平台,模块化的设计,提供相应的 API 接口,方便与第三方技术集成,从而满足自身业务需求。
  • 兼容性:OpenStack 兼容其他公有云,方便用户进行数据迁移。
  • 可扩展性:Openstack 采用模块化的设计,支持主流的 Linux 发行版本,可以通过横向扩展,增加节点、添加资源。
  • 灵活性:用户可以根据自己的需要建立基础设施,也可以轻松地为自己的群集增加规模。Openstack 项目采用 Apache2 许可,意味着第三方厂家可以重新发布源代码。
  • 行业标准:众多 IT 领军企业都加入到 OpenStack 项目,意味着 OpenStack 在未来可能形成云计算行业标准。

1.2OpenStack一键部署

1.2.1环境介绍

1.本章实验环境

本案例需要提前部署一台新安装操作系统的主机,要求能访问互联网,主机的系统只需采用最小化方式安装。若通过 VMware 等虚拟机软件实现,网络采用桥接模式。

本章使用操作系统为 CentOS7.3 的主机。表 1-2 是安装部署 OpenStack 环境的硬件设备最低配置要求。

类型 最低配置要求
CPU 支持 Intel 64 或 AMD64 CPU 扩展,并启用了 AMD-V 或 Intel VT 硬件虚拟化支持的 64 位 x86 处理器,逻辑 CPU 个数为 4 核
内存 8GB
磁盘空间 30GB
网络 1 个 1 Gbps 网卡

具体的案例环境如表 1-3 所示。

主机名 IP 地址 / 掩码 角色
openstack ens33: 192.168.9.137/24 安装所有 OpenStack 组件及

2.实验需求

本章后续实验步骤用于实现以下需求:
(1) 使用 packstack 一键部署 OpenStack。
(2) 创建云主机(OpenStack 中的虚拟机)。

3.实验思路

本章案例的实现思路大致如下:
(1) 安装前的准备工作。
(2) 使用 packstack 一键部署 OpenStack。
(3) 通过 Dashboard 体验 OpenStack 功能。

1.2.2在线安装前准备工作

1.准备虚拟机:实验所需虚拟机可以通过 VMware 等软件实现。虚拟机需要配置静态 IP 地址、网关及 DNS 参数,并测试网络连通性(具体过程略)。不过在配置 IP 地址的时候不要有 “DOMAIN=x.x.X.X” 这一行,因为这会影响 nova 配置文件内 host 的配置项,从而导致可用域不可用,无法创建虚拟机。后面离线部署也要注意此问题。

2.修改主机名:

[root@localhost ~]#hostnamectl set-hostname openstack 
[root@localhost ~]#bash 
[root@openstack ~]#

3.更新系统并安装常用软件:

[root@openstack ~]# yum-y update
[root@openstack ~]#yum -y install vim wget net-tools lrzsz

4.关闭防火墙并取消开机启动

[root@openstack ~]#systemctl stop firewalld 
[root@openstack -]#systemct disable firewalld

5.禁用 NetworkManager

[root@openstack ~]#systemctl stop NetworkManager 
[root@openstack ~]#systemctl disable NetworkManager

6.禁用 Selinux

 SELINUX=disabled 

    7.添加 hosts 绑定

    [root@openstack ~]#cat letc/hosts 
    192.168.9.137openstac 
    #如果不绑host,在创建云主机之后无法通过控制台方式访问云主机

    1.2.3使用packstack 一键在线部署OpenStack

    完成环境准备之后,通过 packstack 工具部署 OpenStack。packstack 是自动部署 OpenStack 的工具,通过它可以帮助管理员完成 OpenStack 的自动部署。

    首先通过 YUM 源安装 packstack 工具,然后利用 packstack 工具一键部署 OpenStack,具体操作步骤如下所示。

    1.Train 版 YUM 源安装

    yum install-ycentos-release-openstack-train

    2.Packstack 软件包安装

    yum install-y openstack-packstack

    3.Packstack 一键部署 OpenStack

    packstack -allinone

    1.2.4 离线安装前准备工作

    1.虚拟机准备

    [root@localhost ~]#cat letc/sysconfig/network-scripts/ifcfg-ens33 
    TYPE="Etherne" 
    BOOTPROTO=static
    //省略了部分内容 
    IPADDR="192.168.9.137" 
    PREFIX="24" 
    GATEWAY="192.168.9.1" 
    DNS1="114.114.114.114" 
    #DOMAIN=119.29.29.29 //不要出现DOMAIN配置项

    2.修改主机名

    [root@localhost ~]#hostnamectl set-hostname openstack 
    [root@localhost ~]#bash 

    3.安装常用软件并更新系统

    [root@openstack ~]# yum -y install vim wget net-tools lrzsz createrepo yum-utils 
    [root@openstack ~]#yum-y update

    4.关闭 firewalld 防火墙并取消开机启动

    [root@openstack -~]#systemct stop firewalld 
    [root@openstack ~]#systemctl disable firewalld

    5.关闭 NetworkManager 并取消开机启动

    [root@openstack -~]#systemctl stop NetworkManager 
    [root@openstack -~]#systemctl disable NetworkManager

    6.禁用 Selinux

    [root@openstack ~]#sed-/SELINUX=/s/enforcing/disabled /etc/selinux/config 
    [root@openstack ~]#setenforce 0 
    [root@openstack ~]#getenforce 
    Permissive

    7.添加 hosts 绑定

    [root@openstack ~]#cat letc/hosts 
    192.168.9.137 openstack

    1.2.5 使用 packstack 一键离线部署 OpenStack

    1.上传并解压 Train 版离线安装包

    [root@openstack -]#mkdir /data && cd /data 
    [root@openstackdata]#tar zxf openstack.tgz 

    2.配置本地 YUM 源

    root@openstack ~]#cd /etclyum.repos.d/ 
    [root@openstackyum.repos.d]#mkdir backup 
    [root@openstackyum.repos.d]#mv*.repo backup 
    [root@openstackyum.repos.d]#vim local.repo 
    [base] 
    name=base 
    baseurl=file://data/base 
    gpgcheck=0 
    enabled=1 
    [centos-ceph-nautius] 
    name=centos-ceph-nautilus 
    baseurl=file://data/centos-ceph-nautilus 
    gpgcheck=0 
    enabled=1
    [centos-nfs-ganesha28] 
    name=centos-nfs-ganesha28 
    baseurl=file://ata/centos-nfs-ganesha28 
    gpgcheck=0 
    enabled=1 
    [centos-openstack-train] 
    name=centos-openstack-train 
    baseur=file://data/centos-openstack-train 
    gpgcheck=0 
    enabled=1 
    [centos-qemu-ev] 
    name=centos-qemu-ev 
    baseurl=file:///data/centos-qemu-ev 
    gpgcheck=0 
    enabled=1 
    [extras] 
    name=extras 
    baseurl=file:///datalextras 
    gpgcheck=0 
    enabled=1 
    [openstack-train] 
    name=openstack-train 
    baseurl=file://data/openstack-train 
    gpgcheck=0
    enabled=1
    [rdo-qemu-ev]
    name=rdo-qemu-ev
    baseurl=file:///data/rdo-qemu-ev
    gpgcheck=0
    enabled=1
    [updates]
    name=updates
    baseurl=file://data/updates
    gpgcheck=0
    enabled=1

    3.更新 YUM 源数据

    [root@openstack data]#yum clean all 
    [root@openstack data ]#yum makecache

    4.安装 openstack-packstack

    [root@localhost ~]# yum-y install openstack-packstack

    5.一键部署 OpenStack

    [root@openstack ~]#packstack -allinone
    

    1.2.6 通过 Dashboard 体验 OpenStack 功能

    Horizon 是 OpenStack 的一个组件,同时也是 OpenStack 中 Dashboard(仪表板,即 Web 控制台)的项目名,主要用于 OpenStack 的管理,其底层通过 API 和 OpenStack 其他组件进行通信,为管理员提供 Web 页面,以方便操作管理。

    在客户端的浏览器地址栏中输入http://192.168.9.137/dashboard,进入 Dashboard 的登录界面。需要注意的是,如果出现 500 错误页面,这是内部服务器错误,可重新启动服务器解决。

    安装 OpenStack 后,在 root 用户的 Home 目录下会生成一个 keystonerc_admin 文件。该文件记录有 keystone(OpenStack 认证组件)认证的环境变量,包括用户名和登录密码。不同机器生成的默认密码是不同的,如下所示。

    [root@openstack ~]#cat keystonerc_admin
    1. 项目

    项目中主要包含访问 API、计算、卷、网络、对象存储五个分类。

    • 访问 API:显示所有组件的服务端点,比如计算、注册等服务。
    • 计算类:计算类主要有概况、实例、镜像、密钥对、主机组子类。
      • 概况:主要是云计算各资源的使用情况,“of” 后面的数字表示资源的上限限制,默认有一个安全组。
      • 实例:所有创建过的云主机会在实例中显示,也可以新创建云主机。
      • 镜像:所有的镜像都会在这显示,可以执行创建镜像和删除镜像等操作。
      • 密钥对:可以创建密钥对通过远程免密码对云主机进行管理。
      • 主机组:依据相关的配置策略针对用户创建的虚拟主机进行管理,主要是约束虚拟主机与虚拟主机在物理主机上部署关系。
    • 卷类:云主机所用到的存储卷,可以创建卷和快照。
      • :卷是可被连接到实例的块设备。
      • 快照:为一个卷创建一个快照。
      • :卷组提供了一种同时为多个卷创建快照的机制以确保数据一致性。一个卷组可以支持多种卷类型,但它包括的卷必须托管于同一个存储后端。
      • 组快照:针对组,作统一快照。
    • 网络类:网络类主要包含网络拓扑、网络、路由、安全组、浮动 IP、中继子类。
      • 网络拓扑:显示当前网络的拓扑结构,包含网络、路由器以及接口。
      • 网络:显示已经创建的云主机网络,也可以新建网络或者编辑现有网络。默认就有一个公用的网络,子网为 172.24.4.0/24。
      • 路由:用于将云主机的私有地址通过路由的方式转发到其他私有网络,或通过 NAT 转发到外部网络,实现网络通信。默认为空。
      • 安全组:类似于防火墙的功能,可以通过安全组设置入口和出口规则,用于控制进出云主机的网络流量。
      • 浮动 IP:一般用于外部网络访问云主机,类似于 NAT 目标地址转换。
      • 中继:将父端口与子端口进行连接。
    • 对象存储类:对象存储类主要包含容器子类,容器表示存储数据的地方,和 Windows 的文件夹、Linux 的目录类似。
    2. 管理员

    “管理员” 和 “项目” 选项卡具有相似的功能,但是权限不同。“管理员” 选项卡操作权限更高,但是仅限管理员用户操作。

    • 概况:“管理员” 选项卡里面包含了很多功能。其中 “概况” 列出了不同项目各种资源的使用情况。
    • 计算类:“管理员” 选项卡内的计算类拥有比 “项目” 的计算类选项卡内更多、更丰富的功能。拥有对系统资源更高的权限,有些操作只能在 “管理员” 选项卡的计算类内完成。
      • 虚拟机管理器:当前所有虚拟机在 CPU、内存和磁盘三方面的的使用情况。
      • 主机聚合:通过将主机组合到一起来把可用区域划分成逻辑单元。
      • 实例:列出已经存在的所有云主机,不包括创建实例选项。
      • 实例类型:创建云主机的规格,比如 CPU 数量、内存容量、硬盘容量。默认会提供部分实例类型,也可以根据需求进行自定义。
      • 镜像:列出所有的镜像,可以执行创建镜像和删除镜像等操作。
    • 卷类:卷应用到 OpenStack 的数据存储。“管理员” 选项卡下的 “卷” 比 “项目” 下的 “卷” 多了两个功能,分别是 “卷类型” 和 “组类型”。
      • :不同于 “项目” 中的 “卷”,管理员选项卡下不能创建 “卷”,适用于对 “卷” 的各种管理操作。
      • 快照:为卷创建的快照,可进行 “删除卷快照” 和 “更新元数据” 等操作。
      • 卷类型:在 OpenStack 中创建卷时,选择一个类型或者标签,被称为卷类型。针对这个卷,卷类型通常是指后端存储驱动程序的一组指标。
      • :卷组提供了一种同时为多个卷创建快照的机制以确保数据一致性。一个卷组可以支持多种卷类型,但它包括的卷必须托管于同一个存储后端。
      • 组快照:针对组,作的统一快照。
      • 组类型:组类型是在 OpenStack 创建组的时候可以指定的一个类型或标签。它通常映射到这个组所使用的存储后端驱动器的性能指标集合。
    • 网络类:“管理员” 选项卡内的网络类基本功能和 “项目” 相比,多了 “RBAC 策略”,少了 “安全组”。
      • 网络:显示已经创建的云主机网络,也可以新建网络或者编辑现有网络。默认就有一个公用的网络,其子网为 172.24.4.0/24。
      • 路由:用于将云主机的私有地址通过路由的方式转发到其他私有网络,或通过 NAT 转发到外部网络,实现网络通信。默认为空。
      • 浮动 IP:是一些可以从外部访问的 IP 列表,通常从 ISP 那里买来的。浮动 IP 缺省不会自动赋给实例,用户需要手动从地址池里抓取然后赋给实例。
      • 中继:将父端口与子端口进行连接。
      • RBAC 策略:基于角色的访问控制(RBAC)策略框架允许运营商和用户授予对特定项目的资源访问权。
    • 系统类:系统类是 “管理员” 选项内独有的,它包含:“默认值”,“元数据定义” 和 “系统信息” 三个子类。
      • 默认值:也可以称作 “限制值”,通常包括三个方面的配额值,分别是 “计算配额”、“卷配额” 和 “网络配额”。
      • 元数据定义:通常用来定义命名空间,在导入命名空间时,只支持裸 JSON 格式。系统管理员在导入时可使用 glance-manage 命令实现。
      • 系统信息:列举了 “服务”、“计算服务”、“块存储服务” 和 “网络代理” 四个方面的相关信息。
    3. 身份管理

    身份管理主要有项目、用户、组、角色等分类。

    • 项目:显示当前所有的项目,即租户。
    • 用户:显示当前所有的用户。
    • :显示当前所有的组。
    • 角色:显示当前所有的角色。
    • 应用程序凭证:应用程序凭据提供了一种在不共享用户密码身份验证的情况下将用户授权委派给应用程序的方法。

    1.2.7 创建云主机

    了解了控制台的基本功能之后,开始尝试通过 OpenStack 创建一台云主机。

    一台云主机成功创建或启动需要依赖 OpenStack 中的各种虚拟资源,如 CPU、内存、硬盘等。如果需要云主机连接外部网络,还需要网络、路由器等资源。如果需要外部网络访问云主机,那么还需要配置浮动 IP。因此,在创建云主机之前,首先要保证所需的资源已经配置完成。

    本章实验中,使用默认的实例类型 m1.tiny(1CPU、512MB 内存、1GB 根分区磁盘),新创建网络 private,并通过路由器 my_route 将虚拟机所在的 private 网络路由(同时执行 NAT 转换)到外部网络 public,创建云主机并使其可以访问外部网络。

    在实验过程中,创建了云主机之后,如果某页面无法打开,可观察虚拟机内存使用情况,必要时增加些内存,再继续进行实验。

    1. 创建网络

    管理员成功登录 Dashboard 后,执行以下操作可以创建一个自定义的网络。
    ①在控制台中依次单击 “项目”→“网络”→“网络” 按钮。在右边区域默认存在公有网络 public。
    ②单击右上角 “+ 创建网络” 按钮,在弹出的创建网络界面中,输入网络名称为 “private”,保持默认的复选框状态,单击 “下一步” 按钮。
    ③在子网信息页面,输入子网名称、网络地址等参数,网关 IP 字段如果保持为空,表示网关是使用该网络的第一个地址,即 x.x.x.1 为网关地址。如果不希望该网络中的虚拟机通过该网络访问其他网络,可勾选 “禁用网关”,单击 “下一步” 按钮。
    ④在子网详情页面中,可以配置 DHCP,向该网络中的云主机自动分配 IP 地址。如需配置 DHCP,保持 “激活 DHCP” 为勾选状态,分配地址池栏中,输入需要分配 IP 地址的范围,首地址和末地址以逗号分割,DNS 服务器中输入需要分配的 DNS 地址,这通常是网络中真实的 DNS 服务器地址。单击 “创建” 按钮。
    ⑤完成网络创建操作后,在网络列表页面中会显示已创建成功的网络。

    2. 创建路由

    创建路由的目的是为了云主机所在的私有网络和外部网络所在的公有网络之间实现进行信息的转发,让云主机可以访问外部网络。下面是具体的操作步骤。
    ①在控制台中依次单击 “项目”→“网络”→“路由” 按钮。
    ②单击右上角的 “+ 新建路由” 按钮,在弹出的新建路由页面,填写路由名称 my_route,外部网络选择默认的公有网络 public,复选框保持默认,完成后单击 “新建路由” 按钮。
    ③在路由列表页面可以看到之前创建的路由器(虚拟路由器),新的路由器创建完成后默认存在一个外部接口,并关联到外部网络中。除此之外,还需要增加一个接口并关联到内部网络 private,从而实现两个网络之间转发数据。
    ④在路由器详细信息页面中,单击 “接口” 标签,单击 “+ 增加接口” 按钮,在弹出的增加接口页面,选择子网为之前创建的 private 私有网络,IP 地址栏可以留空,默认为 private 网络的网关地址(192.168.100.1)。完成后单击 “提交” 按钮。
    ⑤完成后单击 “提交” 按钮之后,即可返回路由配置页面,可以看到创建成功的接口。
    ⑥完成创建网络和创建路由之后,再次查看网络拓扑,私有网络和公有网络之间通过路由器连接。

    3. 创建云主机

    完成网络和路由部分的配置之后,下面开始创建第一台云主机。
    ①核实镜像的大小,依次单击 “项目”“计算”“镜像” 按钮,看到 cirrors 镜像的大小仅为 273 字节,如果使用此镜像创建云主机,则会报错,所以首先要上传制作正确的镜像。
    ②点击右侧的 “+ 创建镜像”,在弹出的页面内填写镜像信息。镜像名称填写 “cirrors01”,镜像源通过 “浏览” 的方式选择到 cirros-0.5.1-x86_64-disk.img,镜像格式选择 “QCOW2”,将镜像的可见性选为 “公有”,最后点击创建镜像。
    ③镜像创建完成后,大小为 15M 左右,远大于 273K。
    ④完成镜像的创建后,依次单击 “项目”“计算”→“实例” 按钮,在右边区域中没有任何实例存在。创建云主机需要单击右上角 “创建实例” 按钮。
    ⑤在弹出的创建实例中的 “详情” 页面,填写实例名称为 “test”,其他字段保持默认设置,并单击 “下一项” 按钮。
    ⑥在 “源” 页面,选择源一栏中通过下拉菜单选择 “镜像”,填写好卷大小,并单击页面下方列出的可用镜像 “cirrors01” 右边的上箭头,完成后单击 “下一步” 按钮。
    ⑦在 “实例类型” 页面,选择资源占用最少的实例类型,单击页面下方名称为 “m1.tiny” 的实例类型右边的上箭头,完成后单击 “下一项” 按钮。
    ⑧在 “网络” 页面中,选择云主机连接的私有网络。单击之前创建的名称为 “private” 网络右边的箭头,保证 private 网络置于可分配,后续的步骤保持默认即可,最后直接单击 “创建实例” 按钮创建云主机。
    ⑨在弹出的实例列表页面中,可以看到已创建的云主机。创建实例有一个过程,需要执行块设备映射等操作,主要看硬件和网络的性能,可能需要等待几秒或者十几秒钟,最后看到成功运行。

    4. 管理云主机并测试连通性

    ①云主机启动成功后,单击云主机 test 中 “创建快照” 按钮右边的下拉菜单,并选择 “控制台” 按钮。
    ②在弹出的控制台页面中,单击 “点击此处只显示控制台” 超链接,进入云主机的控制台页面。如果控制台页显示黑屏,同时按下 “Ctrl+Alt” 按钮即可。
    ③根据控制台提示信息,输入登录用户名:cirros,密码:gocubsgo。如果进入 $ 提示符的 shell 终端,说明已经成功登录。
    ④在云主机控制台中运行 ifconfig 命令,从命令输出结果中可以看到,云主机已经通过 private 网络中的 DHCP 自动获取到 IP 地址。
    ⑤在云主机上测试连接baidu.com和 Windows 本机 IP 的连通性。

    注意:如果 ping 外网不通,请检查 ifcfg-br-ex 配置文件并查看宿主机 br-ex 网卡是否启动。如果没有启动,需要执行以下命令

    [root@openstack ~]#ifconfig br-ex 172.24.4.1 netmask 25.255.255.0 up
    

    再次测试,如果还是 ping 外网不通,检查下 Linux 虚拟机是否开启了路由转发。若没开启,可执行如下命令开启。

    [root@localhost ~]#vi/letc/sysct.conf 
    net.ipv4.ip_forward =1 
    [root@localhost-~]#sysctl-p

    网站公告

    今日签到

    点亮在社区的每一天
    去签到