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

《每天5分钟玩转 OpenStack》是一个 OpenStack 教程,这是第 1 篇。

这个教程有下面两个特点:

  1. 系统讲解 OpenStack 
    从架构到各个组件;从整体到细节逐一讨论
  2. 重实践并兼顾理论 
    主要从实际操作的角度带着大家学习 OpenStack。

为啥要写这个?

简单回答是:因为OpenStack 学习难度大,但如果掌握了价值会很大

先做一个自我介绍吧。

本人网名CloudMan,在 IT 这个行当已经摸爬滚打了十多年,05年之前是搞上层应用开发的,那时候 Java 比较火,所以 J2EE 相关的技术搞得比较多。后来入职一家大型IT公司,公司的产品从中间件到操作系统,从服务器到存储,虚拟化到云计算都有涉及。

本人所在的部门是专门做 IT 基础设施实施服务的,项目涉及服务器、存储、网络、虚拟化、云各个方面。而且这个部门的重要任务是为公司在IT市场最新和最热门的领域开疆扩土。比如前几年的虚拟化,这两年的云计算和大数据。

可以说部门的这个定位非常符合我的技术偏好。我对新技术长期保持着浓厚的兴趣和学习热情,所以在这个部门一待就是十几年,而且一直搞技术,虽然现在的头衔是架构师,平时还是一直坚持实际动手操作,否则会没有安全感。

好,现在回到OpenStack这个主题。

本人是在2013年开始接触 OpenStack,虽然具备比较扎实的技术功底,在经过一段时间的学习后,还是感觉 OpenStack 这个东西上手不太容易,个人认为有以下几个原因:

  1. OpenStack 涉及的知识领域极广 
    可以说涵盖了IT基础设施的所有范围。计算、存储、网络、虚拟化、高可用、安全、灾备。。。。。。无所不包。即便是像CloudMan这种每天都在这个领域工作的人也感觉压力颇大
  2. OpenStack 是一个平台,不是一个具体的实施方案
    OpenStack的各个组件都采用Driver的架构,支持各种具体的实现技术。比如 OpenStack 的存储服务Cinder只定义了上层抽象API,具体的实现交给下面的各种Driver,比如基于LVM的iSCSI Driver,EMC、IBM等商业存储产品的Driver,或者是开源的分布式存储软件,比如Ceph、GlusterFS的Driver。
    正是因为这种架构上的灵活性,使得初学者在学习OpenStack的时候不会像学习其他具体软件产品那样容易上手。
  3. OpenStack 本身是一个分布式系统 
    大多数搞 IT 的对分布式计算都不会太熟悉。直接冲进来会被 OpenStack 繁多的组件以及他们之间的交互方式搞得云里雾里。

虽然 OpenStack 学习曲线比较陡峭,掌握起来难道较大,但 OpenStack 目前已经是 IaaS 云的事实标准,而且前途一片光明,对于我们搞 IT 的如果能啃下这个骨头,必定能大大提升自身的竞争力。

写给谁看

这套教程的目标读者包括:

  1. OpenStack初学者 
    CloudMan 学习 OpenStack 也是经历了一个艰辛曲折的过程。其主要原因在于没有找到一个系统教授OpenStack的教程,特别是针对初学者。大部分资料都比较分散,对于初学者无法有机地串起来。也正是因为这个原因,让我萌发了编写这样一套教程的想法,能够让初学者能够少走弯路,系统地学习、掌握和实践 OpenStack。
  2. OpenStack 实施工程师 
    之前说了,CloudMan在公司的职位是架构师,但骨子里我更把自己定位成一个能到一线攻城拔寨的实施工程师。所以这个教程也是针对 OpenStack 的实施人员,让他们能够通过学习真正掌握部署OpenStack 的知识、技能以及故障排查技巧。
  3. 我自己
    写这个教程同时也是对自己这几年学习和实践 OpenStack 的一个总结。
    我觉得:对于知识,只有把它写出来并能够让其他人理解才能真正说明自己掌握了这项知识。

包含哪些内容?

如下图,两大块:

  1. 预备知识
    因为面向初学者,首先会有虚拟化和云计算的“预备知识”,会介绍 KVM,IaaS 等技术。
  2. OpenStack核心
    这是主要内容,包含OpenStack的架构和和各个核心组件。将会通过大量的案例、操作步骤、截图、日志来帮助大家理解 OpenStack 各组件是如何工作的。
    其目标是让各位可以根据客户的需求进行配置和调整。

