《揭秘云计算》应知应会手册.docx
《《揭秘云计算》应知应会手册.docx》由会员分享,可在线阅读,更多相关《《揭秘云计算》应知应会手册.docx(49页珍藏版)》请在冰豆网上搜索。
![《揭秘云计算》应知应会手册.docx](https://file1.bdocx.com/fileroot1/2023-2/26/ed8093dd-314a-479c-9f7e-b624d1ca7da7/ed8093dd-314a-479c-9f7e-b624d1ca7da71.gif)
《揭秘云计算》应知应会手册
揭秘云计算应知应会手册
2019年12月
1、云计算基础
1.1云计算的概念
1、云计算的概念
云计算是一种按使用量付费的模型,可以随时随地、便捷地、按需地从可配置的计算资源共享池中获取所需的计算资源,资源可以快速供给和释放,只需投入较少的管理工作。
2、云计算的特点
●按需自助服务:
用户根据自身需求申请云服务
●无处不在的网络:
为云计算提供高效的网络,方便体验。
●资源池化:
将资源整合,建立资源池,并共享。
●提供可计量服务:
针对产品可计量、可收费。
●快速弹性伸缩:
主机使用逻辑资源,可随时增加或减少。
3、云计算的服务及部署模型
云计算的服务模型包括Saas、Paas、Iaas三种。
部署模型包括公有云、私有云、混合云、专有云等。
如下图所示。
1.2云计算的价值
1、传统IT架构与云计算架构的区别
●传统IT架构:
烟筒式的,一套应用对应一套数据库以及一套底层的计算、存储能力。
●云计算体系架构:
引入云计算技术,将资源池化。
让资源可以充分灵活的调用,并且实现弹性伸缩
2、Paas的能力
即大数据的能力。
提供统一、公用性的平台,在这个平台上,应用可以按照类别进行分类,公用底层的大数据和资源的能力。
1.3虚拟化技术简介
1、虚拟化概述
将数据中心的计算、存储、网络等资源进行资源池化、逻辑化。
然后分给我们的虚拟机进行使用,业务不再直接使用物理资源。
虚拟化技术可以将一台物理服务器虚拟成多台逻辑服务器,使得多台虚拟机运行在同一物理机上面,同时它们之间有逻辑隔离相互不可见,从而可以提高物理机的资源使用率。
2、服务器虚拟化
服务器虚拟化是指:
将服务器物理资源抽象成逻辑资源,让一台服务器变成几台甚至上百台相互隔离的虚拟服务器,我不再受限于物理上的界限,而是让CPU、内存、磁盘、I/O等硬件变成可以动态管理的“资源池",从而提高源的利用率,简化系统管理,实现服务器整合,让IT对业务的变化更具适应力。
如下图所示为服务器虚拟化的技术架构及优点。
3、存储虚拟化
数据中心的传统存储是基于磁盘阵列的SAN、NAS。
云数据中心存储逐步演化成软件定义的架构。
2、虚拟化基础
2.1服务器虚拟化介绍
1、服务器虚拟化的技术架构
服务器虚拟化可通过虚拟化软件实现。
通过光纤通道访问存储资源。
通过IP以太网络访问IP、SAN、NAS。
2、服务器虚拟化的优点
●易于迁移:
将虚拟机从一台服务器迁移到另一台服务器上,业务不中断。
●HA(高可用性):
在系统失效时自动重启虚拟机。
2.2Vmware组件介绍
VMwarevSphere是用于虚拟化的软件组件套件。
其结构如下图所示。
2.3ESXi介绍
1、ESXi功能。
ESXI运行虚拟机、配置井识别资源、提供引导与管理服务。
2、EXSi体系架构
EXSi包括虚拟化层和虚拟机两部分。
如下图所示为EXSi体系架构。
3、EXSi管理
●设置ROOT密码
●启用或禁用锁定模式
●利用DCUI可修改网络设置
●利用DCUI管理员可以执行各种操作
2.4vCenterServer介绍
vCenterServer是-项可作为网络中连接的ESXi主机及其虚拟机的中心管理位置的服务,每个vCenterServer实例最多可管理1,000台主机,每个vCenterServer实例最多可管理10,000个开启的虚拟机。
如下图所示。
如下图所示为vCenterServer的体系结构。
2.5vMotion及StoragevMotion
迁移:
在主机或数据存储之间移动虚拟机。
迁移类型包括冷迁移(迁移处于关闭状态的虚拟机)和挂起(迁移处于挂起状态的虚拟机)。
vSpherevMotion:
迁移处于开启状态的虚拟机。
vSphereStoragevMotion:
在虚拟机处于开启状态时,将虚拟机的文件迁移到另-一个数据存储中。
如上图所示为其工作原理。
虚拟机在硬件的计划内停机期间仍能不间断运行,提高硬件整体利用率。
2.6VMware可用性及可扩展性介绍
提供HA保护,包括组件级别、服务器级别、存储级别、数据级别以及站点级别。
如下图所示。
2.7KVM虚拟化介绍
1、KVM基本概念
是Linux内核的一个模块,基于硬件虚拟化辅助开源的Linux原生的全虚拟化解决方案。
2、KVM架构
KVM作为一个虚拟化软件,用来模拟CPU和内存,缺少对网络、I/O设备的支持,没办法直接使用它。
如下图所示为KVM架构图。
3、Linux基础
3.1Linux概述
1、Linux发行版本
2、Linux版本号
Linux的版本号分为:
内核版本+发行版本。
内核版本包括主版本、此版本号、末版本号。
发行版本如红帽7.X。
3、在企业中的应用
●Linux作为Internet网络服务器的应用
●Linux作为中小企业内部服务器的应用
●Linux作为软件开发环境的应用
●Linux作为桌面环境的应用
●各种开源软件的基础
3.2Linux常用命令
1、Linux命令解释器
“Shell”充当人与内核的翻译官基于“系统调用接口”程序、服务满足日常工作。
2、系统状态检测命令
●uname命令用于查看系统内核版本等信息,格式为:
"uname[-a]"
●uptime命令用于查看系统的负载情况,格式为:
"uptime"
●free命令用于显示当前系统中内存的使用呈情况,格式为:
free[-m/-g]"
●ifconfig用于获取网卡配置与网络状态等信息:
格式为”iftonfig[网络设备[参数]”
●who命令用于查看当前登入主机的用户情况,格式为:
”who[参数]"
3、工作目录切换命令
●pwd命令用于显示当前的工作目录,格式为:
"pwd[选项]"
●cd命令用于切换工作路径,格式为:
"cd[目录名称]"
●Is命令用于查看目录中有那些文件,格式为:
"Is[选项][文件]”
4、文件文本编辑命令
●cat命令用于查看纯文本文件(较短的),格式为:
"cat[选项[文件]”
●more命令用于查看纯文本文件(较长的),格式为:
"more[选项]文件"
●head命令用于查看纯文本文档的的N行,格式为:
"head[选项][文件]"
●tail命令用于查看纯文本文档的后N行,格式为:
"tail[选项][文件]"
●wc命令,用于统计指定文本的行数、字数,字节数,格式为"wc[参数]文本”
●cut命令用于通过列来提取文本字符,格式为:
"cut[参数]文本"
5、文件目录管理命令
●touch命令用于创建空白文件与修改文件时间,格式为:
"touch[选项[文件]”
●mkdir用于创建空白的文件夹,格式为:
"mkdir[选项]目录”
●cp命令用于复制文件或目录,格式为:
"qp[选项]源文件目标文件"
●mv命令用于移动文件或改名,格式为:
"mv[选项文件名[目标路径|目标文件名]”
6、用户与组管理命令
●useradd命令用于创建新的用户,格式为:
"useradd[选项]用户名”
●passwd命令用于修改用户的密码,格式为:
"passwd[选项][用户名]"
●userdel命令用于删除用户所有表格,格式为:
"userdel[选项]用户名”
●usermod命令用于修改用户的属性,格式为"usermod[选项]用户名”
●groupadd命令于创建群组,格式为:
”groupadd[选项]群组名"
7、文件查询搜索命令
●grep命令用于对文本进行搜索,格式为:
“grep[选项][文件]"
●find命令用于查找文件,格式为:
"find[查找路径]寻找条件操作”
3.3用户身份与权限管理
1、用户身份与能力
用户可分为超级用户、普通用户、系统用户。
用户类别利用UID进行区分,超级用户UID为0,只有一个。
普通用户UID大于1000。
系统用户UID为1-999。
2、修改文件权限与归属
●chmod命令
用于修改文件或目录的权限。
格式:
chmod[参数]权限文件或目录
●chown命令
用于修改文件或目录的所属主与所属组。
格式:
"chown[参数]所属主:
所属组文件或目录名称”。
3.4用户身份切换
1、su命令
用于变更使用者的身份(切换登陆者)
格式:
"su[-]用户名”
2、sudo命令
用于给普通用户提供额外权利来完成原本超级用户才能完成的任务
格式:
"sudo[参数]命令名称"
4、OpenStack介绍
4.1OpenStack起源
1、OpenStack的概念
OpenStack是一个开源的云计算管理平台项目,是一系列软件开源项目的组合,具备操作系统的一切功能。
OpenStack通过一系列的项目实现数据中心分散的计算、存储、网络等资源的管理监控,形成一个完整的云计算系统。
OpenStack可以提供Web界面访问,同事也可以提供命令行的界面,还可以提供API接口给用户自己开发应用。
OpenStack是为私有云和公有云提供可扩展的弹性的云计算服务,想用户提供简单部署并扩展性强的云服务。
OpenStack管理虚拟机,但并不具备虚拟化功能,主要为上层提供一个虚拟化的运行环境,但依赖于一个第三方的虚拟化软件来实现相应的功能。
例如继承到linux内核的KVM,支持Xen、微软的Hyper-V。
云化的目的是为了实现弹性计算,动态资源调度,多租户等特性。
虚拟化
云
定义
技术
方法论
目的
从1个物理硬件系统创建多个模拟环境
汇聚并自动化分配虚拟资源以供按需使用
用途
针对具体用途为特定用户提供打包资源
针对多种用途为用户群提供不同资源
配置
基于镜像
基于模板
可扩展性
纵向扩展
横向扩展
工作负载
有状态
无状态
租赁
单一租户
多租户
2、OpenStack的起源
OpenStack是由RackspaceCloud和美国宇航员NASA再2010年发起,第一个模块被称为ComputeandObjectStorage,即计算和对象存储,常见为Nova、Swift。
3、OpenStack的版本发展
最早的A版本2和项目:
Nova、Swift,到现在Q版本40个项目,增加了GPU、容器的扩展功能,满足了边缘计算HA高可用、机器学习、人工智能等场景
4、OpenStack的生态圈
OpenStack基金会是非盈利组织,由各个公司赞助会费,帮助推广OpenStack的开发、发行和应用
4.2OpenStack架构
OpenStack的项目组成:
分为五大类:
功能类、生命周期管理类、运营运维类、开发类和其他类
功能区:
包括计算、存储、网络、公共服务、但数据服务等功能
生命周期管理类:
OpenStack系统提供构架、部署、生命周期管理等功能
运营运维类:
为OpenStack的运营运维提供辅助功能,包括系统监控、优化、计费、多区域管理。
开发类:
为OpenStack提供开放的API
其他类:
容器和NFV服务
OpenStack的核心项目:
共9个核心项目;
OpenStack由40多个项目,但常用的为9个核心项目。
OpenStack主要管理三大类资源,计算、存储、网络,通过核心项目来管理。
1:
计算资源管理相关的项目为:
Nova、Ironic、zun;
2:
网络相关的项目为:
提供软件定义网络功能的Neutron、提供负载均衡服务的octavia、提供DNS服务Designate;
3:
存储相关的项目为:
块存储服务的Cinder、对象存储的swift、文件存储服务的Manila。
公共服务中,主要有健全认证服务的Keystone、镜像服务Glance。
编排服务中,主要有提供资源编排的heat、web前端的Horizon。
OpenStack的逻辑架构:
分布式逻辑结构
OpenStack服务其实是由多个进程组成,至少一个API进程用来监听API的请求,预处理并传递到其他服务。
OpenStack整体上是一个分布式的架构。
OpenStack的部署架构:
三种网络,四种节点
三种网络分别是业务网络、管理网络、存储网络
业务网络是OpenStack去管理虚拟机对外提供服务的网络,服务器一般由几块网卡,对网络进行隔离,他们的流量不会交叉。
管理网络是OpenStack的管理节点和计算节点、存储节点共同构成,用于管理节点对相关服务的管理。
存储网络是计算节点访问存储服务的网络,存储设备里读写数据的流量基本都从存储网络走。
四种节点分别是控制节点、计算节点、存储节点、网络节点:
控制节点是OpenStack的管理节点,如keystone认证服务;
计算节点指的是实际运行虚拟机的节点;
存储节点可以向虚拟机提供块存储、文件存储、对象存储;
网络节点主要实现网管和路由的功能。
4.3Nova介绍
1、Nova主要功能
●虚拟机的生命周期管理:
运行、重启、关机、暂停等;
●计算资源的管理:
对所有计算节点机型管理;
●可以纳管其他异构虚拟化平台:
KVM、Xen、VMwarevSphere。
Nova是OpenStack最核心的服务,主要提供虚拟机生命周期管理,负责维护和管理计算资源。
其他一些服务也为Nova提供支持,如Glance为Nova提供镜像,Cinder和Swift提供块存储和对象服务,Neutron为Nova提供网络服务。
2、Nova的组件构成:
五大类组件
●Nova-API类:
对外统一的提供标准化接口,接受和影响用户和其他服务API的请求
●核心计算类:
Nova-scheduler(调度器)、Nova-compute(虚拟机的核心服务)、Nova-conductor(Nova-compute访问桥梁)
●消息队列:
组件间传递消息的中央枢纽
●数据库:
存放一些云平台的状态数据
●虚拟桌面类:
Nova-console、Nova-consoleauth:
让用户通过VNC或SPICE客户端来访问虚拟机的界面;Nova-cert
3、Nova的工作流程:
虚拟机为例讲述工作流程
●Nova是整个Openstack的核心项目。
●Nova调度器Nova-scheduler:
通过2步调度,可以选出最适合的计算节点来创建虚拟机。
4、Nova-scheduler分两步调度:
filter过滤和weight称重
●filter过滤:
是指通过过滤器筛选出符合条件的计算节点,过滤器有几十种,夫使用的corefilter过滤器
●weight称重:
是指通过权重计算选择出最合适的计算节点,包括计算节点剩余的内存容量,剩余的磁盘空间,vcpu的使用情况。
Nova-scheduler由两个调度机制:
●创建:
指在哪个计算节点上创建、启动虚拟机
●迁移:
指从一个计算节点迁移到另一个计算节点
4.4Swift介绍
目的:
使用普通硬件来构建冗余的、可扩展性强的分布式存储集群,提供常持久性、高可用的存储服务(镜像、视频、音频等)。
Swift主要功能:
提供海量对象存储、大文件存储、多媒体处理、可以作为CDN后端以及用于备份与归档的存储
Swift主要组成形式:
账户、容器、对象
Acount账户:
租户-隔离性体现在元数据的metadata上
Container容器:
类似于文件系统中的目录,由用户自定义,它包含自身的元数据和容器内的对象列表
Object对象:
包括数据和数据的元数据,以文件形式保存在文件系统上
Swift逻辑架构:
采用完全对等,面向资源的分布式架构,分为两层:
分别为访问层、存储层
通信方式采用非阻塞式I/O模式,提高了整个系统的吞吐和相应能力
Swift的部署架构和工作流程
分为访问层和存储层
访问层(AcessTier):
代理服务、认证服务、缓存服务、哈希环
存储层(CpacityTier):
账号服务、容器服务、对象服务、一致性服务
在测试环境部署Swift集群,每台服务器包括若干SATA磁盘,只有系统盘需要做RAID。
4.5Cinder介绍
1、Cinder的主要功能
用于向虚拟机提供并管理持久存储资源。
服务器、虚拟机可以通过两种方式来获得存储容量。
第一种是通过某种协议。
SAS、SCSI、SAN,iSCsI,直接挂接裸硬盘。
第二种通过NFS、CIFS等协议,文件系统存储。
2、Cinder的逻辑架构
Cinder的逻辑结构简单,主要包括Cindier-api、调度器Seiheduler、消息队列Queue、数据库、CinderVolume及CinderBackup。
整体上采用分布式架构。
其中Cinder-api负责接收API请求。
调用Cinder-Volume执行操作。
查询和管理Volume进行Voumesnapshot。
Scheduler调度器负责通过调度算法选择最合适的存储节点创建卷。
调度过程和Nova调度器类似也是分两步进行。
MessengerQueue为Cinder各个子服务实现进程间通信和相互协作。
Database存放Cinder的一些状态数据。
CinderVolume管理存储空间。
CinderBackup
将Cinder卷备份到其他的存储系统上。
3、Cinder的调度器Scheduler
第一步会通过和Filter过滤器筛选出合适的存储节点列表。
第二步通过权重计算对存储节点进行排序。
4.6Keystone介绍
1、Keystone的主要功能
是OpenStack中的一个公共服务,为OpenStack家族中的其他服务提供统一的认证服务。
2、Keystone的逻辑架构
Keystone的逻辑结构主要包括ldentity、Resource、Assignment、Token、Catalog以及Policy。
ldentity对user用户和groups分组的身份信息进行验证。
Resource存储domain域和project项目。
Assignment提供role角色和roleassignment角色分配。
Token认证和管理token。
Catalog提供endpoint信息。
Policy鉴别User对某个Project中的资源是否有访问权限
3、Keystone的组件
4.7Neutron介绍
1、Neutron的主要功能
●向租户虚拟机提供隔离的虚拟网络功能。
●向OpenStack其他服务、管理员、用户提供访问的接口。
●对底层各种各样的网络资源抽象化。
2、Neutron的逻辑架构
Neutron的逻辑结构主要包括NeutronServer、Plugin、Agent、MessengerQueue、Database。
NeutronServer对外提供OpenStack网络API,接收服务请求,井调用Plugin处理请求。
Plugin处理NeutronServer发来的请求。
Agent负责在NetworkProvider上真正实现各种网络的功能。
MessengerQueue负责NeutronServer,Plugin和Agent之间的通信和调用。
Database存放OpenStack的网络状态信息。
4.8Glance介绍
1、Glance的主要功能
Glance是OpenStack中负责提供镜像的公共服务。
主要有三个功能,包括提供镜像服务、对虚拟机执行快照、后端支持多种存储系统。
2、Glance的逻辑架构
包括四个架构glance-api,glance-registry,数据库和存储适配器。
glance-api主要用于分析、分发、响应各种镜像管理的REST请求。
通过glance-registry完成镜像的发现、获取、存储等操作。
Glance支持多种镜像格式,有Raw、VHD、VDI、qcow2、VMDK、OVF等。
存储适配器存放ImageMetadate。
4.9Ceilometer介绍
1、Ceilometer的主要功能
Ceilometer的主要功能,提供计量与告警服务,负责监控云环境的各类资源的使用情况,并支持设定告警策略。
2、Ceilometer的组件组成
共有七个组件,一个API,六个agent代理。
ceilometer-compute部署在计算节点上。
其他组件部署在控制节点。
4.10Heat介绍
1、Heat的主要功能
模板编排:
配置不同节点的部署顺序和部署内容、管理云架构服务、应用的生命周期、简化了复杂基础设施,服务和应用的定义和部署。
支持丰富的资源类型:
亚马逊的CloudFormation模板格式、自有的Hot模板格式。
2、Heat和其他模块
工作在Nova、Neutron等服务之上,充当了对外接口的角色;调用相关服务的接口,配置资源满足客户需求。
3、Heat逻辑架构及工作流程
分布式架构:
包括Heat-api,Heatapi-cfn以及Heat-engine。
编排:
1对资源的编排;2.对软件和配置的编排;3.对高级功能的编排;4.集成配置管理工具的编排。
5、数据中心核心技术之网络技术
5.1IP路由技术
1、IP路由的基本概念
IP路由是基于目的地址查找IP路由表,找到报文转发的出接口以及对应的下一跳路由器,然后将报文转发给下一跳路由器,直到到达最终的目的地。
2、影响IP路由选路的原则
基本概念:
路由开销Cost
路由转发时,总是选择开销最小的路径,以OSPF为例来说明cost的计算:
A访问B有两条路径:
一条路径cost为:
3+3+3+3=12
另外一条路径的cost值为:
2+2+2+3=9
最后结果,A到B的数据流经下面的路径。
路由协议
●路由选路原则:
优先:
最长匹配原则。
其次:
路由协议优先级。
最后:
路由开销cost。
●路由协议种类
静态路由:
静态路由是特殊的路由协议。
需要手工配置路由条目,不能动态感知网络的情况。
默认路由:
默认路由为网络和掩码全0的路由,它表示如果报文不能匹配路由表中任何目的网络,将选择该条路由。
动态路由协议:
以自适应网络状态自动维护,而不需要管理员的参与。
缺点:
安全性不如静动态路由协议
5.2VLAN技术描述
1、什么是VLAN
定义:
是一种通过将局域网内的设备逻辑地而不是物理地划分成一个个网段从而实现虚拟工作组的技术。
在设备上进行网段划分。
而不需要去动这个设备的位置和它的网线。
2、VLAN的作用
●便于逻辑工作组的管理与通信。
把物理的VLAN划分为多个组。
●隔离广播域、防止广播风暴。
●提供更高的安全性。
每个VLAN设备就只能在同一个VLAN里面通信,当我们需要不同得VLAN设备间通信时,他们时相互隔离的,需要通过路由器配置一个静态路由,才能进行不同VLAN间的访问,所以它具备很高的安全性。
3、VLAN的划分
按端口划分、MAC地址划分、网络层划分、IP组播划分。
5.3NAT技术描述
1、什么是NAT
对ip的报文中的源或者目的地址的一种处理方式。
使局域网多台主机使用少量的合法地址。
访问控制表是依据ip地址报文报头以及承载的上层协议数据包的格式定义规则。
判定哪些地址允许转换和禁止被转换。
2、NAT的工作原理
●NAT一对一的地址转换
●P