Серия «Игра с корпоративной платформой облачных вычислений» (1): базовое введение в OpenStack
Серия «Игра с корпоративной платформой облачных вычислений» (1): базовое введение в OpenStack

Всем привет, я гастарбайтер!

Введение в облачные вычисления

концепция

Узкое чувство понимания,Облачные вычисления, распределенные вычисления и централизованные,Сложную вычислительную задачу можно разложить и распределить на несколько устройств в «облаке». в настоящий момент,в широком смысле,Облачные вычисления — новая концепция,Вместо совершенно новой технологии. Так называемые «облачные вычисления»,Просто абстрагируйте вычислительные ресурсы, ресурсы хранения, сетевые ресурсы и т. д. в «облако».,И может обеспечить Служить внешнему миру. Причина, по которой облачные вычисления не являются совершенно новой технологией,Просто потому, что эта «облачная» реализация не использует новые технологии,И да интегрировал предыдущую технологию,Наконец-то выход из сети Интернет Служить.

Классификация облачных вычислений

В соответствии с различными услугами, предоставляемыми облачными вычислениями, облачные вычисления можно разделить на следующие три категории:

IaaS

Так называемые IaaS, Инфраструктура как услуга, инфраструктура как услуга, поставщики облачных вычислений предоставляют пользователям виртуализированные ресурсы, такие как вычислительные ресурсы, ресурсы хранения, сетевые ресурсы и т. д. Пользователи также могут использовать эти виртуализированные ресурсы. В эту категорию попадают услуги виртуальных машин таких поставщиков облачных услуг, как Alibaba Cloud, Tencent Cloud и Amazon Cloud.

PaaS

Так называемая PaaS, Платформа как услуга, представляет собой платформу, которую поставщики облачных вычислений предоставляют пользователям, например, среду разработки и компиляции. PaaS в основном предназначена для разработчиков. На базе крупных поставщиков облачных услуг некоторые поставщики услуг помогут нам установить ряд сред на основе предоставления виртуальных машин. В этом случае это вряд ли можно рассматривать как PaaS.

SaaS

Так называемый SaaS, то есть Программное обеспечение как услуга, программное обеспечение как услуга, поставщики облачных вычислений предоставляют пользователям прикладное программное обеспечение или прикладные услуги. К такому типу можно отнести наш обычный сетевой диск Baidu.

Различия между тремя вышеуказанными методами предоставления услуг облачных вычислений показаны на рисунке ниже:

На приведенном выше рисунке черная часть — это оборудование или приложения, которые необходимо развернуть у поставщика облачных услуг, а красная часть — это оборудование или приложения, которые должны быть развернуты предприятием или частным лицом, приобретающим облачную службу.

Характеристики облачных вычислений

Облачные вычисления имеют следующие характеристики:

Динамически масштабируемый

Облачные вычисления используют технологию виртуализации, чтобы разорвать связь между базовой архитектурой приложений и службами верхнего уровня, тем самым поддерживая динамическое расширение кластера.

Развертывание по требованию

С помощью технологии виртуализации облачные вычисления могут предоставлять пользователям различные услуги в соответствии с потребностями пользователей и обеспечивать различные уровни вычислений, хранения, сетевых и других ресурсов.

Высокая гибкость

Кластеры облачных вычислений обычно имеют хорошую совместимость и могут поддерживать большинство аппаратных средств и операционных систем.

Высокая надежность

Поскольку предоставление услуг облачных вычислений опирается на кластеры серверов, можно избежать единых точек отказа серверов. В случае сбоя сервера приложения на этом сервере могут быть перенесены на другие серверы под управлением платформы управления, что не повлияет на нормальное предоставление услуг.

Высокая стоимость исполнения

Облачные вычисления позволяют единообразно управлять, равномерно распределять и поставлять ресурсы, такие как вычислительные ресурсы, хранилища и сетевые ресурсы, по требованию. Пользователям нужно только приобретать соответствующие услуги вместо дорогостоящих больших серверов.

