Поделиться через


Частный доступ в Azure Cosmos DB для PostgreSQL

Область применения: Azure Cosmos DB для PostgreSQL (на базе расширения базы данных Citus до PostgreSQL)

Azure Cosmos DB для PostgreSQL поддерживает три варианта сети:

  • Нет доступа
    • Это значение по умолчанию для только что созданного кластера, если общедоступный или частный доступ не включен. Компьютеры в Azure и вне периметра не могут подключаться к узлам базы данных.
  • Общедоступный доступ
    • Общедоступный IP-адрес назначается узлу-координатору.
    • Доступ к узлу-координатору защищен брандмауэром.
    • При необходимости можно включить доступ ко всем рабочим узлам. В этом случае общедоступные IP-адреса назначаются рабочим узлам и защищаются тем же брандмауэром.
  • Частный доступ
    • Только частные IP-адреса назначаются узлам кластера.
    • Для каждого узла требуется частная конечная точка, чтобы разрешить узлам в выбранной виртуальной сети доступ к узлам.
    • Для контроля доступа можно использовать функции безопасности виртуальных сетей Azure, такие как группы безопасности сети.

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

На этой странице описан вариант частного доступа. Информацию об открытом доступе см. здесь.

Определения

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

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

При выборе подсети для частной конечной точки кластера убедитесь, что достаточно частных IP-адресов доступны в этой подсети для ваших текущих и будущих потребностей.

Частная конечная точка. Частная конечная точка — это сетевой интерфейс, использующий частный IP-адрес из виртуальной сети. Этот сетевой интерфейс конфиденциально и надежно подключается к службе через Приватный канал Azure. Частные конечные точки переносят службы в виртуальную сеть.

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

Частная зона DNS. Частная зона DNS Azure разрешает имена узлов в связанной виртуальной сети и в пределах любой одноранговой виртуальной сети. Записи домена для узлов создаются в частной зоне DNS, выбранной для своего кластера. Обязательно используйте полные доменные имена (FQDN) для строк подключения PostgreSQL узлов.

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

Частная конечная точка кластера использует IP-адрес из адресного пространства виртуальной сети. Трафик между узлами в виртуальной сети и узлах проходит через приватный канал в магистральной сети Майкрософт, устраняя уязвимость к общедоступному Интернету.

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

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

Использование частной зоны DNS

Новая частная зона DNS автоматически подготавливается для каждой частной конечной точки, если вы не выбрали одну из частных зон DNS, созданных ранее Azure Cosmos DB для PostgreSQL. Дополнительные сведения см. в обзоре частных зон DNS.

Служба Azure Cosmos DB для PostgreSQL создает записи DNS, например c-mygroup01.12345678901234.privatelink.postgres.cosmos.azure.com в выбранной частной зоне DNS для каждого узла с частной конечной точкой. При подключении к узлу из виртуальной машины Azure через частную конечную точку Azure DNS разрешает полное доменное имя узла в частный IP-адрес.

Параметры частной зоны DNS и пиринга между виртуальными сетями не зависят друг от друга. Если вы хотите подключиться к узлу в кластере из клиента, подготовленного в другой виртуальной сети (из одного региона или другого региона), необходимо связать частную зону DNS с виртуальной сетью. Дополнительные сведения см. в статье о связывании виртуальной сети.

Примечание.

Служба также всегда создает общедоступные записи CNAME, такие как c-mygroup01.12345678901234.postgres.cosmos.azure.com, для каждого узла. Однако выбранные компьютеры в общедоступном Интернете могут подключаться к имени общедоступного узла, только если администратор базы данных разрешает общедоступный доступ к кластеру.

Если вы используете пользовательский DNS-сервер, необходимо использовать dns-сервер пересылки для разрешения полного доменного имени узлов. IP-адрес сервера пересылки должен быть 168.63.129.16. Настраиваемый DNS-сервер должен находиться в виртуальной сети или быть доступным через настройки DNS-сервера виртуальной сети. Дополнительные сведения см. в статье о разрешении имен с помощью собственного DNS-сервера.

Рекомендации

Если вы включите частный доступ для кластера, рассмотрите следующие возможности.

  • Размер подсети: при выборе размера подсети для кластера учитывайте текущие потребности, такие как IP-адреса для координатора или всех узлов в этом кластере, а также будущие потребности, такие как рост этого кластера.

    Убедитесь, что у вас достаточно частных IP-адресов для текущих и будущих потребностей. Помните, что Azure резервирует пять IP-адресов в каждой подсети.

    Дополнительные сведения см. в этом разделе вопросов и ответов.

  • зона Частная зона DNS: записи DNS с частными IP-адресами будут поддерживаться службой Azure Cosmos DB для PostgreSQL. Не удаляйте частную зону DNS, используемую для кластеров.

Квоты и ограничения

См. страницу ограничений и ограничений Azure Cosmos DB для PostgreSQL.

Следующие шаги