Merge pull request #6207 from marquiz/devel/docs

docs: improve plugin documentation
This commit is contained in:
Derek McGowan 2022-01-03 13:20:29 -08:00 committed by GitHub
commit 07aa42f427
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -38,38 +38,38 @@ config as version 1 has been deprecated.
**plugin_dir** **plugin_dir**
: The directory for dynamic plugins to be stored : The directory for dynamic plugins to be stored
**sched_core**
: Core scheduling is a feature that allows only trusted tasks to run concurrently
on cpus sharing compute resources (eg: hyperthreads on a core).
**[grpc]** **[grpc]**
: Section for gRPC socket listener settings. Contains the following properties: : Section for gRPC socket listener settings. Contains the following properties:
- **address** (Default: "/run/containerd/containerd.sock")
- **tcp_address** - **address** (Default: "/run/containerd/containerd.sock")
- **tcp_tls_cert** - **tcp_address**
- **tcp_tls_key** - **tcp_tls_cert**
- **uid** (Default: 0) - **tcp_tls_key**
- **gid** (Default: 0) - **uid** (Default: 0)
- **max_recv_message_size** - **gid** (Default: 0)
- **max_send_message_size** - **max_recv_message_size**
- **max_send_message_size**
**[ttrpc]** **[ttrpc]**
: Section for TTRPC settings. Contains properties: : Section for TTRPC settings. Contains properties:
- **address** (Default: "")
- **uid** (Default: 0) - **address** (Default: "")
- **gid** (Default: 0) - **uid** (Default: 0)
- **gid** (Default: 0)
**[debug]** **[debug]**
: Section to enable and configure a debug socket listener. Contains four properties: : Section to enable and configure a debug socket listener. Contains four properties:
- **address** (Default: "/run/containerd/debug.sock")
- **uid** (Default: 0) - **address** (Default: "/run/containerd/debug.sock")
- **gid** (Default: 0) - **uid** (Default: 0)
- **level** (Default: "info") sets the debug log level - **gid** (Default: 0)
- **level** (Default: "info") sets the debug log level
**[metrics]** **[metrics]**
: Section to enable and configure a metrics listener. Contains two properties: : Section to enable and configure a metrics listener. Contains two properties:
- **address** (Default: "") Metrics endpoint does not listen by default
- **grpc_histogram** (Default: false) Turn on or off gRPC histogram metrics - **address** (Default: "") Metrics endpoint does not listen by default
- **grpc_histogram** (Default: false) Turn on or off gRPC histogram metrics
**disabled_plugins** **disabled_plugins**
: Disabled plugins are IDs of plugins to disable. Disabled plugins won't be : Disabled plugins are IDs of plugins to disable. Disabled plugins won't be
@ -84,32 +84,40 @@ required plugin doesn't exist or fails to be initialized or started.
The following plugins are enabled by default and their settings are shown below. The following plugins are enabled by default and their settings are shown below.
Plugins that are not enabled by default will provide their own configuration values Plugins that are not enabled by default will provide their own configuration values
documentation. documentation.
- **[plugins.cgroup]** has one option __no_prometheus__ (Default: **false**)
- **[plugins.diff]** has one option __default__, a list by default set to **["walking"]** - **[plugins.cgroup]** has one option __no_prometheus__ (Default: **false**)
- **[plugins.linux]** has several options for configuring the runtime, shim, and related options: - **[plugins.diff]** has one option __default__, a list by default set to **["walking"]**
**shim** specifies the shim binary (Default: **"containerd-shim"**), - **[plugins.linux]** has several options for configuring the runtime, shim, and related options:
**runtime** is the OCI compliant runtime binary (Default: **"runc"**), - **shim** specifies the shim binary (Default: **"containerd-shim"**),
**runtime_root** is the root directory used by the runtime (Default: **""**), - **runtime** is the OCI compliant runtime binary (Default: **"runc"**),
**no_shim** specifies whether to use a shim or not (Default: **false**), - **runtime_root** is the root directory used by the runtime (Default: **""**),
**shim_debug** turns on debugging for the shim (Default: **false**) - **no_shim** specifies whether to use a shim or not (Default: **false**),
- **[plugins."io.containerd.gc.v1.scheduler"]** has several options that perform advanced tuning for the scheduler: - **shim_debug** turns on debugging for the shim (Default: **false**)
**pause_threshold** is the maximum amount of time GC should be scheduled (Default: **0.02**), - **[plugins."io.containerd.gc.v1.scheduler"]** has several options that perform advanced tuning for the scheduler:
**deletion_threshold** guarantees GC is scheduled after n number of deletions (Default: **0** [not triggered]), - **pause_threshold** is the maximum amount of time GC should be scheduled (Default: **0.02**),
**mutation_threshold** guarantees GC is scheduled after n number of database mutations (Default: **100**), - **deletion_threshold** guarantees GC is scheduled after n number of deletions (Default: **0** [not triggered]),
**schedule_delay** defines the delay after trigger event before scheduling a GC (Default **"0ms"** [immediate]), - **mutation_threshold** guarantees GC is scheduled after n number of database mutations (Default: **100**),
**startup_delay** defines the delay after startup before scheduling a GC (Default **"100ms"**) - **schedule_delay** defines the delay after trigger event before scheduling a GC (Default **"0ms"** [immediate]),
- **startup_delay** defines the delay after startup before scheduling a GC (Default **"100ms"**)
- **[plugins."io.containerd.runtime-shim.v2.shim"]** specifies options for configuring the runtime shim:
- **platforms** specifies the list of supported platforms
- **sched_core** Core scheduling is a feature that allows only trusted tasks
to run concurrently on cpus sharing compute resources (eg: hyperthreads on
a core). (Default: **false**)
**oom_score** **oom_score**
: The out of memory (OOM) score applied to the containerd daemon process (Default: 0) : The out of memory (OOM) score applied to the containerd daemon process (Default: 0)
**[cgroup]** **[cgroup]**
: Section for Linux cgroup specific settings : Section for Linux cgroup specific settings
- **path** (Default: "") Specify a custom cgroup path for created containers
- **path** (Default: "") Specify a custom cgroup path for created containers
**[proxy_plugins]** **[proxy_plugins]**
: Proxy plugins configures plugins which are communicated to over gRPC : Proxy plugins configures plugins which are communicated to over gRPC
- **type** (Default: "")
- **address** (Default: "") - **type** (Default: "")
- **address** (Default: "")
**timeouts** **timeouts**
: Timeouts specified as a duration : Timeouts specified as a duration
@ -131,10 +139,11 @@ Imported files are also versioned, and the version can't be higher than
the main config. the main config.
**stream_processors** **stream_processors**
- **accepts** (Default: "[]") Accepts specific media-types
- **returns** (Default: "") Returns the media-type - **accepts** (Default: "[]") Accepts specific media-types
- **path** (Default: "") Path or name of the binary - **returns** (Default: "") Returns the media-type
- **args** (Default: "[]") Args to the binary - **path** (Default: "") Path or name of the binary
- **args** (Default: "[]") Args to the binary
## EXAMPLE ## EXAMPLE
@ -145,7 +154,6 @@ root = "/var/lib/containerd"
state = "/run/containerd" state = "/run/containerd"
oom_score = 0 oom_score = 0
imports = ["/etc/containerd/runtime_*.toml", "./debug.toml"] imports = ["/etc/containerd/runtime_*.toml", "./debug.toml"]
sched_core = true
[grpc] [grpc]
address = "/run/containerd/containerd.sock" address = "/run/containerd/containerd.sock"
@ -182,6 +190,9 @@ sched_core = true
mutation_threshold = 100 mutation_threshold = 100
schedule_delay = 0 schedule_delay = 0
startup_delay = "100ms" startup_delay = "100ms"
[plugins."io.containerd.runtime-shim.v2.shim"]
platforms = ["linux/amd64"]
sched_core = true
``` ```
## BUGS ## BUGS