website: docs for services CLI
This commit is contained in:
parent
1b7f836398
commit
3bbbc3fd66
|
@ -28,16 +28,17 @@ Usage: consul [--version] [--help] <command> [<args>]
|
||||||
Available commands are:
|
Available commands are:
|
||||||
agent Runs a Consul agent
|
agent Runs a Consul agent
|
||||||
catalog Interact with the catalog
|
catalog Interact with the catalog
|
||||||
|
connect Interact with Consul Connect
|
||||||
event Fire a new event
|
event Fire a new event
|
||||||
exec Executes a command on Consul nodes
|
exec Executes a command on Consul nodes
|
||||||
force-leave Forces a member of the cluster to enter the "left" state
|
force-leave Forces a member of the cluster to enter the "left" state
|
||||||
info Provides debugging information for operators.
|
info Provides debugging information for operators.
|
||||||
|
intention Interact with Connect service intentions
|
||||||
join Tell Consul agent to join cluster
|
join Tell Consul agent to join cluster
|
||||||
keygen Generates a new encryption key
|
keygen Generates a new encryption key
|
||||||
keyring Manages gossip layer encryption keys
|
keyring Manages gossip layer encryption keys
|
||||||
kv Interact with the key-value store
|
kv Interact with the key-value store
|
||||||
leave Gracefully leaves the Consul cluster and shuts down
|
leave Gracefully leaves the Consul cluster and shuts down
|
||||||
license Get/Put the Consul Enterprise license (Enterprise-only)
|
|
||||||
lock Execute a command holding a lock
|
lock Execute a command holding a lock
|
||||||
maint Controls node or service maintenance mode
|
maint Controls node or service maintenance mode
|
||||||
members Lists the members of a Consul cluster
|
members Lists the members of a Consul cluster
|
||||||
|
@ -45,6 +46,7 @@ Available commands are:
|
||||||
operator Provides cluster-level tools for Consul operators
|
operator Provides cluster-level tools for Consul operators
|
||||||
reload Triggers the agent to reload configuration files
|
reload Triggers the agent to reload configuration files
|
||||||
rtt Estimates network round trip time between nodes
|
rtt Estimates network round trip time between nodes
|
||||||
|
services Interact with services
|
||||||
snapshot Saves, restores and inspects snapshots of Consul server state
|
snapshot Saves, restores and inspects snapshots of Consul server state
|
||||||
validate Validate config files/directories
|
validate Validate config files/directories
|
||||||
version Prints the Consul version
|
version Prints the Consul version
|
||||||
|
|
|
@ -0,0 +1,66 @@
|
||||||
|
---
|
||||||
|
layout: "docs"
|
||||||
|
page_title: "Commands: Services"
|
||||||
|
sidebar_current: "docs-commands-services"
|
||||||
|
---
|
||||||
|
|
||||||
|
# Consul Agent Services
|
||||||
|
|
||||||
|
Command: `consul services`
|
||||||
|
|
||||||
|
The `services` command has subcommands for interacting with Consul services
|
||||||
|
registered with the [local agent](/docs/agent/basics.html). These provide
|
||||||
|
useful commands such as `register` and `deregister` for easily registering
|
||||||
|
services in scripts, dev mode, etc.
|
||||||
|
To view all services in the catalog, instead of only agent-local services,
|
||||||
|
see the [`catalog services`](/docs/commands/catalog/services.html) command.
|
||||||
|
|
||||||
|
## Usage
|
||||||
|
|
||||||
|
Usage: `consul services <subcommand>`
|
||||||
|
|
||||||
|
For the exact documentation for your Consul version, run `consul services -h` to
|
||||||
|
view the complete list of subcommands.
|
||||||
|
|
||||||
|
```text
|
||||||
|
Usage: consul services <subcommand> [options] [args]
|
||||||
|
|
||||||
|
...
|
||||||
|
|
||||||
|
Subcommands:
|
||||||
|
deregister Deregister services with the local agent
|
||||||
|
register Register services with the local agent
|
||||||
|
```
|
||||||
|
|
||||||
|
For more information, examples, and usage about a subcommand, click on the name
|
||||||
|
of the subcommand in the sidebar.
|
||||||
|
|
||||||
|
## Basic Examples
|
||||||
|
|
||||||
|
To create a simple service:
|
||||||
|
|
||||||
|
```text
|
||||||
|
$ consul services register -name=web
|
||||||
|
```
|
||||||
|
|
||||||
|
To create a service from a configuration file:
|
||||||
|
|
||||||
|
```text
|
||||||
|
$ cat web.json
|
||||||
|
{
|
||||||
|
"Service": {
|
||||||
|
"Name": "web"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
$ consul services register web.json
|
||||||
|
```
|
||||||
|
|
||||||
|
To deregister a service:
|
||||||
|
|
||||||
|
```sh
|
||||||
|
# Either style works:
|
||||||
|
$ consul services deregister web.json
|
||||||
|
|
||||||
|
$ consul services deregister -id web
|
||||||
|
```
|
|
@ -0,0 +1,63 @@
|
||||||
|
---
|
||||||
|
layout: "docs"
|
||||||
|
page_title: "Commands: Services Deregister"
|
||||||
|
sidebar_current: "docs-commands-services-deregister"
|
||||||
|
---
|
||||||
|
|
||||||
|
# Consul Agent Service Deregistration
|
||||||
|
|
||||||
|
Command: `consul services deregister`
|
||||||
|
|
||||||
|
The `services deregister` command deregisters a service with the local agent.
|
||||||
|
Note that this command can only deregister services that were registered
|
||||||
|
with the agent specified (defaults to the local agent) and is meant to
|
||||||
|
be paired with `services register`.
|
||||||
|
|
||||||
|
This is just one method for service deregistration. If the service was
|
||||||
|
registered with a configuration file, then deleting that file and
|
||||||
|
[reloading](/docs/commands/reload.html) Consul is the correct method to
|
||||||
|
deregister. See [Service Definition](/docs/agent/services.html) for more
|
||||||
|
information about registering services generally.
|
||||||
|
|
||||||
|
## Usage
|
||||||
|
|
||||||
|
Usage: `consul services deregister [options] [FILE...]`
|
||||||
|
|
||||||
|
This command can deregister either a single service using the `-id` flag
|
||||||
|
documented below, or one or more services using service definition files
|
||||||
|
in HCL or JSON format.
|
||||||
|
This flexibility makes it easy to pair the command with the
|
||||||
|
`services register` command since the argument syntax is the same.
|
||||||
|
|
||||||
|
#### API Options
|
||||||
|
|
||||||
|
<%= partial "docs/commands/http_api_options_client" %>
|
||||||
|
|
||||||
|
#### Service Deregistration Flags
|
||||||
|
|
||||||
|
The flags below should only be set if _no arguments_ are given. If no
|
||||||
|
arguments are given, the flags below can be used to deregister a single
|
||||||
|
service.
|
||||||
|
|
||||||
|
* `-id` - The ID of the service.
|
||||||
|
|
||||||
|
## Examples
|
||||||
|
|
||||||
|
To deregister by ID:
|
||||||
|
|
||||||
|
```text
|
||||||
|
$ consul services deregister -id=web
|
||||||
|
```
|
||||||
|
|
||||||
|
To deregister from a configuration file:
|
||||||
|
|
||||||
|
```text
|
||||||
|
$ cat web.json
|
||||||
|
{
|
||||||
|
"Service": {
|
||||||
|
"Name": "web"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
$ consul services deregister web.json
|
||||||
|
```
|
|
@ -0,0 +1,99 @@
|
||||||
|
---
|
||||||
|
layout: "docs"
|
||||||
|
page_title: "Commands: Services Register"
|
||||||
|
sidebar_current: "docs-commands-services-register"
|
||||||
|
---
|
||||||
|
|
||||||
|
# Consul Agent Service Registration
|
||||||
|
|
||||||
|
Command: `consul services register`
|
||||||
|
|
||||||
|
The `services register` command registers a service with the local agent.
|
||||||
|
This command returns after registration and must be paired with explicit
|
||||||
|
service deregistration. This command simplifies service registration from
|
||||||
|
scripts, in dev mode, etc.
|
||||||
|
|
||||||
|
This is just one method of service registration. Services can also be
|
||||||
|
registered by placing a [service definition](/docs/agent/services.html)
|
||||||
|
in the Consul agent configuration directory and issuing a
|
||||||
|
[reload](/docs/commands/reload.html). This approach is easiest for
|
||||||
|
configuration management systems that other systems that have access to
|
||||||
|
the configuration directory. Clients may also use the
|
||||||
|
[HTTP API](/api/agent/service.html) directly.
|
||||||
|
|
||||||
|
## Usage
|
||||||
|
|
||||||
|
Usage: `consul services register [options] [FILE...]`
|
||||||
|
|
||||||
|
This command can register either a single service using flags documented
|
||||||
|
below, or one or more services using service definition files in HCL
|
||||||
|
or JSON format. The service is registered against the specified Consul
|
||||||
|
agent (defaults to the local agent). This agent will execute all registered
|
||||||
|
health checks.
|
||||||
|
|
||||||
|
This command returns after registration succeeds. It must be paired with
|
||||||
|
a deregistration command or API call to remove the service. To ensure that
|
||||||
|
services are properly deregistered, it is **highly recommended** that
|
||||||
|
a check is created with the
|
||||||
|
[`DeregisterCriticalServiceAfter`](/api/agent/check.html#deregistercriticalserviceafter)
|
||||||
|
configuration set. This will ensure that even if deregistration failed for
|
||||||
|
any reason, the agent will automatically deregister the service instance after
|
||||||
|
it is unhealthy for the specified period of time.
|
||||||
|
|
||||||
|
Registered services are persisted in the agent state directory. If the
|
||||||
|
state directory remains unmodified, registered services will persist across
|
||||||
|
restarts.
|
||||||
|
|
||||||
|
~> **Warning for Consul operators:** The Consul agent persists registered
|
||||||
|
services in the local state directory. If this state directory is deleted
|
||||||
|
or lost, services registered with this command will need to be reregistered.
|
||||||
|
|
||||||
|
#### API Options
|
||||||
|
|
||||||
|
<%= partial "docs/commands/http_api_options_client" %>
|
||||||
|
|
||||||
|
#### Service Registration Flags
|
||||||
|
|
||||||
|
The flags below should only be set if _no arguments_ are given. If no
|
||||||
|
arguments are given, the flags below can be used to register a single
|
||||||
|
service.
|
||||||
|
|
||||||
|
Note that the behavior of each of the fields below is exactly the same
|
||||||
|
as when constructing a standard [service definition](/docs/agent/services.html).
|
||||||
|
Please refer to that documentation for full details.
|
||||||
|
|
||||||
|
* `-id` - The ID of the service. This will default to `-name` if not set.
|
||||||
|
|
||||||
|
* `-name` - The name of the service to register.
|
||||||
|
|
||||||
|
* `-address` - The address of the service. If this isn't specified,
|
||||||
|
it will default to the address registered with the local agent.
|
||||||
|
|
||||||
|
* `-port` - The port of the service.
|
||||||
|
|
||||||
|
* `-meta key=value` - Specify arbitrary KV metadata to associate with the
|
||||||
|
service instance. This can be specified multiple times.
|
||||||
|
|
||||||
|
* `-tag value` - Associate a tag with the service instance. This flag can
|
||||||
|
be specified multiples times.
|
||||||
|
|
||||||
|
## Examples
|
||||||
|
|
||||||
|
To create a simple service:
|
||||||
|
|
||||||
|
```text
|
||||||
|
$ consul services register -name=web
|
||||||
|
```
|
||||||
|
|
||||||
|
To create a service from a configuration file:
|
||||||
|
|
||||||
|
```text
|
||||||
|
$ cat web.json
|
||||||
|
{
|
||||||
|
"Service": {
|
||||||
|
"Name": "web"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
$ consul services register web.json
|
||||||
|
```
|
|
@ -185,6 +185,18 @@
|
||||||
<a href="/docs/commands/rtt.html">rtt</a>
|
<a href="/docs/commands/rtt.html">rtt</a>
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
|
<li<%= sidebar_current("docs-commands-services") %>>
|
||||||
|
<a href="/docs/commands/services.html">services</a>
|
||||||
|
<ul class="nav">
|
||||||
|
<li<%= sidebar_current("docs-commands-services-register") %>>
|
||||||
|
<a href="/docs/commands/services/register.html">register</a>
|
||||||
|
</li>
|
||||||
|
<li<%= sidebar_current("docs-commands-services-deregister") %>>
|
||||||
|
<a href="/docs/commands/services/deregister.html">deregister</a>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</li>
|
||||||
|
|
||||||
<li<%= sidebar_current("docs-commands-snapshot") %>>
|
<li<%= sidebar_current("docs-commands-snapshot") %>>
|
||||||
<a href="/docs/commands/snapshot.html">snapshot</a>
|
<a href="/docs/commands/snapshot.html">snapshot</a>
|
||||||
<ul class="nav">
|
<ul class="nav">
|
||||||
|
|
Loading…
Reference in New Issue