OpenStack介绍
  3TDOFKWhozdS 2023年11月02日 82 0

OpenStack

OpenStack 提供了一种模块化云基础架构。OpenStack 是一个云操作系统,在整个数据中心控制大量的计算、存储和网络资源池,通过 API 进行管理,并提供通用的认证机制。

OpenStack介绍_API

OpenStack 全景图

OpenStack 目前一共包含 65 个服务组件,其中 6 个核心服务主要担纲系统的基础架构,其余项目则负责管理控制面板、编排、裸机部署、信息传递、容器及统筹管理等操作。

OpenStack介绍_OpenStack_02

OpenStack 架构

模块化架构

OpenStack 采用模块化架构,提供一组服务,可扩展性和弹性是其核心设计原则。以下 7 个组件为实验环境部署的组件服务,除控制面板(Dashboard)外都为核心服务。

OpenStack介绍_Storage_03

概念体系结构

主要服务组件之间的关系

OpenStack介绍_Storage_04

逻辑架构

最常见的 OpenStack 云架构,加粗表示实验环境部署的服务组件。

  • Keystone:身份认证服务
  • Glance:镜像服务
  • Nova:计算服务
  • Neutron:网络服务
  • Swift:对象存储
  • Cinder:块存储
  • Dashboard:控制面板
  • Ceilometer:计量服务
  • Heat:编排服务
  • Ironic:裸金属服务
  • Trove:数据库即服务
  • Sahara:提供大数据处理框架

OpenStack介绍_模块化_05

核心组件交互逻辑

OpenStack 逻辑架构展示了 OpenStack 中最常见的集成服务以及它们之间的交互。终端用户可以通过控制面板、终端命令行和 API 与服务进行交互。所有服务都通过公共的身份认证服务进行身份验证,各个服务通过公共 API 交互,但需要特权管理员命令的情况除外。

OpenStack介绍_API_06

以上组件的相关日志文件

Node type

Service

Log location

Cloud controller

nova-*

/var/log/nova

Cloud controller

glance-*

/var/log/glance

Cloud controller

cinder-*

/var/log/cinder

Cloud controller

keystone-*

/var/log/keystone

Cloud controller

neutron-*

/var/log/neutron

Cloud controller

horizon

/var/log/apache2/

All nodes

misc (swift, dnsmasq)

/var/log/syslog

Compute nodes

libvirt

/var/log/libvirt/libvirtd.log

Compute nodes

Console (boot up messages) for VM instances:

/var/lib/nova/instances/instance-/console.log

Block Storage nodes

cinder-volume

/var/log/cinder/cinder-volume.log

核心组件日志

Identity Service (keystone)

Service

Service Name

Log Path

OpenStack Identity Service

openstack-keystone.service

/var/log/keystone/keystone.log

Image Service (glance)

Service

Service Name

Log Path

OpenStack Image Service API server

openstack-glance-api.service

/var/log/glance/api.log

OpenStack Image Service Registry server

openstack-glance-registry.service

/var/log/glance/registry.log

Compute (nova)

Service

Service Name

Log Path

OpenStack Compute API service

openstack-nova-api.service

/var/log/nova/nova-api.log

OpenStack Compute certificate server

openstack-nova-cert.service

/var/log/nova/nova-cert.log

OpenStack Compute service

openstack-nova-compute.service

/var/log/nova/nova-compute.log

OpenStack Compute Conductor service

openstack-nova-conductor.service

/var/log/nova/nova-conductor.log

OpenStack Compute VNC console authentication server

openstack-nova-consoleauth.service

/var/log/nova/nova-consoleauth.log

Informational messages

nova-manage command

/var/log/nova/nova-manage.log

OpenStack Compute NoVNC Proxy service

openstack-nova-novncproxy.service

/var/log/nova/nova-novncproxy.log

OpenStack Compute Scheduler service

openstack-nova-scheduler.service

/var/log/nova/nova-scheduler.log

Networking (neutron)

Service

Service Name

Log Path

OpenStack Neutron DHCP Agent

neutron-dhcp-agent.service

/var/log/neutron/dhcp-agent.log

OpenStack Networking Layer 3 Agent

neutron-l3-agent.service

/var/log/neutron/l3-agent.log

Metadata agent service

neutron-metadata-agent.service

/var/log/neutron/metadata-agent.log

Metadata namespace proxy

n/a

/var/log/neutron/neutron-ns-metadata-proxy-UUID.log

Open vSwitch agent

neutron-openvswitch-agent.service

/var/log/neutron/openvswitch-agent.log

OpenStack Networking service

neutron-server.service

/var/log/neutron/server.log

Object Storage (swift)

OpenStack Object Storage sends logs to the system logging facility only.

Block Storage (cinder)

Service

Service Name

Log Path

Block Storage API

openstack-cinder-api.service

/var/log/cinder-api.log

Block Storage Backup

openstack-cinder-backup.service

/var/log/cinder/backup.log

Informational messages

The cinder-manage command

/var/log/cinder/cinder-manage.log

Block Storage Scheduler

openstack-cinder-scheduler.service

/var/log/cinder/scheduler.log

Block Storage Volume

openstack-cinder-volume.service

/var/log/cinder/volume.log

Dashboard (horizon)

Service

Service Name

Log Path

Log of certain user interactions

Dashboard interface

/var/log/horizon/horizon.log

端到端核心组件交互 —— 创建实例

在 OpenStack 上创建实例时,端到端的组件交互,包括网络和卷的请求与分配。

创建实例的状态改变。

OpenStack介绍_API_07

从另一个视角看组件间的交互。

OpenStack介绍_Storage_08

组件之间的交互依赖于控制节点,控制节点使用消息队列(RabbitMQ)对组件交互消息进行排序,使用 REST API 并遵循 AMQP 协议;而组件内部的交互使用 RPC ,例如 nova 中的四个模块。

OpenStack介绍_OpenStack_09

参阅

文章作者: Jckling    版权声明: 转载请注明来自 Jckling's Blog!

文章链接: https://jckling.github.io/2021/04/02/OpenStack/OpenStack 整体介绍/

【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

  1. 分享:
最后一次编辑于 2023年11月08日 0

暂无评论

3TDOFKWhozdS