iis服务器助手广告广告
返回顶部
首页 > 资讯 > 数据库 >Nova 组件详解 - 每天5分钟玩转 OpenStack(26)
  • 228
分享到

Nova 组件详解 - 每天5分钟玩转 OpenStack(26)

2024-04-02 19:04:59 228人浏览 安东尼
摘要

本节开始,我们将详细讲解 Nova 的各个子服务。前面架构概览一节知道 Nova 有若干 nova-* 的子服务,下面我们将依次学习最重要的几个。今天先讨论 nova-api 和 nova-conducto

Nova 组件详解 - 每天5分钟玩转 OpenStack(26)

本节开始,我们将详细讲解 Nova 的各个子服务。

前面架构概览一节知道 Nova 有若干 nova-* 的子服务,下面我们将依次学习最重要的几个。
今天先讨论 nova-api 和 nova-conductor。

nova-api

Nova-api 是整个 Nova 组件的门户,所有对 Nova 的请求都首先由 nova-api 处理。 Nova-api 向外界暴露若干 Http REST API 接口。 在 keystone 中我们可以查询 nova-api 的 endponits。

Nova 组件详解 - 每天5分钟玩转 OpenStack(26)

客户端就可以将请求发送到 endponits 指定的地址,向 nova-api 请求操作。 当然,作为最终用户的我们不会直接发送 Rest AP I请求。 OpenStack CLI,Dashboard 和其他需要跟 Nova 交换的组件会使用这些 API。

Nova-api 对接收到的 HTTP API 请求会做如下处理: 1. 检查客户端传人的参数是否合法有效 2. 调用 Nova 其他子服务的处理客户端 HTTP 请求 3. 格式化 Nova 其他子服务返回的结果并返回给客户端

nova-api 接收哪些请求? 简单的说,只要是跟虚拟机生命周期相关的操作,nova-api 都可以响应。 大部分操作都可以在 Dashboard 上找到。

打开Instance管理界面

Nova 组件详解 - 每天5分钟玩转 OpenStack(26)

点击下拉箭头,列表中就是 nova-api 可执行的操作。

Nova 组件详解 - 每天5分钟玩转 OpenStack(26)

OpenStack 用术语 “Instacne” 来表示虚拟机,后面我们将统一使用这个术语。

nova-conductor

nova-compute 需要获取和更新数据库中 instance 的信息。 但 nova-compute 并不会直接访问数据库,而是通过 nova-conductor 实现数据的访问。

Nova 组件详解 - 每天5分钟玩转 OpenStack(26)

这样做有两个显著好处:

  1. 更高的系统安全

  2. 更好的系统伸缩性

更高的安全性

在 OpenStack 的早期版本中,nova-compute 可以直接访问数据库,但这样存在非常大的安全隐患。 因为 nova-compute 这个服务是部署在计算节点上的,为了能够访问控制节点上的数据库,就必须在计算节点的 /etc/nova/nova.conf 中配置访问数据库的连接信息,比如

[database] connection = Mysql+pymysql://root:secret@controller/nova?charset=utf8

试想任意一个计算节点被******,都会导致部署在控制节点上的数据库面临极大风险。

为了解决这个问题,从 G 版本开始,Nova 引入了一个新服务 nova-conductor,将 nova-compute 访问数据库的全部操作都放到 nova-conductor 中,而且 nova-conductor 是部署在控制节点上的。 这样就避免了 nova-compute 直接访问数据库,增加了系统的安全性。

更好的伸缩性

nova-conductor 将 nova-compute 与数据库解耦之后还带来另一个好处:提高了 nova 的伸缩性。

nova-compute 与 conductor 是通过消息中间件交互的。 这种松散的架构允许配置多个 nova-conductor 实例。 在一个大规模的 OpenStack 部署环境里,管理员可以通过增加 nova-conductor 的数量来应对日益增长的计算节点对数据库的访问。

下一节我们讨论计算节点调度服务 nova-scheduler.


Nova 组件详解 - 每天5分钟玩转 OpenStack(26)

您可能感兴趣的文档:

--结束END--

本文标题: Nova 组件详解 - 每天5分钟玩转 OpenStack(26)

本文链接: https://www.lsjlt.com/news/38551.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • sql server数据库日志满了怎么处理
    当 sql server 数据库日志已满时,解决方法包括:1. 清除未使用的日志;2. 截断日志;3. 增加日志文件大小;4. 自动增长日志文件;5. 更改日志文件路径;6. 备份日志;...
    99+
    2024-05-23
  • sql server数据库显示恢复挂起怎么解决
    解决 sql server 数据库恢复挂起问题:检查错误日志和事件查看器以确定原因;清除损坏的日志文件;从备份恢复数据库;重新启动 sql server 服务;修复损坏的页;如以上步骤无...
    99+
    2024-05-23
  • sql server数据库分离失败解决方法
    要解决 sql server 数据库分离失败问题,需要遵循以下步骤:检查权限,确保拥有足够的权限来分离数据库。关闭所有用户连接,包括系统和应用程序连接。终止可能阻塞分离进程的进程。检查数...
    99+
    2024-05-23
  • mysql锁表怎么使用
    使用 lock tables 语句显式锁定 mysql 表,支持 read(共享锁)、write(排他锁)、low_priority write(排他锁,死锁时优先级较低)等锁类型。隐式...
    99+
    2024-05-23
    mysql
  • mysql查询语法怎么写
    mysql查询语法用于从数据库中检索数据,包括:select关键字、列名、from关键字、where子句和order by子句。where子句使用运算符过滤...
    99+
    2024-05-23
    mysql
  • mysql端口重复了怎么办
    mysql端口重复问题可通过以下步骤解决:检查端口使用情况。停止冲突进程。修改mysql配置文件中的端口号。重启mysql服务。调整防火墙规则以允许新端口。 MySQL 端口重复解决方...
    99+
    2024-05-23
    mysql
  • mysql主从同步怎么实现
    mysql 主从同步实现 什么是 MySQL 主从同步? MySQL 主从同步是一种数据复制机制,其中一台服务器(主服务器)将数据更改复制到一台或多台其他服务器(从服务器)。 如何实现 ...
    99+
    2024-05-23
    mysql
  • mysql远程连接怎么用
    远程连接 mysql 数据库的步骤:启用远程连接(修改配置文件和重启服务器);创建具有远程连接权限的远程用户;允许外部连接(检查防火墙设置);使用 mysql 客户端连接到远程服务器,输...
    99+
    2024-05-23
    mysql linux
  • mysql表损坏怎么修复
    修复 mysql 表损坏:1. 使用 myisamchk 工具(仅适用于 myisam 表);2. 使用 repair table 命令(适用于 myisam 和 innodb 表);3...
    99+
    2024-05-23
    mysql navicat
  • mysql时间戳怎么写
    mysql 使用 timestamp 数据类型存储时间戳,可自动生成。具体步骤如下:创建 timestamp 列:create table my_table (event_time ti...
    99+
    2024-05-23
    mysql
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作