部署¶
数据处理服务像许多其他 OpenStack 服务一样,作为运行在连接到堆栈的主机上的应用程序部署。从 Kilo 版本开始,它具有以分布式方式部署,并具有多个冗余控制器的能力。与其他服务一样,它还需要一个数据库来存储有关其资源的信息。请参阅 数据库。重要的是要注意,数据处理服务需要管理多个身份服务信任关系,直接与编排和网络服务通信,并可能在代理域中创建用户。出于这些原因,控制器需要访问控制平面,因此我们建议将其与其他服务控制器一起安装。
数据处理直接与多个 openstack 服务交互
计算
身份
网络
对象存储
编排
块存储(可选)
我们建议记录这些服务与数据处理控制器之间所有的数据流和桥接点。请参阅 系统文档。
对象存储服务由数据处理服务用于存储作业二进制文件和数据源。希望访问完整数据处理服务功能的的用户需要在他们使用的项目中拥有对象存储。
网络服务在集群配置中发挥着重要作用。在配置之前,用户预计需要为集群实例提供一个或多个网络。关联网络的行为类似于通过仪表板启动实例时分配网络的过程。这些网络由控制器用于访问其集群的实例和框架的管理员访问。
同样值得注意的是身份服务。数据处理服务的使用者需要在他们的项目中拥有适当的角色,以允许为其集群配置实例。使用代理域配置的安装需要特别考虑。请参阅 代理域。具体来说,数据处理服务需要能够在代理域中创建用户。
控制器对集群的网络访问¶
数据处理控制器的一项主要任务是与其生成的实例通信。这些实例被配置并根据所使用的框架进行配置。控制器和实例之间的通信使用 安全 shell (SSH) 和 HTTP 协议。
在配置集群时,每个实例都会在用户提供的网络中获得一个 IP 地址。第一个网络通常被称为数据处理管理网络,实例可以使用网络服务为此网络分配的固定 IP 地址。控制器还可以配置为除了其固定地址外,为集群中的实例使用浮动 IP 地址。在与实例通信时,如果启用,控制器将优先使用浮动地址。
对于固定 IP 地址和浮动 IP 地址无法提供所需功能的场景,控制器可以通过两种替代方法提供访问:自定义网络拓扑和间接访问。自定义网络拓扑功能允许控制器通过配置文件中提供的 shell 命令访问实例。间接访问用于指定用户在集群配置期间可以使用的代理网关实例。这些选项在 配置和加固 中提供了示例用法说明。