OpenStack及云计算(面试)常见问题
发表于:2025-01-24 作者:千家信息网编辑
千家信息网最后更新 2025年01月24日,什么是云计算?云计算是一种采用按量付费的模式,基于虚拟化技术,将相应计算资源(如网络、存储等)池化后,提供便捷的、高可用的、高扩展性的、按需的服务(如计算、存储、应用程序和其他 IT 资源)。云计算的
千家信息网最后更新 2025年01月24日OpenStack及云计算(面试)常见问题: # ip netns exec qdhcp-a51635b1-d023-419a-93b5-39de47755d2d "ifconfig" #上传 # glance image-download --file --progress #下载 --port-range-min --port-range-max --direction --remote-ip-prefix Security-Group-Name
- 什么是云计算?
- 云计算的基本特征?
- 自主服务:可按需的获取云端的相应资源(主要指公有云);
- 网路访问:可随时随地使用任何联网终端设备接入云端从而使用相应资源。
- 资源池化:
- 快速弹性:可方便、快捷地按需获取和释放计算资源。
- 按量计费:
- 云计算常见几种部署模式?
- 私有云:云平台资源只给某个单位、或某部分用户内部使用。
- 公有云:云平台资源开放给社会公众服务。
- 社区云:云平台资源给几个固定的单位内使用。
- 混合云:两个或两个以上不同类型的云平台。
- 云计算的三种服务模式?
- IaaS:基础设施即服务,云服务商将IT系统的基础设施(如计算资源、存储资源、网络资源)池化后作为服务进行售卖;
- PaaS:平台即服务,云服务商将IT系统的平台软件层(数据库、OS、中间件、运行库)作为服务进行售卖;
- SaaS:软件即服务,云服务商将IT系统的应用软件层作为服务进行售卖。
- 常见云平台架构组成?
- 云服务消费者:租赁云服务产品的个人或者单位组织;
- 云服务提供商:提供云服务产品的个人或者单位组织;
- 云服务代理商:向消费者销售云服务并获取一定佣金的个人或者单位组织;
- 云计算审计员:针对云计算安全性、云计算性能等进行独立评估的第三方个人或者单位组织;
- 云服务承运商:在云服务提供商和消费者之间提供连接媒介,以便把云计算服务产品从云服务提供商转移到云服务消费者手中,如中国电信。
- 常见的虚拟化厂商及其相应的产品?
- 云计算与虚拟化的区别?
- 常见的IaaS管理工具?
- 私有云相对于公有云有哪些优势?
- 数据安全性更高;
- 可节省上云迁移过程中的大量成本;
- 业务快速部署,缩短业务周期;
- 降低企业成本,自主可控。
- 在OpenStack高可用架构中,controller节点为什么通常至少有3个节点?
- 简单描述SDN?
- 转发与控制分离。SDN具有转发与控制分离的特点,采用SDN控制器实现网络拓扑的收集、路由的计算、流表的生成及下发、网络的管理与控制等功能;而网络层设备仅负责流量的转发及策略的执行。通过这种方式可使得网络系统的转发面和控制面独立发展,转发面向通用化、简单化发展,成本可逐步降低;控制面可向集中化、统一化发展,具有更强的性能和容量。
- 控制逻辑集中。转发与控制分离之后,使得控制面向集中化发展。控制面的集中化,使得SDN控制器拥有网络的全局静态拓扑,全网的动态转发表信息,全网络的资源利用率,故障状态等。因此,SDN控制器可实现基于网络级别的统一管理、控制和优化,更可依托全局的拓扑的动态转发信息帮助实现快速的故障定位和排除,提高运营效率。
- 网络能力开放化。SDN还有一个重要特征是支持网络能力开放化。通过集中的SDN控制器实现网络资源的统一管理、整合以及虚拟化后,采用规范化的北向接口为上层应用提供按需分配的网络资源及服务,进而实现网络能力开放。这样的方式打破了现有网络对业务封闭的问题,是一种突破性的创新。
- 什么是OpenStack?
- 资源抽象:OpenStack将各类硬件资源,通过虚拟化与软件定义的形式,抽象成虚拟的资源池;
- 资源调度:OpenStack根据管理员/用户的需求,将资源池中的资源分配给不同的用户,承载不同的应用;
- 应用生命周期管理:OpenStack可以提供初步的应用部署/撤销、自动规模调整等功能;
- 系统运维:OpenStack可以提供一定的系统监控能力;
- 人机交互:OpenStack提供人机接口,外界可通过API、CLI或图形界面的方式与OpenStack进行交互。
- OpenStack常见组件及其功能?
- Horzon组件:提供一个Web前端控制台,从而实现通过web管理云平台,建云主机,分配网络,配安全组等。
- Nova组件:负责响应虚拟机创建请求、调度、销毁云主机。
- Neutron组件:提供云计算的网络虚拟化技术,为OpenStack其他服务提供网络连接服务。为用户提供接口,可以定义Network、Subnet、Router,配置DHCP、DNS、负载均衡、L3服务,网络支持GRE、VLAN。插件架构支持许多主流的网络厂家和技术,如OpenvSwitch。以上为三大核心组件。
- Swift组件:用于在大规模可扩展系统中通过内置冗余及高容错机制实现对象存储的系统,允许进行存储或者检索文件。可为Glance提供镜像存储,为Cinder提供卷备份服务。
- Cinder组件:为运行实例提供稳定持久化的数据块存储服务,如创建卷、删除卷,在实例上挂载和卸载卷。
- Keystone组件:为OpenStack其他服务提供身份验证、服务规则和服务令牌的功能,管理Domains、Projects、Users、Groups、Roles。
- Glance组件:为云主机提供不同系统镜像,支持多种虚拟机镜像格式(AKI、AMI、ARI、ISO、QCOW2、Raw、VDI、VHD、VMDK),有创建上传镜像、删除镜像、编辑镜像基本信息的功能。
- Ceilometer组件:能把OpenStack内部发生的几乎所有的事件都收集起来,然后为计费和监控以及其它服务提供数据支撑。
- Heat组件:提供了一种通过模板定义的协同部署方式,实现云基础设施软件运行环境(计算、存储和网络资源)的自动化部署。
- OpenStack中什么服务通常运行在控制节点?
- 以下服务通常运行在控制节点:
- 认证服务(Keystone)
- 镜像服务(Glance)
- Nova服务,如Nova API、Nova Scheduler和Nova DB
- 块存储和对象存储服务(Cinder、Swift)
- Ceilometer服务
- MariaDB/MySQL和RabbitMQ服务
- 网络(Neutron)和网络代理的管理服务
- 编排服务(Heat)
- OpenStack中什么服务通常运行在计算节点?
- Nova计算
- 网络服务,比如OVS
- OpenStack中的Domain,project,user,role,token 的概念和关系?
- OpenStack中计算节点上虚拟机默认保存路径在哪?
- OpenStack中Glance镜像的默认保存路径在哪?
- OpenStack创建虚拟机的命令是什么?
- OpenStack虚拟机启动过程?
- 界面或命令行通过RESTful API向keystone获取认证信息。
- keystone通过用户请求认证信息,并生成auth-token返回给对应的认证请求。
- 界面或命令行通过RESTful API向nova-api发送一个boot instance的请求(携带auth-token)。
- nova-api接受请求后向keystone发送认证请求,查看token是否为有效用户和token。
- keystone验证token是否有效,如有效则返回有效的认证和对应的角色(注:有些操作需要有角色权限才能操作)。
- 通过认证后nova-api和数据库通讯。
- 初始化新建虚拟机的数据库记录。
- nova-api通过rpc.call向nova-scheduler请求是否有创建虚拟机的资源(Host ID)。
- nova-scheduler进程侦听消息队列,获取nova-api的请求。
- nova-scheduler通过查询nova数据库中计算资源的情况,并通过调度算法计算符合虚拟机创建需要的主机。
- 对于有符合虚拟机创建的主机,nova-scheduler更新数据库中虚拟机对应的物理主机信息。
- nova-scheduler通过rpc.cast向nova-compute发送对应的创建虚拟机请求的消息。
- nova-compute会从对应的消息队列中获取创建虚拟机请求的消息。
- nova-compute通过rpc.call向nova-conductor请求获取虚拟机消息。(Flavor)
- nova-conductor从消息队队列中拿到nova-compute请求消息。
- nova-conductor根据消息查询虚拟机对应的信息。
- nova-conductor从数据库中获得虚拟机对应信息。
- nova-conductor把虚拟机信息通过消息的方式发送到消息队列中。
- nova-compute从对应的消息队列中获取虚拟机信息消息。
- nova-compute通过keystone的RESTfull API拿到认证的token,并通过HTTP请求glance-api获取创建虚拟机所需要镜像。
- glance-api向keystone认证token是否有效,并返回验证结果。
- token验证通过,nova-compute获得虚拟机镜像信息(URL)。
- nova-compute通过keystone的RESTfull API拿到认证k的token,并通过HTTP请求neutron-server获取创建虚拟机所需要的网络信息。
- neutron-server向keystone认证token是否有效,并返回验证结果。
- token验证通过,nova-compute获得虚拟机网络信息。
- nova-compute通过keystone的RESTfull API拿到认证的token,并通过HTTP请求cinder-api获取创建虚拟机所需要的持久化存储信息。
- cinder-api向keystone认证token是否有效,并返回验证结果。
- token验证通过,nova-compute获得虚拟机持久化存储信息。
- nova-compute根据instance的信息调用配置的虚拟化驱动来创建虚拟机。
- OpenStack中如何显示用户的网络命名空间列表?
- OpenStack中如何执行网络命名空间内的命令?
- OpenStack中Glance服务如何使用命令上传和下载镜像?
- OpenStack中如何将虚拟机从异常状态置为活动状态?
- OpenStack中如何获取浮动IP列表?
- OpenStack中如何在特定可用区特定计算节点创建虚拟机?
- OpenStack中如何获取特定计算节点虚拟机列表?
- OpenStack中如何查看虚拟机的控制台日志?
- OpenStack中如何获取控制台的URL?
- OpenStack中如何创建Cinder/Block存储卷?
- OpenStack中如何列出所有创建的项目或用户?
- OpenStack中如何显示服务端点(endpoint)列表?
- 公共端点
- 内部端点
- 管理端点
- OpenStack控制节点按什么步骤重启nova服务?
- OpenStack中已存在的安全组SG,如何添加规则?
- OpenStack中如何查看控制节点和计算节点的OVS桥配置?
- OpenStack中计算节点的集成桥(br-int)的作用是什么?
- OpenStack中计算节点的隧道桥(br-tun)的作用是什么?
- OpenStack中外部OVS桥(br-ex)的作用是什么?
- OpenStack中的各组件之间通信机制?
- RESTful API:
- REST定义的原则
- 所有事物都定义了ID。openstack中每个资源都有唯一的UUID
- 所有事物都链接在一起。在openstack中将资源的ID放在URL中。
- 使用标准的方法。比如说GET是查询资源,POST是添加资源,PUT是更新资源等等。
- 使用RESTful API架构,实现的目标
- 客户端与服务端的独立性: 在公共接口不变的情况下,客户端和服务端的代码可以独立开发。
- 无状态性: 用户的状态保存在客户端,服务端不再保存用户的状态。客户端向服务端发送请求时,必须发送所有的数据,包括用户状态。
- 统一的接口: RESTful API的URL格式需要遵守统一的规范。可以降低客户端服务器的耦合度,使得编码更加简单。
- 缺点
- 消息仅限于文本
- 客户端与服务端采取同步机制,当发送http请求时客户端需要等待服务器的响应
- 客户端与服务器虽然可以独立开发,但也存在耦合。客户端必须要知道服务器的地址才可以正常工作。
- REST是面向资源的,资源通过URL暴露
- REST本身可以利用HTTP的一些特征,如HTTP动词、状态码、HTTP报头等
- RPC
- 特点:二进制的应用层通信协议,进城之间对称的异步通信协议,消息格式,一系列标准化的但可拓展的消息能力(订阅者和发布者,两个节点无需知道对方是什么节点,也不用管对方节点怎么去处理发送的消息,拥有过滤器可以修改订阅者的接收内容)
- 组成:发布者,中间件(消息的存储、交换和路由),订阅者
- 流程:发布者将消息发送到中间件,中间件将消息存储到消息队列中,最后订阅者从消息队列中获取消息。
- nova中使用rabbitmq实现RPC调用
- 客户端(发布者)无需知道服务器(订阅者)的位置
- 客户端与服务器无需同步运行。客户端可以先发RPC调用,然后存储在消息队列中。
- 远程调用的随机均衡性,当客户端发起RPC调用时,可以随机选择一个服务器来处理消息
- OpenStack中根据权限不同网络可分为几种?
- OpenStack中根据网络类型不同网络可分为几种?
- OpenStack网络中OpenFlow规则的作用是什么?
- OpenStack网络中OpenFlow交换机的信息(比如端口、表编号、缓存编号等)如何查看?
- OpenStack网络中如何显示交换机的所有Flow入口?
- OpenStack中Neutron代理是什么?如何显示所有Neutron代理?
- OpenStack中CPU Pinning指什么?
- 它确保虚拟机只能在专用核心上运行;
- 它还确保公共主机进程不在这些核心上运行。
- 常见的OpenStack环境中的网络部署有哪些?
- 外部网络(External network):数据中心 Intranet,从这里分配浮动IP地址。
- OpenStack 内部网络:
- 管理网络(management network):提供 OpenStack 各个组件之间的内部通信,以及 API 访问端点(Endpoint)。为安全考虑,该网络必须限制在数据中心之内。
- API 网络:其实这不是一个单独的网络,而是包含在外部和内部网络中。API 的 Endpoint 包括 publicurl 和 internalurl,其中,publicurl 包含的是 externa network 的 IP 地址,internal network 包含的是 management network IP 地址。为了简单起见,提供给内外网络访问的API的 publicurl 和 internalurl 相同,而只给内部网络访问的 API 只使用 internalurl。
- 数据网络(data network):除管理网络以外的其它网络,往往还可以细分为下面几种。它们可以合为一种,也可以从性能方面考虑分离出一种或几种作为单独的网络。
- 租户网络(Tenant network):提供虚机在计算节点之间,以及计算节点和网络节点之间的通信。同样这也是数据中心的内部网络。
- 存储访问网络(storage access network):访问存储的网络。
- 存储后端网络(storage backend network):比如 Ceph 和 Swift 集群用于后端数据复制的网络。
- IPMI、PXE网络等
- Neutron实现了哪些层次的网络隔离?
- 租户的网络隔离:
- 外部网络的隔离:
- 相同组租户的的虚拟机位于不同宿主机之间的通讯?
- OpenStack常见部署方式?
- 简述块存储、文件存储及对象存储的区别及各自特点?
块存储 | 文件存储 | 对象存储 | |
使用方式 | 块存储主要是将裸磁盘空间整个映射给主机使用的。 | 文件存储可直接提供给主机使用,从而实现文件的上传和下载,且无需对文件存储再进行格式化。 | 基于网络的数据存取服务,可通过网络随时存储和调用包括文本、图片、音频和视频等在内的各种非结构化数据文件。 |
典型设备 | RAID、DISK、DAS、SAN | HDFS、RGFS | SWIFT、OSS |
优点 | 1. 通过RAID与LVM等手段,对数据提供了保护; 2. 可将多块廉价的硬盘组合为一个大容量的逻辑盘对外提供服务,提高了容量; 3. 多块磁盘进行组合,能实现并行写入,提升了读写效率; 4. 当块存储采用SAN架构组网时,传输速度以及封装协议的原因,使得传输速度和读写效率得到提升。 | 1. 成本低廉,普通以太网即可实现,无需其他专用设备; 2. 方便文件共享。 | 1. 兼具块存储和文件存储的优点。 |
缺点 | 1. 当块存储采用SAN架构组网时,需要额外光纤通道卡及光纤交换机,增加成本; 2. 在非集群环境中,块存储裸盘映射给主机,其他节点无法使用,从而无法实现主机之间数据的共享; 3. 当块存储作为某主机裸设备格式化之后,不利于不同操作系统主机(不同文件格式)间的数据共享。 | 1. 基于以太网,读写速率低,传输速率慢。 | 1. 不兼容现有模式,应用形态需要重新开发。 |
接口 | Driver | POSIX | Restful API |
- 通常高可用(High Availability)可通过哪两个维度衡量,各自含义是什么?
- 高可用(High Availability)根据服务节点角色分为哪两类?
- 衡量容灾系统的重要指标是什么,且容灾可分为几个级别?
级别 | 定义 | RTO | RPO |
数据级 | 指通过建立异地容灾中心,对数据进行远程备份,在灾难发生之后要确保原有的数据不会丢失或者遭到破坏。但在数据级容灾这个级别,发生灾难时应用是会中断的。 在数据级容灾方式下,所建立的异地容灾中心相当于一个远程的数据备份中心。 数据级容灾的恢复时间比较长,但是相比其他容灾级别来讲它的费用比较低,且构建实施相对简单。 | RTO最长(若干天),因为灾难发生时,需要重新部署机器,利用备份数据恢复业务。 | 最低 |
应用级 | 在数据级容灾的基础之上,在备份站点同样构建一套相同的应用系统,通过同步或异步复制方式,可保证关键应用在允许的时间范围内恢复运行,尽可能减少灾难带来的损失,让用户基本感受不到灾难的发生,从而使系统所提供的服务是完整的、可靠的和安全的。 | RTO中等(若干小时) | 中等。异地可搭建一样的系统,或者精简系统。 |
业务级 | 全业务的灾备,除了必要的IT相关技术,还要求具备全部的基础设施。其大部分内容是非IT系统(如电话、办公地点等),当大灾难发生后,原有的办公场所都会受到破坏,除了数据和应用的恢复,更需要一个备份的工作场所能够正常的开展业务。 | RTO最小(若干分钟或者秒) | 最高 |
https://www.imdb.com/list/ls085332179/
https://www.imdb.com/list/ls085332117/
https://www.imdb.com/list/ls085332135/
https://www.imdb.com/list/ls085332167/
https://www.imdb.com/list/ls085332124/
https://www.imdb.com/list/ls085332147/
https://www.imdb.com/list/ls085332197/
https://www.imdb.com/list/ls085332193/
https://www.imdb.com/list/ls085332188/
https://www.imdb.com/list/ls085332302/
网络
服务
数据
节点
存储
资源
消息
控制
系统
信息
管理
用户
命令
物理
镜像
应用
之间
客户
运行
通信
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
tcp服务器数据处理
软件开发硬件环境有哪些
asp 数据库表 数字
乐领网络技术有限公司
软件开发技术行业状况
电力系统网络安全分层分区
网络安全期末结课小论文
达梦数据库前景
2018网络安全空间专业
网络安全期末考试试题综合题大题
徐汇区手机软件开发管理
网络安全常用关键技术三大类
惠州移动软件开发咨询
战网国际服找不到服务器
2021中国网络安全形势
数据库恢复技术6
360首都网络安全日
网络技术与现代文明ppt
网络安全等级测评工控系统
软件开发博览会
档案数据库设计过程
梦幻西游预定的服务器怎么转区
如何组建软件开发团队
收银软件开发购买
上海通讯网络技术展示
什么网络技术能赚钱
服务器与客户端控制台
南宁软件开发公司多吗
售前售后工程师和网络技术工程师
华脉软件开发集团 案件