Введение в Openstack

OpenStack реализован серией веб-сервисов с интерфейсами RESTful и представляет собой набор сервисов-компонентов. Openstack — это проект управления облачной платформой. Мы можем использовать Openstack для создания архитектуры частного облака и предоставления облачных услуг IaaS. Openstack состоит из трех основных элементов: вычислений, сети и хранилища. Его основная цель — упростить настройку и управление ресурсами, абстрагировать вычислительные, сетевые ресурсы и ресурсы хранения в виртуальные пулы ресурсов и предоставлять внешние услуги по мере необходимости.

Официальный адрес веб-сайта Openstack: https://www.openstack.org/, а его домашняя страница выглядит следующим образом:

Архитектура Openstack

Как показано ниже, дляOpenStack и зконцепция архитектуры,Мы видим изда стандартного портфолио проектов OpenStack в архитектуре. Это относительно типичная архитектура,Но это не значит, что это единственная архитектура даOpenStackиз.,Мы можем выбрать нужные нам компоненты проектов,Создать платформу облачных вычислений, которая подойдет именно вам.,Основные принципы проектирования заключаются в следующем:

  • Разделите разные проекты и разделите подсистемы в соответствии с разными функциями и универсальностью.
  • Связь между подсистемами согласно логическим планам и спецификациям.
  • Проектируйте всю архитектуру системы по уровням
  • Обеспечить единый API-интерфейс между различными функциональными подсистемами.

После прохождения аутентификации и авторизации службой Keystone пользователи облачной платформы могут использовать Horizon или Reset для Создание службы виртуальной машины в режиме API. Процесс создания включает использование службы Nova для создания экземпляра виртуальной машины. Экземпляр виртуальной машины использует Glance для предоставления услуг зеркалирования, а затем использует Neutron для назначения IP-адреса вновь созданной виртуальной машине. и включить его в виртуальную сеть. Том, созданный Cinder, используется для монтирования блоков хранения для виртуальной машины. Весь процесс контролируется ресурсами модуля Ceilometer. Том, созданный Cinder, и изображение (изображение), предоставленное Glance. сохраняется через механизм хранения объектов Swift.

Логическая схема архитектуры выглядит следующим образом:

Хотя приведенное выше изображение выглядит очень сложным, если посмотреть на него послойно, вам будет легче понять его. OpenStack включает в себя несколько независимых компонентов сервисов, таких как основные компоненты и некоторые дополнительные компоненты, которые мы упоминали ранее, например. nova, keystone, Horizon и т. д., мы сначала находим эти компоненты, а затем анализируем следующий слой.

Каждый компонент имеет свои собственные службы. Все службы должны пройти проверку подлинности с помощью keystone. Каждая служба может быть связана с несколькими компонентами. Каждая служба имеет как минимум один процесс API, который слушает запросы API и отвечает на них. Эти запросы предварительно обрабатываются и отправляются. к другим компонентам службы, которые могут взаимодействовать друг с другом через общедоступный API.

Для связи между службами используется брокер сообщений AMQP, который хранит информацию о состоянии службы в базе данных. Подробнее об услугах облачных вычислений Openstack рядиз Учебные статьи,Видеть:Корпоративная платформа облачных вычислений Openstack, эта серия постоянно обновляется.

Физическая архитектура OpenStack

Весь OpenStack состоит из четырех частей: узла управления, вычислительного узла, сетевого узла и узла хранения.

  • узел управления отвечает за управление остальными узлами из,Содержит создание виртуальной машины,мигрировать,сетевое распространение,распределение памяти и т. д.
  • Вычислительный узел Ответственный за виртуальные машиныбегать
  • сетевой узел отвечает за связь между внешней сетью и внутренней сетью.
  • узел хранилище отвечает за управление дополнительным хранилищем для виртуальных машин и т. д.
