Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
База данных Azure для PostgreSQL — это реляционная служба баз данных в Azure, основанная на реляционной базе данных с открытым исходным кодом PostgreSQL. Это полностью управляемое облачное решение базы данных, которое поддерживает критически важные рабочие нагрузки с прогнозируемой производительностью, безопасностью, высокой доступностью и динамической масштабируемостью. База данных Azure для PostgreSQL построена на редакции сообщества базы данных PostgreSQL. Она совместима с выпуском сообщества серверов PostgreSQL и поддерживает функции расширения PostgreSQL, такие как PostGIS и TimescaleDB.
В этой статье предполагается, что в качестве архитектора вы изучили параметры данных Azure и выбрали Базу данных Azure для PostgreSQL в качестве хранилища данных для рабочей нагрузки. В этой статье приведены рекомендации по архитектуре, сопоставленные с принципами Well-Architected платформы.
Technology scope
В этом обзоре рассматриваются взаимосвязанные решения для следующих ресурсов Azure:
- База данных Azure для PostgreSQL
Reliability
Цель компонента надежности заключается в обеспечении непрерывной функциональности путем создания достаточной устойчивости и возможности быстрого восстановления после сбоев.
принципы проектирования надежности обеспечивают высокоуровневую стратегию проектирования, применяемую для отдельных компонентов, системных потоков и системы в целом.
Контрольный список разработки рабочей нагрузки
Ознакомьтесь с руководством по надежности продукта Базы данных Azure для PostgreSQL.
Дополнительные сведения см. в следующих ресурсах:Выравнивайте целевые показатели надежности и восстановления для Базы данных Azure для PostgreSQL с целевыми объектами рабочей нагрузки. Выберите подходящий SKU Базы данных Azure для PostgreSQL, который может поддерживать ваши цели надежности и восстановления.
Определите соответствующие конфигурации высокого уровня доступности и избыточности для экземпляров Базы данных Azure для PostgreSQL. Определите, требуются ли зонально избыточные или зональные настройки, чтобы соответствовать требованиям к надежности.
Включите восстановление экземпляров Базы данных Azure для PostgreSQL в планирование и упражнения аварийного восстановления. Убедитесь, что всю рабочую нагрузку можно восстановить в соответствии с вашими целями восстановления.
Включите экземпляры Базы данных Azure для PostgreSQL в платформу наблюдаемости. Включите расширенные метрики для мониторинга работоспособности вашего экземпляра. Включите мониторинг работоспособности с высокой доступностью в ваше решение для мониторинга.
Configuration recommendations
Recommendation | Benefit |
---|---|
Выберите соответствующую конфигурацию высокого уровня доступности. | При настройке высокой доступности сервер Базы данных Azure для PostgreSQL автоматически подготавливает резервную реплику и управляет ими. Эта настройка гарантирует, что служба остается доступной и не теряет данные во время сбоя зоны. |
Configure geo-redundant backups. | Межрегиональные реплики для чтения можно развернуть для защиты ваших баз данных от сбоев на уровне региона. Геоизбыточные резервные копии включены в выбранных регионах и помогают в аварийном восстановлении, если регион сервера-источника недоступен. Георезервирование также достигается, используя хранилище Azure Backup для долгосрочного хранения точек восстановления. При возникновении регионального сбоя или аварии можно использовать резервное копирование для восстановления сервера базы данных в парном регионе Azure, что сокращает время простоя. Azure Backup также обеспечивает геоизбыточное обеспечение для Базы данных Azure для PostgreSQL. Эта функция повышает эффективность и сокращает время простоя во время аварий или региональных сбоев. |
Проверьте стратегию резервного копирования и восстановления повторно. | Регулярное тестирование стратегии резервного копирования и восстановления обеспечивает восстановление баз данных и обслуживание операций при возникновении сбоя. |
Security
Цель компонента "Безопасность" — обеспечить конфиденциальности, целостности и доступности гарантии рабочей нагрузки.
Принципы проектирования безопасности предоставляют высокоуровневую стратегию проектирования для достижения этих целей, применяя подходы к техническому проектированию базы данных Azure для PostgreSQL.
Контрольный список разработки рабочей нагрузки
Просмотрите базовые показатели безопасности. Чтобы повысить уровень безопасности рабочей нагрузки, ознакомьтесь с базовой базой данных Azure для PostgreSQL.
Реализация строгого, условного и аудита управления удостоверениями и доступом. Используйте идентификатор Microsoft Entra для проверки подлинности и авторизации для улучшения управления удостоверениями.
Применение сегментации сети и элементов управления безопасностью. Используйте встроенный брандмауэр на уровне сервера вместе с механизмами брандмауэра виртуальной сети, чтобы изолировать экземпляр от других компонентов рабочей нагрузки и общедоступных сетей.
Используйте собственные функции безопасности для добавления дополнительных уровней защиты. Помогите предотвратить вредоносные действия, настроив безопасность на уровне строк и ограничение подключений.
Configuration recommendations
Recommendation | Benefit |
---|---|
Реализуйте группы безопасности сети и брандмауэры для управления доступом к базе данных. | В рамках модели "Нулевое доверие" для обеспечения безопасности используйте сегментацию сети, чтобы ограничить пути связи между компонентами, такими как серверы приложений и баз данных, только тем, что необходимо. Эту функцию можно реализовать с помощью групп безопасности сети и групп безопасности приложений. |
Подключитесь к базам данных через Приватный канал Azure. | Private Link позволяет создавать частные конечные точки для Azure Database for PostgreSQL, чтобы расширить службу внутри вашей виртуальной сети. |
Используйте идентификатор Microsoft Entra для проверки подлинности и авторизации для улучшения управления удостоверениями. | Проверку подлинности Microsoft Entra можно использовать для подключения к Базе данных Azure для PostgreSQL с помощью управляемых удостоверений в Microsoft Entra. |
Configure row-level security. | Безопасность на уровне строк — это функция безопасности PostgreSQL, которая позволяет администраторам баз данных определять политики для контроля того, как определенные строки данных отображаются и работают для одной или нескольких ролей. Безопасность на уровне строк — это дополнительный фильтр, который можно применить к таблице базы данных PostgreSQL. |
Если требуется для соответствия требованиям, используйте управляемые клиентом ключи (CMKs) для шифрования данных и сохраните ключи в Azure Key Vault. | Пакеты УПРАВЛЕНИЯ обеспечивают полный контроль жизненного цикла ключа шифрования, включая смену ключей, для соответствия корпоративным политикам. Key Vault обеспечивает централизованное управление и организацию ключей шифрования в собственных выделенных экземплярах Key Vault. |
Включите регулирование подключения для IP-адресов, у которых слишком много неудачных попыток входа. | Настройка параметра сервера connection_throttling на enabled помогает защитить базы данных от вредоносных попыток входа и атак типа "отказ в обслуживании" (DDoS), ограничивая повторные попытки подключения с одного IP-адреса. |
Регулярно проводите аудиты безопасности. | Регулярное проведение аудита безопасности помогает выявлять и устранять потенциальные уязвимости. |
Cost Optimization
Оптимизация затрат фокусируется на обнаружении шаблонов расходов, приоритете инвестиций в критически важные области и оптимизации в других в соответствии с бюджетом организации при выполнении бизнес-требований.
Принципы проектирования оптимизации затрат обеспечивают высокоуровневую стратегию проектирования для достижения этих целей и обеспечения компромиссов при необходимости в техническом проектировании, связанном с базой данных Azure для PostgreSQL и ее средой.
Контрольный список разработки рабочей нагрузки
Оценка начальной стоимости. В рамках упражнения по моделированию затрат используйте калькулятор цен Azure, чтобы оценить приблизительные затраты, связанные с Базой данных Azure для PostgreSQL в рабочей нагрузке.
Выберите нужный уровень служб для рабочей нагрузки. Определите, соответствует ли ценовая категория для вычислительных ресурсов, таких как "С возможностью ускорения", "Общего назначения" или "Оптимизированная по памяти", вашим требованиям.
Применение хорошо информированной стратегии масштабирования. Чтобы определить, когда и как масштабировать ресурсы Базы данных Azure для PostgreSQL, постоянно отслеживайте и анализируйте емкость рабочей нагрузки и спрос.
Воспользуйтесь преимуществами доступных скидок. Рассмотрим одно или три года резервирования вычислительных ресурсов. Зарезервированные экземпляры позволяют сэкономить значительные затраты на вычислительные ресурсы.
Используйте подготовленное хранилище. Дополнительная плата за хранилище резервных копий объемом до 100% не взимается от вашего общего выделенного серверного хранилища.
Общие сведения о затратах на избыточность. Использование избыточной зоны или зональных конфигураций удвоит затраты на экземпляр, поэтому тщательно рассмотрите структуру избыточности.
Понимание затрат на защищённый экземпляр и резервное хранилище. При резервном копировании базы данных Azure для PostgreSQL с помощью Azure Backup взимается плата за защищенный экземпляр каждые 250 ГБ, а также сборы за хранение резервных копий, основанные на общем объеме хранимых данных и типе избыточности.
Развертывание в том же регионе, что и приложение. Разверните в том же регионе, что и приложения, чтобы свести к минимуму затраты на передачу.
Консолидация баз данных и серверов. При практической консолидации нескольких баз данных и серверов на одном сервере может помочь сократить затраты.
Configuration recommendations
Recommendations | Benefits |
---|---|
Выберите нужный уровень и номер SKU. | Выбор правильного уровня и номера SKU помогает избежать лишних затрат на ресурсы, выделенные с избытком. Помощник по Azure предоставляет рекомендации, включая предложения по защите прав сервера, для оптимизации и уменьшения общих расходов Azure. |
Масштабирование вычислительных ресурсов и ресурсов хранилища при изменении спроса на рабочую нагрузку. | Вы можете масштабировать вычислительные ресурсы по вертикали (вверх или вниз) и горизонтально (по мере необходимости). После увеличения масштаба хранилища нельзя уменьшить его размер. |
Используйте функцию запуска и остановки. | Используйте функцию запуска и остановки, чтобы остановить работу сервера, если она не нужна. |
Operational Excellence
Операционное совершенство в основном сосредоточено на процедурах, касающихся практик разработки , наблюдаемости и управления релизами.
Принципы проектирования операционной эффективности обеспечивают высокоуровневую стратегию проектирования для достижения этих целей в соответствии с операционными требованиями рабочей нагрузки.
Контрольный список разработки рабочей нагрузки
Оптимизируйте возможность восстановления баз данных. Определите политики резервного копирования и хранения для соответствия требованиям.
Автоматизация операционных задач. Use automation tasks to automatically perform tasks like starting and stopping a server, scaling resources, and other tasks.
Мониторинг работоспособности и производительности базы данных. Сбор и анализ журналов и метрик из вашей инстанции для упреждающего обнаружения потенциальных проблем.
Configuration recommendations
Recommendation | Benefits |
---|---|
Используйте политику Azure Backup отдельно или вместе с собственными автоматическими резервными копиями для резервного копирования баз данных. | База данных Azure для PostgreSQL предоставляет автоматические резервные копии и восстановление на определенный момент времени для вашей базы данных. Срок хранения резервных копий можно настроить до 35 дней. Используйте Azure Backup для определения способа создания резервных копий, периода хранения точек восстановления и правил защиты и восстановления данных. Точки восстановления можно хранить в хранилище Azure Backup до 10 лет. Вы также можете управлять операциями резервного копирования и восстановления с помощью Центра непрерывности бизнес-процессов Azure. |
Запланируйте пользовательские окна обслуживания для применения обновлений служб. | Вы можете определить пользовательское расписание для каждой базы данных Azure для PostgreSQL в подписке Azure. С помощью настраиваемого расписания можно указать период обслуживания сервера, выбрав день недели и время начала периода обслуживания за один час. |
Отслеживайте сервер, чтобы убедиться, что он работоспособен и функционирует как ожидается. | База данных Azure для PostgreSQL содержит различные метрики, которые предоставляют представление о поведении ресурсов, поддерживающих экземпляр Базы данных Azure для PostgreSQL. Кроме того, можно включить расширенные метрики для получения точного мониторинга и оповещений в базах данных. |
Performance Efficiency
Эффективность производительности заключается в поддержании пользовательского опыта даже в условиях увеличения нагрузки за счёт управления ресурсами. Стратегия включает масштабирование ресурсов, определение потенциальных узких мест и оптимизацию для достижения пиковой производительности.
Принципы проектирования эффективности производительности предлагают высокоуровневую стратегию для достижения этих целей по емкости с учетом ожидаемого использования.
Контрольный список разработки рабочей нагрузки
Optimize queries. Используйте собственные функции для поиска возможностей для оптимизации запросов.
Optimize indexes. Используйте такие функции, как настройка индекса для автоматического анализа шаблонов запросов и получения практических рекомендаций по созданию или удалению индексов для повышения производительности.
Разгрузить операции в режиме только для чтения. Если ваше приложение поддерживает строки подключения только для чтения, можно передать операции только для чтения на реплики для чтения.
Configuration recommendations
Recommendation | Benefits |
---|---|
Use query store to track query performance over time. | Хранилище запросов упрощает устранение проблем с производительностью, помогая быстро находить самые длительные и наиболее ресурсоемкие запросы. |
Используйте аналитику производительности запросов , чтобы определить наиболее потребляемые ресурсы и длительные запросы в рабочей нагрузке. | Аналитика производительности запросов помогает выявлять длительные запросы и их изменения с течением времени, определять типы ожидания, влияющие на них, анализировать основные запросы базы данных по частоте и другим преимуществам. |
Use index tuning with query store to analyze tracked queries and provide recommendations. | Настройка индекса анализирует рабочую нагрузку, которую отслеживает хранилище запросов. Он создает рекомендации по индексу для повышения производительности проанализированной рабочей нагрузки или удаления повторяющихся или неиспользуемых индексов. Настройка индекса помогает определить полезные индексы, повторяющиеся индексы и неиспользуемые индексы. |
Use intelligent tuning to enhance performance automatically and help prevent problems. | Интеллектуальная настройка постоянно отслеживает состояние гибкой базы данных сервера База данных Azure для PostgreSQL и динамически адаптирует базу данных к рабочей нагрузке. |
Azure policies
Azure предоставляет широкий набор встроенных политик, связанных с Базой данных Azure для PostgreSQL и ее зависимостями. Некоторые из предыдущих рекомендаций можно проверять с помощью политики Azure. Например, можно проверить, можно ли:
Для комплексного управления ознакомьтесь со встроенными определениями политики Azure для Базы данных Azure для PostgreSQL и другими политиками, которые могут повлиять на безопасность хранилищ данных.
Рекомендации Помощника по Azure
Помощник по Azure — это персонализированный облачный консультант, который поможет вам следовать рекомендациям по оптимизации развертываний Azure.
For more information, see Azure Advisor.
Example architecture
Базовая архитектура, демонстрирующая основные рекомендации: шаблон Надежных веб-приложений для Java.