Composition de l'architecture OpenStack

Composition de l'architecture OpenStack

OpenStack est un système d'exploitation cloud open source, évolutif et flexible. Ses règles de conception sont les suivantes:

  • Divisez différents projets en fonction des différentes fonctions et de la polyvalence, divisez les sous-systèmes

Divisez les différents services en fonction de la fonction et de la polyvalence, et divisez une fonction de tri en divers sous-services / sous-fonctions pour faciliter la gestion et le dépannage. Et les services sont isolés les uns des autres et n'utilisent l'API que comme un portail d'interaction unifié pour se connecter / communiquer les uns avec les autres

  • Selon le plan logique, standardisez la communication entre les sous-systèmes

L'interaction entre les API aura une manière spécifique / universelle de réguler la communication entre les différents composants

Chaque module de sous-fonction suit certaines spécifications de communication (API, HTTP)

  • Concevez toute l'architecture du système en superposant

Relier les dimensions de la pensée stratifiée:

Prenez la structure comme unité, trois couches

1. Composants globaux 2. Composants auxiliaires 3. Composants de base

Couché avec un seul service / composant de base:

1. API 2. Module de sous-fonction 3. Autres (rabbitmq)

Communication des composants et des composants, les modules de sous-fonction internes peuvent communiquer via la file d'attente de messages / l'agent (rabbitmq)

Courtier de messages: en tant que transporteur pour la communication / interaction / transmission de données des composants et des composants

  • Fournir une interface API unifiée entre les différents sous-systèmes fonctionnels

Interaction / communication / transmission de données / appel entre les composants via une interface API unifiée

Architecture conceptuelle OpenStack

Insérez la description de l'image ici

Une fois que l'utilisateur de la plate-forme cloud est authentifié et autorisé par le service Keystone, il crée un service de machine virtuelle via le mode Horizon ou Réinitialiser l'API. Le processus de création inclut l'utilisation du service Nova pour créer une instance de machine virtuelle. L'instance de machine virtuelle utilise Jetez un œil pour fournir des services de mise en miroir, puis utilise Neutron pour la machine virtuelle nouvellement créée. La machine alloue une adresse IP et l'incorpore dans le réseau virtuel. Ensuite, le volume créé par Cinder est utilisé pour monter le bloc de stockage de la machine virtuelle. L'ensemble du processus est surveillé par les ressources du module Ceilometer, et le volume (Volume) généré par Cinder et fourni par Glance Image peut être enregistré via le mécanisme de stockage d'objets de Swift.

Du point de vue des dimensions architecturales:

Structure en tant qu'unité

1. Composantes mondiales:

Keystone: fournir une certification

Ceilomètre: suivi et dépenses statistiques

Horizon: gérer les fonctions de l'instance

2. Composants auxiliaires:

Fournit certains services de gestion et d'échange de ressources nécessaires

Sahara, chaleur: le sens du big data, utilisé pour l'arrangement et le traitement des données, et une gestion affinée

ironique (bare metal, bare metal): fournit un système d'exploitation utilisable pour gérer les ressources matérielles de base

Trove: Gérez la base de données, stockez les données et les informations de l'instance, ainsi que les données, informations et journaux de chaque composant

3. Composants de base

Servir l'instance (machine virtuelle)

Neutron: services réseau

Coup d'oeil: service de mise en miroir

Swift: service de stockage d'objets

Cinder: service de stockage de blocs

Nova: collectez des ressources, fournissez-les aux machines virtuelles et laissez Nova prendre en charge la création de machines virtuelles

Architecture logique OpenStack

Insérez la description de l'image ici

  • (Dimension globale) OpenStack comprend plusieurs composants indépendants appelés services OpenStack. Tous les services peuvent être authentifiés via un service d'identité public. À l'exception des commandes qui nécessitent des autorisations administratives, chaque service peut interagir via des API publiques. (Ou méthode http. Par exemple, Apache supporte l'API dans l'installation en un clic d'OpenStack. Apache fournit un moyen d'afficher des pages Web et indique que la communication se fait via HTTP)

La fonction d'installation est divisée en différents services, et les services sont indépendants les uns des autres et se connectent uniquement les uns aux autres via l'API.

Les services à l'intérieur du composant ont une identité. Chaque composant de base aura un utilisateur correspondant pour la gestion

Chaque composant de service est connecté via l'API

  • (Dimension du composant principal) Chaque service OpenStack est composé de plusieurs composants. Contient plusieurs processus. Tous les services ont au moins un processus API, qui est utilisé pour écouter les requêtes API, prétraiter ces requêtes et les transmettre à d'autres composants du service. À l'exception des services d'authentification, le travail réel est effectué par un processus spécifique

La méthode de connexion entre les services est l'API, qui est HTTP pour la communication. Rabbitmq peut être utilisé pour la communication, ou il peut être communiqué directement via le réseau.

demande reposante:

L'externe veut demander le type de demande interne. C'est une norme. Par exemple: entre les utilisateurs et les entreprises, les utilisateurs qui souhaitent accéder aux pages de l'entreprise doivent utiliser le réseau, et la communication au sein du réseau nécessite des règles standardisées

Restful est un moyen de standardiser la
demande (format), de filtrer (filtrer), de vérifier la légalité, puis de renvoyer le résultat de la demande, comme forbi iden