узел управления

узел управления Включает поддержку Служить、База Служить、Расширять Служитьки Управление сетью。

  • 1)Потому что дляузел управления управляет всей работой OpenStack, а все глобальные компоненты, такие как аутентификация Keystone и панель управления Harizon, необходимы для управления и контроля OpenStack.
  • 2) Виртуальная машина для предоставляет некоторые соответствующие ресурсы.,Например, образ GUI Служитьдля виртуальной машины предоставляет файлы образа диска, а сетевая сеть Служить управляет сетевыми ресурсами.,Предоставление/набор интерфейсов прикладного программирования (API),Пользователи могут обращаться к ним, чтобы определить сети для управления всем жизненным циклом виртуальных машин.
  • 3) Хранение данных и поддержка связи,Мы используем издаMysql и RabbitMQ.,Позже нам нужно будет управлять данными и использовать Cinder и Swift для итро Служить.,И обеспечить мониторинг физических ресурсов и виртуальных ресурсов.,и запишите эти данные,Проанализируйте эти данные,Запуск соответствующих действий при определенных условиях из измерения облакомера Служить,Он также должен основываться на шаблонах для инициализации ресурсов в облачной среде.,Обработка зависимостей,Основные операции, такие как развертывание.,也可к解决自动收缩,Расширенные функции, такие как балансировка нагрузки из тепла Служить.
  • 4) Управление связью между сегментами частной сети и сегментами общедоступной сети.,Для управления связью/топологией между сетями виртуальных машин.,Поэтому сетевой интерфейс необходим для подключения снаружи.
сетевой узел

Есть только одна База Служить,Нейтронная сеть Служить. Отвечает за всю архитектуру OpenStack и сетевые коммуникации. Весь сетевой интерфейс можно разделить на сеть управления, сеть передачи данных и внешнюю сеть. Сеть управления отвечает за подключение других узлов к сети.,позволятьузел управления может контролировать другие узлы и сеть. сеть передачи данных Ответственный за всю архитектуруизпередача данных。Внешняя сеть отвечает за архитектуру и внешнюю физическую сеть.из Подключайте связь。

Вычислительный узел

Вычислительный узелвключать База Служить、Расширять Служить、Сетевой интерфейс. База СлужитьиметьNova Hypervisor и сетевые подключаемые прокси. Расширенное обслуживание облакомера agent Услуги замерного агентства. Сетевые интерфейсы — это сеть управления и сеть передачи данных.

узел хранения

узел хранениявключатьcinderиswiftдва Базаизхранилище Служитьисетевой интерфейс。сетевой интерфейсдля Управление сетьюисеть передачи данных。

Сервис Openstack

OpenStack Архитектура состоит из большого количества проектов с открытым исходным кодом. который содержит 8 стабильных и надежных основных сервисов используются для одновременного управления вычислениями, сетью, хранилищем, идентификацией и зеркалированием, а также предоставляют пользователям более десяти дополнительных сервисов с различными уровнями зрелости разработки; OpenStack из 8 Одно ядро ​​Служить в основном отвечает за архитектуру системы из База, в то время как другие проекты отвечают за управление панелями управления, оркестровку, развертывание «голого железа», передачу информации, контейнерное и общее управление и другие операции. Подробнее об услугах облачных вычислений Openstack рядиз Учебные статьи,Видеть:Корпоративная платформа облачных вычислений Openstack, эта серия постоянно обновляется.

Основные компоненты OpenStack
Compute (вычислительный сервис) Нова

Nova управляет всем жизненным циклом виртуальной машины: создание、бегать、вешать、Планирование、закрытие、Уничтожить и т. д. Это действительно часть исполнения. принимать DashBoard Отправляйте команды и выполняйте определенные действия. Но да Nova Это не программное обеспечение виртуальной машины, поэтому вам также понадобится программное обеспечение виртуальной машины (например, KVM、Xen、Hyper-v и т. д.) сотрудничать.

