Служба хранилища Azure

Завершено

Платформа службы хранилища Azure — это облачное хранилище Майкрософт, позволяющее реализовать современные сценарии хранения данных. Служба хранилища Azure предлагает высокодоступное, масштабируемое, устойчивое и безопасное хранилище для различных объектов данных в облаке. Доступ к объектам данным в службе хранилища Azure можно получить из любой точки мира по протоколу HTTP или HTTPS либо через REST API. Служба хранилища Azure также предлагает клиентские библиотеки для разработчиков, создающих приложения или службы с помощью .NET, Java, Python, JavaScript, C++ и Go. Разработчики и ИТ-специалисты могут с помощью Azure PowerShell и Azure CLI создавать скрипты для задач управления данными или настройки. Портал Azure и Обозреватель службы хранилища Azure предоставляют средства пользовательского интерфейса для взаимодействия со службой хранилища Azure.

Преимущества службы хранилища Azure

Для разработчиков приложений и ИТ-специалистов службы хранилища Azure предлагают следующие преимущества:

  • Надежность и высокая доступность. Избыточность гарантирует безопасность данных при временных сбоях оборудования. Вы также можете реплицировать данные в центрах обработки данных или географических регионах для дополнительной защиты от локальной катастрофы или стихийных бедствий. Данные, реплицированные таким образом, остаются высокодоступными в случае неожиданного сбоя.
  • Безопасный. Все данные, записанные в учетную запись хранения Azure, шифруются. Служба хранилища Azure обеспечивает подробный контроль над доступом к данным.
  • Масштабируемость. Служба хранилища Azure разработана с высокой степенью масштабируемости в соответствии с требованиями к производительности и хранению данных современных приложений.
  • Управляемый. Azure отвечает за обслуживание оборудования, обновления и решает критические проблемы, не требуя вашего участия.
  • Доступность. Доступ к данным в службе хранилища Azure можно получить из любой точки мира по протоколу HTTP или HTTPS. Корпорация Майкрософт предоставляет клиентские библиотеки для службы хранилища Azure на различных языках, включая .NET, Java, Node.js, Python, Go и другие, а также зрелый REST API. Служба хранилища Azure поддерживает скрипты в Azure PowerShell или Azure CLI. Портал Azure и Обозреватель службы хранилища Azure предлагают простые визуальные решения для работы с данными.

Службы данных хранилища Azure

Платформа службы хранилища Azure включает следующие службы данных:

  • Azure Blobs: массово масштабируемое объектное хранилище для текстовых и двоичных данных. Кроме того, реализована поддержка больших данных с использованием Data Lake Storage 2-го поколения.
  • Файлы Azure: управляемые общие папки для облачных или локальных развертываний.
  • Azure Elastic SAN: полностью интегрированное решение, упрощающее развертывание, масштабирование, управление и настройку SAN в Azure.
  • Очереди Azure: хранилище сообщений для надежного обмена сообщениями между компонентами приложения.
  • Таблицы Azure: хранилище NoSQL для хранилища структурированных данных без схемы.
  • Управляемые диски Azure: блочные тома хранилища для виртуальных машин Azure.
  • Хранилище контейнеров Azure: служба управления томами, развертывания и оркестрации, нативно созданная для контейнеров.

Доступ к каждой службе осуществляется через учетную запись хранения с уникальным адресом. Сведения о начале работы см. в статье "Создание учетной записи хранения".

Кроме того, Azure предоставляет следующее специализированное хранилище:

  • Azure NetApp Files: хранилище корпоративных файлов, на базе NetApp. Хранилище файлов упрощает для предприятий в области делового администрирования и специалистов по хранению данных миграцию и запуск сложных файловых приложений без изменения кода. Azure NetApp Files управляется учетными записями NetApp и может быть доступен через NFS, SMB и тома с двойным протоколом.

Примеры сценариев для служб хранилища Azure

В следующей таблице сравниваются службы хранилища Azure и показаны примеры сценариев для каждой.