API (prétraitement)
1. Appliquer à Keystone pour la légalité et l'autorité de la demande d'authentification
2. Envoyer des tâches Selon les exigences fonctionnelles de la demande, différentes tâches seront confiées à différents composants pour être complétées. Collectez les résultats et les ressources nécessaires de manière unifiée, intégrez-les ensemble et demandez en conséquence

  • En ce qui concerne la communication entre les processus d'un service, le courtier de messages AMQP est utilisé. L'état du service est stocké dans la base de données

Communication entre modules de sous-fonction au sein d'un même service ------> AMQP

Ce que montre cette image:

1. Tout d'abord, les composants de base internes, les composants auxiliaires et les composants globaux sont affichés

2. Comment les principaux composants auxiliaires sont-ils connectés?

Grâce à l'API, la méthode de communication peut être un agent de message

3. Une partie des modules fonctionnels de base de chaque composant est présentée

4. Afficher l'architecture native d'OpenStack (basique)

Modules fonctionnels tiers:

1. Les composants qui peuvent servir l'architecture native peuvent fonctionner de manière plus complète et plus raisonnable

2. Ajouter une fonction (architecture native ou imparfaite ---- scénario spécifique)

Relation de communication des composants OpenStack

OpenStack peut être divisé en différentes méthodes de communication en fonction de la fonction

  • Communication basée sur le protocole AMQP

    Utilisé pour la communication entre les différents composants de chaque projet.

  • Communication basée sur SQL

    Utilisé pour la communication au sein de chaque projet.

  • Communication basée sur le protocole HTTP

    Les relations de communication établies via les API de divers projets, les API sont toutes des API Web RESTful.

    L'API dans OpenStack est le même concept de base

    reposant: est une norme d'interaction / communication

    web: Apache supporte l'API et Apache fournit une page d'affichage Web

    API: composants et technologie d'ancrage des composants (point à point)

    URL—> Ancrage—> URL

    Endpoint -> --- endpoint (endpoint)

  • Communication via l'API native

    Communication entre les composants OpenStack et les logiciels et matériels tiers.

    Méthode de communication entre OpenStack et les composants sortants

Architecture physique OpenStack

Insérez la description de l'image ici

Il existe 4 types dans l'architecture physique, qui sont divisés en fonction de leurs fonctions: les nœuds de contrôle (pour contrôler le monde entier), les nœuds de réseau (fournir les composants internes d'OpenStack / la communication des nœuds), les nœuds de calcul (création de fonction), les nœuds de stockage (stockage prestations de service)

Le nœud de contrôle est utilisé pour répartir les tâches et gérer principalement d'autres nœuds. Le nœud de contrôle peut exécuter des ressources d'instance (pour gérer des tâches spécifiques)

Les services pris en charge incluent: MySQL, Rabbitmq

Les services de base comprennent: Keystone, Glance, Nova, Neutron (services de réseau de gestion centralisée), Horizon

Les services étendus incluent (fournir des services pour un meilleur fonctionnement de l'instance): Cinder, Swift, Trove, Heat, Ceilometer

Les types de réseau comprennent: le réseau de gestion. D'autres nœuds peuvent être gérés en divisant les fonctions par carte réseau

Les services de base dans le nœud de réseau comprennent: Neutron (réaliser des services de réseau)

Les types d'interface réseau incluent: réseau de gestion (réception de la planification des tâches du nœud de contrôle), réseau de données (service de base de données), réseau externe (plug-in tiers externe)

Les services de base dans le nœud informatique comprennent: Nova Hypervisor, agent de plug-in réseau (OpenStack utilise des plug-ins et des agents pour réaliser les fonctions spécifiques des deuxième et troisième couches du réseau)

Les services étendus incluent: Ceilometer Agent

Les types d'interface réseau incluent: réseau de gestion, réseau de données

Les services de base dans les nœuds de stockage incluent: Cinder, Swift

Les types d'interface réseau incluent: réseau de gestion, réseau de données

Nœud de réseau

[Échec du transfert de l'image du lien externe. Le site source dispose peut-être d'un mécanisme anti-hotlinking. Il est recommandé d'enregistrer l'image et de la télécharger directement (img-uXFvRFBw-1613694421958) (C: \ Users \ 朱俊杰 \ AppData \ Roaming \ Typora \ typora-user-images \ image-20210126215650380.png)] Réseaux de fournisseurs:

Gestion de
réseau Plug-in ML2
Outil de réseau
Linux Agent de pont Linux Agent
DHCP Agent de
métadonnées (agent de métadonnées)

Réseaux en libre-service

Gestion de
réseau Plug-in ML2
Outil de réseau
Linux Agent de pont Linux Agent à
trois couches (Agent L3) Réseau d'
agents DHCP
(réseaux fournisseurs):

Gestion de
réseau Plug-in ML2
Outil de réseau
Linux Agent de pont Linux Agent
DHCP Agent de
métadonnées (agent de métadonnées)

Réseaux en libre-service

Gestion de
réseau Plug-in ML2
Outil de réseau
Linux Agent de pont Linux Agent à
trois couches (Agent L3) Agent
DHCP Agent de
métadonnées (Agent de métadonnées)

Je suppose que tu aimes

Origine blog.csdn.net/weixin_50345054/article/details/113856675
conseillé
Classement