怎样的编写方式?

在当下这个共享经济时代,CloudMan觉得应该用互联网的方式来分享知识和心得。这个教程会通过CloudMan的微信公众号(cloudman6)每周1、3、5 定期发布。

用公众号我觉得有两个好处:

  1. 可以随时随地查看和浏览已推送的内容
  2. 可以通过公众号跟CloudMan互动,提出问题和建议

为啥叫《每天5分钟玩转 OpenStack》?

为了降低学习的难度并且考虑到移动端碎片化阅读的特点,每次推送的内容大家只需要花5分钟就能看完(注意这里说的是看完,有时候要完全理解可能需要更多时间哈),每次的内容只包含1-3个知识点,这也是我把教程命名为《每天5分钟玩转 OpenStack》的原因。虽然是碎片化推送,但整个教程是系统、连贯和完整的,只是化整为零了。

好了,今天这5分钟算是开了个头,下次我们正式开始玩转 OpenStack。

时间: 2024-08-12 11:37:04

写在最前面 - 每天5分钟玩转 OpenStack(1)的相关文章

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

打算跟着大神慢慢学习,再把自己所学的东西一起记录起来. 我最早是2014年接触OpenStack了,当时安装成功了DevStack,因为没有项目再用,后来就没有后来了. 今年接触了云计算的项目,又重新拾了起来,但是目前也只止步于安装,想进一步分析每个模块,没有一个很好的大纲,刚好看到大神CloudMan在写这个,是个很好的思路.慢慢学习,坚持下. 关于学习思路,之前看到一篇很好的文章,记录下来. http://www.csdn.net/article/2014-04-10/2819247-how

写在最前面 - 每天5分钟玩转容器技术(1)

<每天5分钟玩转容器技术>是一个有关容器技术的教程,有下面两个特点: 系统讲解当前最流行的容器技术.从容器的整个生态环境到各个具体的技术,从整体到细节逐一讨论. 重实践并兼顾理论.从实际操作的角度带领大家学习容器技术. 为什么要写这个? 简单回答是:容器技术非常热门,但门槛高. 容器技术是继大数据和云计算之后又一炙手可热的技术,而且未来相当一段时间内都会非常流行. 对 IT 行业来说,这是一项非常有价值的技术.而对 IT 从业者来说,掌握容器技术是市场的需要,也是提升自我价值的重要途径. 拿我

每天5分钟 玩转OpenStack

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

创建 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.

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

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

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

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

制作 OpenStack Linux 镜像 - 每天5分钟玩转 OpenStack(151)

这是 OpenStack 实施经验分享系列的第 1 篇. OpenStack 的 instance 是通过 Glance 镜像部署的,所以准备镜像是必须要做的工作.本节介绍 Linux 镜像的制作方法,后面还会讨论 Windows 镜像. 下载clould 镜像 最简单的方法是使用标准镜像.主流的Linux发行版都提供可以在 OpenStack 中直接使用的cloud镜像,下载地址: CentOS6:http://cloud.centos.org/centos/6/images/ CentOS7

instance 网卡是如何被拉起来的?- 每天5分钟玩转 OpenStack(172)

instance 的网卡是如何被配置并拉起的?这是理解和用好 cloud-init 非常关键的一步.我们先讨论一个最简单基础的场景:镜像中没有安装 cloud-init. 此时 instance 启动时网卡能不能被拉起来完全 靠运气!是的,就是运气. 因为这种情况下网卡的配置是死的,完全依赖于镜像中 /etc/network/interfaces 原有的配置.比如原镜像中的配置是: auto eth0iface eth0 inet dhcp instance 只有满足下面所有条件网卡才能被拉起来

Restore Volume 操作 - 每天5分钟玩转 OpenStack(60)

前面我们 backup 了 voluem,今天我们将讨论如何 restore volume. restore 的过程其实很简单,两步走: 在存储节点上创建一个空白 volume. 将 backup 的数据 copy 到空白 voluem 上. 下面我们来看 restore 操作的详细流程: 向 cinder-api 发送 backup 请求 cinder-api 发送消息 cinder-scheduler 挑选最合适的 cinder-volume cinder-volume 创建空白 volum