Функция Описание Когда использовать
Файлы Azure Предоставляет полностью управляемые облачные общие папки, которые можно использовать из любого места через стандартный протокол Server Message Block (SMB), протокол сетевой файловой системы (NFS) и REST API Azure Files. Можно подключить файловые ресурсы Azure из облачных или локальных развертываний Windows, Linux и macOS. Необходимо перенести в облако приложения, которые используют собственные API файловой системы для обмена данными с другими приложениями, работающими в Azure. Необходимо заменить или дополнить локальные файловые серверы или устройства NAS. Вы хотите сохранить инструменты разработки и отладки, к которым нужен доступ со множества виртуальных машин.
Файлы Azure NetApp Предоставляет полностью управляемую, высокодоступную службу NAS корпоративного уровня, которая может обрабатывать самые требовательные, высокопроизводительные, низкой задержки рабочие нагрузки, требующие расширенных возможностей управления данными. У вас есть сложно переносимые рабочие нагрузки, такие как Linux- и Windows-приложения, совместимые с интерфейсом переносимой операционной системы (POSIX), SAP HANA, базы данных, инфраструктура и приложения для высокопроизводительных вычислений (HPC), и корпоративные веб-приложения. Требуется поддержка нескольких протоколов хранения файлов в едином сервисе, таких как NFSv3, NFSv4.1 и SMB3.1.x, что обеспечивает широкий спектр сценариев переноса приложений без изменения кода.
Azure Блобы Позволяет хранить неструктурированные данные в высокомасштабируемых блочных BLOB-объектах. Также поддерживает azure Data Lake Storage 2-го поколения для корпоративных решений аналитики больших данных. Вам нужно, чтобы приложение поддерживало потоковую передачу и произвольный доступ. Вам нужен доступ к приложению откуда угодно. Вам нужно создать корпоративное хранилище Data Lake на платформе Azure и выполнять анализ больших данных.
Azure Elastic SAN Azure Elastic SAN — это полностью интегрированное решение, которое упрощает развертывание, масштабирование, управление и настройку СЕТИ. Служба предлагает встроенные облачные возможности, такие как высокий уровень доступности. Требуется крупномасштабное хранилище, которое взаимодействует с несколькими типами вычислительных ресурсов (например, SQL, MariaDB, виртуальных машин Azure и служб Azure Kubernetes), доступ к которым осуществляется через протокол iSCSI.
Диски Azure Обеспечивает постоянное хранение данных на подключенном виртуальном жестком диске и доступ к этим данным. Вы хотите «поднять и перенести» приложения, использующие собственные API файловой системы для чтения и записи данных на постоянные диски. Вы хотите хранить данные, к которым не требуется обращаться за пределами виртуальной машины, к которой подключен диск.
Хранилище контейнеров Azure Хранилище контейнеров Azure — это служба управления томами, развертывания и оркестрации, которая интегрируется с Kubernetes и создается нативно для контейнеров. Вы хотите динамически и автоматически создавать постоянные тома для хранения данных для приложений с отслеживанием состояния, работающих в кластерах Kubernetes.
Очереди Azure Поддерживает асинхронную очередь сообщений между компонентами приложения. Необходимо отделить компоненты приложения и использовать асинхронный обмен сообщениями для обмена данными между ними.
Таблицы Azure Позволяет хранить данные NoSQL в облаке, предоставляя хранилище ключей и атрибутов без фиксированной схемы. Эту службу можно использовать для хранения гибких наборов данных, например пользовательских данных для веб-приложений, адресных книг, сведений об устройствах или метаданных любого другого типа, которые требуются вашей службе.

Хранилище блобов

Хранилище BLOB-объектов Azure — это решение корпорации Майкрософт для хранения объектов в облаке. Хранилище BLOB-объектов оптимизировано для хранения больших объемов неструктурированных данных, таких как текстовые или двоичные данные.

Хранилище объектов BLOB идеально подходит для следующих целей:

  • Передача изображений или документов напрямую в браузер.
  • Хранение файлов для распределенного доступа.
  • Потоковая передача видео и звука.
  • Хранение данных для резервного копирования и восстановления, аварийного восстановления и архивации.
  • Хранение данных для анализа локальной службой или службой, размещенной в Azure.

Доступ к объектам в хранилище BLOB-объектов можно получить из любой точки мира через HTTP или HTTPS. Пользователи или клиентские приложения могут использовать для доступа к большим двоичным объектам URL-адреса, REST API службы хранилища Azure, Azure PowerShell, Azure CLI или клиентскую библиотеку службы хранилища Azure. Клиентские библиотеки хранилища доступны для нескольких языков, включая .NET, Java, Node.jsи Python.