Сеть Нейтрон

Neutron Управляйте сетевыми ресурсами и предоставляйте набор интерфейсов прикладного программирования (API), которые пользователи могут вызывать для определения сетей (например, VLAN ) и присоедините определенную сеть к арендатору. сеть да Подключаемая структура, поддерживающая современное основное сетевое оборудование и новейшую технологию Network Chrome.

Объектное хранилище Swift

Swift да NoSQL База данных, аналогичная HBase, виртуальная машина, обеспечивает неструктурированное хранилище данных. Она хранит одни и те же данные на нескольких компьютерах, чтобы гарантировать, что данные не будут потеряны. Пользователи могут RESTful и HTTP Тип из API Приходите и общайтесь с ним. Здесь фактически хранятся элементы, похожие на Цеф, но в OpcnStack После внедрения люди с большей готовностью принимают Ceph。

Зола для хранения блоков

Cinder Управление блочными устройствами для управления виртуальными машинами SAN Источник устройства. Но сам по себе не блокирует источники устройств, Серверная часть хранилища необходима для предоставления фактического источника блочных устройств (например, iSCSI, FC и т. д.). Зола Это эквивалентно экономке. Когда виртуальной машине требуется блочное устройство, она спрашивает экономку, где взять конкретное блочное устройство. Это также вставной тип, установленный в бетоне. SAN в устройстве.

Identity (служба аутентификации личности) Keystone

Keystone дляOther Служить обеспечивает аутентификацию личности, управление разрешениями, управление токенами и управление списком Служить. Чтобы использовать облачные вычисления, все пользователи должны быть в Keystone Создайте учетную запись и пароль, а также определите разрешения (примечание: «пользователь» здесь не относится к системной учетной записи на виртуальной машине, например Windows 7 中из Administrator ). Кроме того, OpenStack услуги (например, Nova、Neutron、Swift、Cinder и т.д.) там тоже нужно зарегистрироваться, и прописаться подробно. API,Keystone Вам также необходимо зарегистрироваться API。

Служба изображений

Glance Доступ к файлам образа диска виртуальной машины, вычисления Служить необходимо получить файл образа отсюда при запуске виртуальной машины. Этот компонент отличается от приведенного выше. Swift и Cinder, оба предлагают из Память да используется в виртуальной машине.

Панель мониторинга (служба панели управления) Horizon

Horizon Предоставляет веб-интерфейс. После входа в систему пользователи могут выполнять следующие операции: управлять виртуальными машинами, настраивать разрешения и назначать. IP Адрес, создание арендатора и пользователя и т. д. По существу да через графическое из Рабочий интерфейс управляет другими услугами. (например, Compute、Networking ждать). конечно,Если вы знакомы с командой,Вы также можете использовать команды непосредственно для выполнения соответствующих задач.

Телеметрический облакомер

Ceilometer объединить Aodh、CloudKitty Два компонента для выполнения задач по выставлению счетов, таких как расчет и потребление. Статистика ресурсов, мониторинг производительности и т.д. OpenStack Причина, по которой вы можете управлять публичным облаком, заключается в том, что для Ceilometer из существует, потому что арендатора привлекла изконцепция.

Подробнее об услугах облачных вычислений Openstack рядиз Учебные статьи,Видеть:Корпоративная платформа облачных вычислений Openstack, эта серия постоянно обновляется.

Дополнительные компоненты и другие компоненты
Heat

Что делать, если вы хотите установить и настроить одно и то же программное обеспечение на тысячах виртуальных машин? использовать Orchestrates Хорошая идея — ввести человека по имени heat-cfntools Используя клиентские инструменты, вы сможете одновременно управлять множеством виртуальных машин.

Sahana

