AWS Cloud Map Public Dns Namespace

This page shows how to write Terraform and CloudFormation for AWS Cloud Map Public Dns Namespace and write them securely.


Fix issues in your cloud & app configurations

Test for misconfigurations of this resource in your cloud.


Terraform Example (aws_service_discovery_public_dns_namespace)

Provides a Service Discovery Public DNS Namespace resource.


Example Usage (from GitHub)

resource "aws_service_discovery_public_dns_namespace" "this" {
  description = var.description
  name        =
  tags        = var.tags

resource "aws_service_discovery_public_dns_namespace" "namespace" {
  name = local.service_namespace

resource "aws_service_discovery_service" "gubernator" {
  name = local.gubernator_service_discovery
resource "aws_service_discovery_public_dns_namespace" "namespace" {
  count       = var.namespace_type == "public" ? 1 : 0
  name        =
  description = var.description

resource "aws_service_discovery_public_dns_namespace" "service-dns-sd" {
  name        = var.service_discovery_dns

resource "aws_service_discovery_service" "service-sd" {
  name = var.service_discovery_name

CloudFormation Example (AWS::ServiceDiscovery::PublicDnsNamespace)

Creates a public namespace based on DNS, which is visible on the internet. The namespace defines your service naming scheme. For example, if you name your namespace and name your service backend, the resulting DNS name for the service is You can discover instances that were registered with a public DNS namespace by using either a DiscoverInstances request or using DNS. For the current quota on the number of namespaces that you can create using the same AWS account, see AWS Cloud Map quotas in the AWS Cloud Map Developer Guide.

Important The CreatePublicDnsNamespace API operation is not supported in the AWS GovCloud (US) Regions.


Frequently asked questions

What is AWS Cloud Map Public Dns Namespace?

AWS Cloud Map Public Dns Namespace is a resource for Cloud Map of Amazon Web Service. Settings can be wrote in Terraform and CloudFormation.

Where can I find the example code for the AWS Cloud Map Public Dns Namespace?

For Terraform, the niveklabs/aws, mailgun/gubernator and figurate/terraform-aws-service-discovery-namespace source code examples are useful. See the Terraform Example section for further details.