Consul
Consul Namespace Create
Command: consul namespace create
Enterprise
This feature requires Consul Enterprise(opens in new tab).
This namespace create command creates a namespaces using the CLI parameters provided.
This was added in Consul Enterprise 1.7.2.
Usage
Usage: consul namespace create -name <namespace name> [options]
Request a namespace to be created. Construction of the namespace definition is handled by this command from the CLI arguments.
API Options
- -ca-file=<value>- Path to a CA file to use for TLS when communicating with Consul. This can also be specified via the- CONSUL_CACERTenvironment variable.
- -ca-path=<value>- Path to a directory of CA certificates to use for TLS when communicating with Consul. This can also be specified via the- CONSUL_CAPATHenvironment variable.
- -client-cert=<value>- Path to a client cert file to use for TLS when- verify_incomingis enabled. This can also be specified via the- CONSUL_CLIENT_CERTenvironment variable.
- -client-key=<value>- Path to a client key file to use for TLS when- verify_incomingis enabled. This can also be specified via the- CONSUL_CLIENT_KEYenvironment variable.
- -http-addr=<addr>- Address of the Consul agent with the port. This can be an IP address or DNS address, but it must include the port. This can also be specified via the- CONSUL_HTTP_ADDRenvironment variable. In Consul 0.8 and later, the default value is http://127.0.0.1:8500, and https can optionally be used instead. The scheme can also be set to HTTPS by setting the environment variable- CONSUL_HTTP_SSL=true. This may be a unix domain socket using- unix:///path/to/socketif the agent is configured to listen that way.
- -tls-server-name=<value>- The server name to use as the SNI host when connecting via TLS. This can also be specified via the- CONSUL_TLS_SERVER_NAMEenvironment variable.
- -token=<value>- ACL token to use in the request. This can also be specified via the- CONSUL_HTTP_TOKENenvironment variable. If unspecified, the query will default to the token of the Consul agent at the HTTP address.
- -token-file=<value>- File containing the ACL token to use in the request instead of one specified via the- -tokenargument or- CONSUL_HTTP_TOKENenvironment variable. This can also be specified via the- CONSUL_HTTP_TOKEN_FILEenvironment variable.
- -datacenter=<name>- Name of the datacenter to query. If unspecified, the query will default to the datacenter of the Consul agent at the HTTP address.
- -stale- Permit any Consul server (non-leader) to respond to this request. This allows for lower latency and higher throughput, but can result in stale data. This option has no effect on non-read operations. The default value is false.
Command Options
- -default-policy-id=<value>- ID of a policy from the default namespace to inject for all tokens in this namespace. May be specified multiple times.
- -default-policy-name=<value>- Name of a policy from the default namespace to inject for all tokens in this namespace. May be specified multiple times. The ACL token used with this command must have- acl:writeaccess to the linked policy.
- -default-role-id=<value>- ID of a role from the default namespace to inject for all tokens in this namespace. May be specified multiple times. The ACL token used with this command must have- acl:writeaccess to the linked role.
- -default-role-name=<value>- Name of a role from the default namespace to inject for all tokens in this namespace. May be specified multiple times.
- -description=<string>- A description of the namespace.
- -format=<string>- How to output the results. The choices are: pretty or json
- -meta=<value>- Metadata to set on the namespace, formatted as key=value. This flag may be specified multiple times to set multiple meta fields
- -name=<string>- The namespace's name. This flag is required.
- -show-meta- Indicates that namespace metadata such as the raft indices should be shown for the namespace
Examples
Create a new Namespace:
$ consul namespace create -name "team-1"
Name: team-1
Showing Raft Metadata:
$ consul namespace create -name team-1 -show-meta
Name: team-1
Create Index: 339
Modify Index: 344
JSON Format:
$ consul namespace create -name team2 -description "Example Namespace" -meta "team-id=574407f3-8b26-4c84-8e51-028bb8cbdd37" -format=json
{
   "Name": "team2",
   "Description": "Example Namespace",
   "Meta": {
      "team-id": "574407f3-8b26-4c84-8e51-028bb8cbdd37"
   },
   "CreateIndex": 352,
   "ModifyIndex": 352
}