предоставить пользователям возможность OpenStack Создание и управление на платформе в один клик (с использованием виртуальных машин) Hadoop Кластер, реализация аналогичного AWS из EMR(Amazon Elastic MapReduce Сервисная) функция. Пользователям необходимо предоставить только простые параметры конфигурации и шаблоны, такие как информация о версии (CDH). версия), топология кластера (несколько Раб, несколько Datanode), информация о конфигурации узла (ЦП, память) и т. д., Сахара Служить сможет быстро следовать предоставленным шаблонам всего за несколько минут. развертывать Hadoop、Spark и Storm кластер. Сахана да Проект по анализу больших данных.

Ironic

Добавьте в пул ресурсов машины с «голым железом» (в отличие от виртуальных машин).

Zaqar

Zaqar для Web Разработчикам мобильных устройств предоставляется мультитенантный облачный обмен сообщениями и уведомлениями. REST API В своих облачных приложениях разные компоненты используют разные режимы связи (например, производитель/потребитель или издатель/подписчик) для доставки сообщений.

Barbican

да OpenStack из Компонент управления ключами, другие компоненты могут вызывать Barbican подвергается воздействию внешнего мира REST API для хранения и доступа к ключам.

Manila

Виртуальная машина обеспечивает общий доступ к файлам, но требует участия серверной части хранилища.

Среди них вычислительная техника Service Nova да Ядро OpenStack отвечает за поддержание и управление облачной средой и вычислительными ресурсами. Neutron в основном управляет сетевыми соединениями. Cinder в основном управляет хранилищем. Эти три части являются наиболее важными частями OpenStack.

Сетевой режим OpenStack

  • Локальный режим: используется для общего тестирования, требуется только одна физическая машина.
  • Режим GRE: туннельный режим, отсутствие ограничений на количество VLAN, проблемы с производительностью.
  • Режим VLAN (Virtual LAN): Верхний предел количества vlan составляет 4096.
  • Режим VXLAN (виртуальная расширенная локальная сеть): количество виртуальных локальных сетей не ограничено, а производительность выше, чем у GRE.
  • Плоский режим: администратор создает арендатора и подключается напрямую к внешней сети, NAT не требуется.

Взаимоотношения компонентов OpenStack

  • Общайтесь на основе протокола HTTP: устанавливайте отношения связи через API каждого проекта, и все API являются RESTful. Web API
  • На основе SQL-коммуникаций: используется для внутренней коммуникации каждого проекта.
  • Связь на основе протокола AMQP: используется для связи между различными компонентами в каждом проекте.
  • авторNative API реализует связь: связь между компонентами Openstack и сторонним программным и аппаратным обеспечением.

Преимущества OpenStack

Слабосвязанные модули: по сравнению с другим программным обеспечением с открытым исходным кодом,Модули OpenStack понятны. Добавлять независимые функциональные компоненты очень просто. иногда,Нет необходимости читать весь код OpenStack.,Вам нужно только понять спецификацию интерфейса и использование API.,Вы можете легко добавить новый модуль

Конфигурация компонентов более гибкая: OpenStack также требует разных компонентов. Но установка компонентов даOpenStackиз чрезвычайно гибкая. Все может быть установлено на одной физической машине.,Его также можно распространить на несколько физических машин.,Вы даже можете установить все узлы на виртуальную машину.

Вторичная разработка — это легко: OpenStack выпущен изOpenStack APIдаRest-full API。其他所иметь组件也да采种этот种统一изспецификация。поэтому,Вторичная разработка на базе OpenStack,Проще, чем для. Остальные три программного обеспечения с открытым исходным кодом возникли из-за слишком сильной связи.,Это усложняет добавление функций.

Совместимость: OpenStack совместим с другими общедоступными облаками, что позволяет пользователям легко переносить данные.

Масштабируемость: модульная конструкция, вы можете добавлять узлы и ресурсы посредством горизонтального расширения.

Справочная статья: https://blog.csdn.net/weixin_40228200/ article/details/124716975 https://blog.csdn.net /weixin_40228200/article/details/124718026 https://blog.csdn.net/KY06_Xxy/article/details /110959473