Клиенты также могут безопасно подключаться к хранилищу BLOB-объектов с помощью протокола SSH-передачи файлов (SFTP) и подключать контейнеры хранилища BLOB-объектов с помощью протокола NFS 3.0.

Файлы Azure

Файлы Azure позволяют настраивать сетевые файловые ресурсы с высоким уровнем доступности, к которым можно получить доступ с помощью стандартного протокола SMB, протокола NFS и REST API файлов Azure. Это означает, что несколько виртуальных машин могут совместно использовать одинаковые файлы с доступом для чтения и записи. Вы также можете считывать файлы с помощью интерфейса REST или клиентских библиотек хранилища.

Единственное, что отличает файлы Azure от файлов в корпоративной общей папке, заключается в том, что вы можете получить доступ к файлам из любой точки мира. Доступ к файлам с помощью URL-адреса, который указывает на файл и включает маркер подписанного URL-адреса (SAS). Вы можете создавать токены SAS, которые разрешают доступ к частному ресурсу в течение определенного времени.

Общие папки можно использовать для множества распространенных сценариев:

  • Многие локальные приложения используют общие папки. Эта функция упрощает перенос в Azure приложений, которые совместно используют данные. Если вы подключите общую папку к той же букве диска, которую использует локальное приложение, та часть приложения, которая обращается к этой общей папке, сможет работать с минимальными изменениями или без них.
  • Файлы конфигурации можно хранить в общей папке, а доступ к ним возможен с нескольких виртуальных машин. Инструменты и служебные программы, используемые несколькими разработчиками в группе, могут храниться в общей папке — тогда все пользователи смогут найти их и использовать одинаковую версию.
  • Журналы ресурсов, метрики и аварийные дампы — это лишь три примера данных, которые можно записать в общую папку для обработки или анализа в будущем.

Сеть эластичных хранилищ Azure

Сеть зоны хранения Эластичных баз данных Azure (SAN) решает проблему оптимизации рабочей нагрузки и интеграции между крупными базами данных и критически важными для производительности приложениями. Elastic SAN — это полностью интегрированное решение, которое упрощает развертывание, масштабирование, управление и настройку san, предлагая высокий уровень доступности.

Эластичная сеть SAN предназначена для крупномасштабных рабочих нагрузок ввода и выходных данных и баз данных верхнего уровня, таких как SQL и MariaDB, и поддерживает размещение рабочих нагрузок на виртуальных машинах или контейнерах, таких как Служба Azure Kubernetes. Эластичные тома SAN совместимы с широким спектром вычислительных ресурсов благодаря протоколу iSCSI. Другие преимущества Elastic SAN включают упрощенный интерфейс развертывания и управления, что позволяет управлять хранилищем для нескольких вычислительных ресурсов из одного интерфейса и оптимизации затрат путем эффективного использования ресурсов.

Хранилище контейнеров Azure

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

Хранилище контейнеров Azure обеспечивает значительные преимущества:

  • Быстрое масштабирование stateful podов
  • Улучшена производительность рабочих нагрузок с сохранением состояния
  • Оркестрация томов, встроенная в Kubernetes

Хранилище очередей

Служба очередей Azure используется для хранения и получения сообщений. Объем сообщений в очереди может составлять до 64 КБ, а очередь может содержать миллионы сообщений. Очереди используются для хранения списков сообщений, которые обрабатываются асинхронно.

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

Хранилище таблиц

Теперь хранилище таблиц Azure входит в состав Azure Cosmos DB. Помимо существующей службы хранилища таблиц Azure есть новое предложение Azure Cosmos DB для таблиц, которое предоставляет оптимизированные для пропускной способности таблицы, глобальное распределение и автоматические вторичные индексы.

Хранилище дисков

Управляемый диск Azure — это виртуальный жесткий диск (VHD). Его можно представить как физический диск на локальном сервере, но виртуализирован. Управляемые диски Azure хранятся в виде страничных BLOB-объектов, которые являются объектами хранилища с произвольным доступом в Azure. Мы называем управляемый диск "управляемым", так как это абстракция по страничным BLOB-объектам, контейнерам BLOB и учетным записям хранения в Azure. При использовании управляемых дисков все, что вам нужно сделать, — создать диск, а Azure позаботится об остальных.