boy illustration
Неразрушающее увеличение изображений одним щелчком мыши, чтобы сделать их более четкими артефактами искусственного интеллекта, включая руководства по установке и использованию.
boy illustration
Копикодер: этот инструмент отлично работает с Cursor, Bolt и V0! Предоставьте более качественные подсказки для разработки интерфейса (создание навигационного веб-сайта с использованием искусственного интеллекта).
boy illustration
Новый бесплатный RooCline превосходит Cline v3.1? ! Быстрее, умнее и лучше вилка Cline! (Независимое программирование AI, порог 0)
boy illustration
Разработав более 10 проектов с помощью Cursor, я собрал 10 примеров и 60 подсказок.
boy illustration
Я потратил 72 часа на изучение курсорных агентов, и вот неоспоримые факты, которыми я должен поделиться!
boy illustration
Идеальная интеграция Cursor и DeepSeek API
boy illustration
DeepSeek V3 снижает затраты на обучение больших моделей
boy illustration
Артефакт, увеличивающий количество очков: на основе улучшения характеристик препятствия малым целям Yolov8 (SEAM, MultiSEAM).
boy illustration
DeepSeek V3 раскручивался уже три дня. Сегодня я попробовал самопровозглашенную модель «ChatGPT».
boy illustration
Open Devin — инженер-программист искусственного интеллекта с открытым исходным кодом, который меньше программирует и больше создает.
boy illustration
Эксклюзивное оригинальное улучшение YOLOv8: собственная разработка SPPF | SPPF сочетается с воспринимаемой большой сверткой ядра UniRepLK, а свертка с большим ядром + без расширения улучшает восприимчивое поле
boy illustration
Популярное и подробное объяснение DeepSeek-V3: от его появления до преимуществ и сравнения с GPT-4o.
boy illustration
9 основных словесных инструкций по доработке академических работ с помощью ChatGPT, эффективных и практичных, которые стоит собрать
boy illustration
Вызовите deepseek в vscode для реализации программирования с помощью искусственного интеллекта.
boy illustration
Познакомьтесь с принципами сверточных нейронных сетей (CNN) в одной статье (суперподробно)
boy illustration
50,3 тыс. звезд! Immich: автономное решение для резервного копирования фотографий и видео, которое экономит деньги и избавляет от беспокойства.
boy illustration
Cloud Native|Практика: установка Dashbaord для K8s, графика неплохая
boy illustration
Краткий обзор статьи — использование синтетических данных при обучении больших моделей и оптимизации производительности
boy illustration
MiniPerplx: новая поисковая система искусственного интеллекта с открытым исходным кодом, спонсируемая xAI и Vercel.
boy illustration
Конструкция сервиса Synology Drive сочетает проникновение в интрасеть и синхронизацию папок заметок Obsidian в облаке.
boy illustration
Центр конфигурации————Накос
boy illustration
Начинаем с нуля при разработке в облаке Copilot: начать разработку с минимальным использованием кода стало проще
boy illustration
[Серия Docker] Docker создает мультиплатформенные образы: практика архитектуры Arm64
boy illustration
Обновление новых возможностей coze | Я использовал coze для создания апплета помощника по исправлению домашних заданий по математике
boy illustration
Советы по развертыванию Nginx: практическое создание статических веб-сайтов на облачных серверах
boy illustration
Feiniu fnos использует Docker для развертывания личного блокнота Notepad
boy illustration
Сверточная нейронная сеть VGG реализует классификацию изображений Cifar10 — практический опыт Pytorch
boy illustration
Начало работы с EdgeonePages — новым недорогим решением для хостинга веб-сайтов
boy illustration
[Зона легкого облачного игрового сервера] Управление игровыми архивами
boy illustration
Развертывание SpringCloud-проекта на базе Docker и Docker-Compose