Файлы Azure NetApp

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

Безопасный доступ к учетным записям хранения

Каждый запрос к службе хранилища Azure должен быть авторизован. Служба хранилища Azure поддерживает следующие методы авторизации:

  • Интеграция Microsoft Entra для больших двоичных объектов, файлов, очередей и табличных данных. Служба хранилища Azure поддерживает проверку подлинности и авторизацию с помощью Microsoft Entra ID для служб Blob, файлов, таблиц и очередей через ролевое управление доступом Azure (RBAC). Авторизация запросов с помощью идентификатора Microsoft Entra рекомендуется для обеспечения повышенной безопасности и удобства использования по сравнению с другими методами авторизации.
  • Проверка подлинности на основе удостоверений по протоколу SMB для файлов Azure. Файлы Azure поддерживают авторизацию на основе удостоверений через блок сообщений сервера (SMB) через локальные доменные службы Active Directory (AD DS), доменные службы Microsoft Entra или Microsoft Entra Kerberos (для гибридных учетных записей пользователей).
  • Авторизация с помощью общего ключа. Для BLOB-объектов, файлов, очередей и таблиц в службах хранилища Azure поддерживается авторизация с помощью общего ключа. При авторизации с помощью общего ключа клиент передает заголовок с каждым запросом, подписанным с использованием ключа доступа к учетной записи хранения. Хотя она поддерживается, корпорация Майкрософт рекомендует перейти от авторизации общего ключа к более безопасным методам, когда это возможно.
  • Подписи общего доступа (SAS). Общая сигнатура доступа предоставляет защищенный делегированный доступ к ресурсам в вашей учетной записи хранилища. Маркер SAS добавляется к URI ресурса хранилища. Маркер безопасности инкапсулирует такие ограничения, как разрешения и интервал доступа.
  • Доменные службы Microsoft Entra с Azure NetApp Files. Такие функции Azure NetApp Files, как тома SMB, тома с двумя протоколами и тома NFSv4.1 Kerberos интегрируются с доменными службами Microsoft Entra для управления доступом на основе удостоверений.

Шифрование

Существует два основных типа шифрования, доступных для службы хранилища Azure: шифрование неактивных данных и шифрование на стороне клиента.

1. Шифрование неактивных данных

Шифрование службы хранилища Azure защищает данные и помогает соблюсти требования к обеспечению безопасности и соответствие нормативным требованиям. Служба хранилища Azure автоматически шифрует все данные, сохраняемые в учетной записи хранения, и расшифровывает его при извлечении. Шифрование, расшифровка и управление ключами полностью прозрачны для пользователей. Клиенты также могут управлять собственными ключами с помощью Azure Key Vault.

2. Шифрование на стороне клиента

Клиентские библиотеки службы хранилища Azure предоставляют методы шифрования данных перед их отправкой по сети и расшифровкой ответа. Данные, зашифрованные с помощью шифрования на стороне клиента, используют процесс шифрования службы хранилища Azure.

Трафик данных Azure NetApp Files по своему замыслу является надежно защищённым, поскольку он не предоставляет публичную конечную точку, а трафик данных остается в принадлежащей клиенту виртуальной сети. По умолчанию данные в процессе передачи не шифруются. Однако трафик данных с виртуальной машины Azure (с помощью сетевой файловой системы или клиента Server Message Block) в Azure NetApp Files является безопасным, как и любой другой трафик между виртуальными машинами Azure. Шифрование данных NFSv4.1 и SMB3 можно включить при необходимости для повышения безопасности.

Избыточность

Для надежности служба хранилища Azure сохраняет несколько копий данных. При настройке учетной записи хранения вы выбираете опцию репликации.

Azure NetApp Files предоставляет локально избыточное хранилище с доступностью 99,99 %.

Перенос данных в службу хранилища Azure и обратно

Существует несколько способов для перемещения данных в службу хранилища Azure и из нее. Выбор способа зависит от размера набора данных и пропускной способности сети.

Azure NetApp Files поддерживает тома NFS и SMB. Для переноса данных в эту службу можно использовать любое средство копирования на основе файлов.