Supervisor
A Supervisor is a resource managing the lifecycle of the plugin instances to deploy. A Supervisor manages the deployment of plugin instances by deploying or deleting the pod of the plugin instances.
Package : spaceone.api.plugin.v1
Supervisor
Supervisor Methods:
publish
Creates a new Supervisor. Only Users with the MANAGED permission can set the Supervisor public. The Supervisor manages the lifecycle of plugin instances by the Supervisor's state. When a Supervisor is created, the state of the resource is PENDING. If the state remains the same for 5 minutes, the state is changed to DISCONNECTED.
{{< tabs " publish " >}}
{{< tab "Request Example" >}}
name (string)
Requiredhostname (string)
Requireddomain_id (string)
Requiredsecret_key (string)
plugin_info (PluginInfo)
Repeatedis_public (bool)
labels (ListValue)
tags (Struct)
{{< highlight json >}} { "name": "test", "hostname": "dev-test2", "secret_key": "xxxxx", "tags": { "a": "b" } } {{< /highlight >}} {{< /tab >}}
{{< tab "Response Example" >}}
supervisor_id (string)
Requiredname (string)
Requiredhostname (string)
Requiredstate (State)
Requiredis_public (bool)
Requiredlabels (Struct)
Requiredtags (Struct)
Requireddomain_id (string)
Requiredcreated_at (string)
Requiredupdated_at (string)
Required
{{< highlight json >}} { "supervisor_id": "supervisor-525982f2ae9a", "name": "test", "hostname": "dev-test2", "state": "ENABLED", "domain_id": "domain-1c5a6b8181ad", "tags": { "a": "b" }, "labels": {}, "created_at": "2022-01-15T05:42:02.999Z" } {{< /highlight >}} {{< /tab >}}
{{< /tabs >}}
register
Registers a specific Supervisor. You must specify the supervisor_id of the Supervisor to register. The state of the Supervisor changes from PENDING to ENABLED.
{{< tabs " register " >}}
{{< tab "Request Example" >}}
supervisor_id (string)
Requireddomain_id (string)
Requiredname (string)
is_public (bool)
priority (int32)
labels (Struct)
tags (Struct)
{{< highlight json >}} { "supervisor_id": "supervisor-525982f2ae9a", "is_public": true, "priority": 10, "labels": { "a": "b" }, "tags": { "c": "d" }, "domain_id": "domain-1c5a6b8181ad" } {{< /highlight >}} {{< /tab >}}
{{< tab "Response Example" >}}
supervisor_id (string)
Requiredname (string)
Requiredhostname (string)
Requiredstate (State)
Requiredis_public (bool)
Requiredlabels (Struct)
Requiredtags (Struct)
Requireddomain_id (string)
Requiredcreated_at (string)
Requiredupdated_at (string)
Required
{{< highlight json >}} { "supervisor_id": "supervisor-525982f2ae9a", "name": "test", "hostname": "dev-test2", "state": "ENABLED", "domain_id": "domain-1c5a6b8181ad", "tags": { "a": "b" }, "labels": {}, "created_at": "2022-01-15T05:42:02.999Z" } {{< /highlight >}} {{< /tab >}}
{{< /tabs >}}
update
Updates a specific Supervisor. You can make changes in Supervisor settings, including labels, tags, and the bool type parameter is_public.
{{< tabs " update " >}}
{{< tab "Request Example" >}}
supervisor_id (string)
Requireddomain_id (string)
Requiredname (string)
is_public (bool)
priority (int32)
labels (Struct)
tags (Struct)
{{< highlight json >}} { "supervisor_id": "supervisor-525982f2ae9a", "is_public": true, "priority": 10, "labels": { "a": "b" }, "tags": { "c": "d" }, "domain_id": "domain-1c5a6b8181ad" } {{< /highlight >}} {{< /tab >}}
{{< tab "Response Example" >}}
supervisor_id (string)
Requiredname (string)
Requiredhostname (string)
Requiredstate (State)
Requiredis_public (bool)
Requiredlabels (Struct)
Requiredtags (Struct)
Requireddomain_id (string)
Requiredcreated_at (string)
Requiredupdated_at (string)
Required
{{< highlight json >}} { "supervisor_id": "supervisor-525982f2ae9a", "name": "test", "hostname": "dev-test2", "state": "ENABLED", "domain_id": "domain-1c5a6b8181ad", "tags": { "a": "b" }, "labels": {}, "created_at": "2022-01-15T05:42:02.999Z" } {{< /highlight >}} {{< /tab >}}
{{< /tabs >}}
deregister
Deregisters and deletes a specific Supervisor. You must specify the supervisor_id of the Supervisor to deregister.
{{< tabs " deregister " >}}
{{< tab "Request Example" >}}
supervisor_id (string)
Requireddomain_id (string)
Required
{{< highlight json >}} { "supervisor_id": "supervisor-d73011256d55" } {{< /highlight >}} {{< /tab >}}
{{< /tabs >}}
enable
Enables a specific Supervisor. By changing the state parameter to ENABLED, the Supervisor can deploy or delete the pod of the plugin instance.
{{< tabs " enable " >}}
{{< tab "Request Example" >}}
supervisor_id (string)
Requireddomain_id (string)
Required
{{< highlight json >}} { "supervisor_id": "supervisor-d73011256d55" } {{< /highlight >}} {{< /tab >}}
{{< tab "Response Example" >}}
supervisor_id (string)
Requiredname (string)
Requiredhostname (string)
Requiredstate (State)
Requiredis_public (bool)
Requiredlabels (Struct)
Requiredtags (Struct)
Requireddomain_id (string)
Requiredcreated_at (string)
Requiredupdated_at (string)
Required
{{< highlight json >}} { "supervisor_id": "supervisor-525982f2ae9a", "name": "test", "hostname": "dev-test2", "state": "ENABLED", "domain_id": "domain-1c5a6b8181ad", "tags": { "a": "b" }, "labels": {}, "created_at": "2022-01-15T05:42:02.999Z" } {{< /highlight >}} {{< /tab >}}
{{< /tabs >}}
disable
Disables a specific Supervisor. By changing the state parameter to DISABLED, the Supervisor cannot deploy or delete the pod of the plugin instance.
{{< tabs " disable " >}}
{{< tab "Request Example" >}}
supervisor_id (string)
Requireddomain_id (string)
Required
{{< highlight json >}} { "supervisor_id": "supervisor-d73011256d55" } {{< /highlight >}} {{< /tab >}}
{{< tab "Response Example" >}}
supervisor_id (string)
Requiredname (string)
Requiredhostname (string)
Requiredstate (State)
Requiredis_public (bool)
Requiredlabels (Struct)
Requiredtags (Struct)
Requireddomain_id (string)
Requiredcreated_at (string)
Requiredupdated_at (string)
Required
{{< highlight json >}} { "supervisor_id": "supervisor-525982f2ae9a", "name": "test", "hostname": "dev-test2", "state": "ENABLED", "domain_id": "domain-1c5a6b8181ad", "tags": { "a": "b" }, "labels": {}, "created_at": "2022-01-15T05:42:02.999Z" } {{< /highlight >}} {{< /tab >}}
{{< /tabs >}}
recover_plugin
Recovers a specific plugin instance in a specific Supervisor. Changes the state of the Supervisor to RE-PROVISIONING.
{{< tabs " recover_plugin " >}}
{{< tab "Request Example" >}}
supervisor_id (string)
Requiredversion (string)
Requireddomain_id (string)
Requiredplugin_id (string)
Required
{{< highlight json >}} { "supervisor_id": "supervisor-a4c287cba676", "plugin_id": "plugin-api-direct-mon-webhook", "version": "1.1.0" } {{< /highlight >}} {{< /tab >}}
{{< /tabs >}}
get
{{< tabs " get " >}}
{{< tab "Request Example" >}}
supervisor_id (string)
Requireddomain_id (string)
Required
{{< highlight json >}} { "supervisor_id": "supervisor-d73011256d55" } {{< /highlight >}} {{< /tab >}}
{{< tab "Response Example" >}}
supervisor_id (string)
Requiredname (string)
Requiredhostname (string)
Requiredstate (State)
Requiredis_public (bool)
Requiredlabels (Struct)
Requiredtags (Struct)
Requireddomain_id (string)
Requiredcreated_at (string)
Requiredupdated_at (string)
Required
{{< highlight json >}} { "supervisor_id": "supervisor-525982f2ae9a", "name": "test", "hostname": "dev-test2", "state": "ENABLED", "domain_id": "domain-1c5a6b8181ad", "tags": { "a": "b" }, "labels": {}, "created_at": "2022-01-15T05:42:02.999Z" } {{< /highlight >}} {{< /tab >}}
{{< /tabs >}}
list
Gets a list of all Supervisors. You can use a query to get a filtered list of Supervisors.
{{< tabs " list " >}}
{{< tab "Request Example" >}}
domain_id (string)
Requiredquery (Query)
supervisor_id (string)
name (string)
is_public (bool)
{{< highlight json >}} { "query": {} } {{< /highlight >}} {{< /tab >}}
{{< tab "Response Example" >}}
results (SupervisorInfo)
RepeatedRequiredtotal_count (int32)
Required
{{< highlight json >}} { "results": [ { "supervisor_id": "supervisor-3a091f899539", "name": "root", "hostname": "dev-supervisor.svc.cluster.local", "state": "ENABLED", "is_public": true, "domain_id": "domain-1c5a6b8181ad", "labels": {}, "created_at": "2020-05-12T00:24:48.250Z" }, { "supervisor_id": "supervisor-a4c287cba676", "name": "test", "hostname": "dev-test", "state": "ENABLED", "domain_id": "domain-1c5a6b8181ad", "tags": { "a": "b" }, "labels": {}, "created_at": "2022-06-15T05:39:15.886Z" } ], "total_count": 2 } {{< /highlight >}} {{< /tab >}}
{{< /tabs >}}
stat
list_plugins
Gets a list of all plugin instances regardless of Supervisors. Prints detailed information about the plugin instances, including version, state, and the relevant Supervisor.
{{< tabs " list_plugins " >}}
{{< tab "Request Example" >}}
domain_id (string)
Requiredquery (Query)
supervisor_id (string)
hostname (string)
plugin_id (string)
version (string)
state (State)
endpoint (string)
{{< highlight json >}} { "query": {} } {{< /highlight >}} {{< /tab >}}
{{< tab "Response Example" >}}
results (PluginInfo)
RepeatedRequiredtotal_count (int32)
Required
{{< highlight json >}} { "results": [ { "plugin_id": "plugin-openstack-inven-collector", "version": "0.4.1.20220609.122832", "state": "ACTIVE", "endpoint": "grpc://plugin-openstack-inven-collector-vbnnsoszfjsneiqz.dev-supervisor.svc.cluster.local:50051", "supervisor_id": "supervisor-3a091f899539", "supervisor_name": "root", "managed": true, "endpoints": [ "grpc://172.16.16.234:50051" ] }, { "plugin_id": "plugin-zabbix-mon-webhook", "version": "1.0", "state": "ACTIVE", "endpoint": "grpc://plugin-zabbix-mon-webhook-dgqqfqsqidieeuk.dev-supervisor.svc.cluster.local:50051", "supervisor_id": "supervisor-3a091f899539", "supervisor_name": "root", "managed": true, "endpoints": [ "grpc://172.16.16.130:50051" ] } ], "total_count": 2 } {{< /highlight >}} {{< /tab >}}
{{< /tabs >}}
Message
PluginInfo
plugin_id (string)
Requiredversion (string)
Requiredstate (State)
Requiredendpoint (string)
Requiredmanaged (bool)
Requiredendpoints (string)
RepeatedRequireddomain_id (string)
Requiredsupervisor_id (string)
Requiredsupervisor_name (string)
Required
PluginQuery
domain_id (string)
Requiredquery (Query)
supervisor_id (string)
hostname (string)
plugin_id (string)
version (string)
state (State)
endpoint (string)
PluginsInfo
results (PluginInfo)
RepeatedRequiredtotal_count (int32)
Required
PublishSupervisorRequest
name (string)
Requiredhostname (string)
Requireddomain_id (string)
Requiredsecret_key (string)
plugin_info (PluginInfo)
Repeatedis_public (bool)
labels (ListValue)
tags (Struct)
RecoverPluginRequest
supervisor_id (string)
Requiredversion (string)
Requireddomain_id (string)
Requiredplugin_id (string)
Required
RegisterSupervisorRequest
supervisor_id (string)
Requireddomain_id (string)
Requiredname (string)
is_public (bool)
priority (int32)
labels (Struct)
tags (Struct)
SupervisorInfo
supervisor_id (string)
Requiredname (string)
Requiredhostname (string)
Requiredstate (State)
Requiredis_public (bool)
Requiredlabels (Struct)
Requiredtags (Struct)
Requireddomain_id (string)
Requiredcreated_at (string)
Requiredupdated_at (string)
Required
SupervisorQuery
domain_id (string)
Requiredquery (Query)
supervisor_id (string)
name (string)
is_public (bool)
SupervisorRequest
supervisor_id (string)
Requireddomain_id (string)
Required
SupervisorStatQuery
query (StatisticsQuery)
Requireddomain_id (string)
Required
SupervisorsInfo
results (SupervisorInfo)
RepeatedRequiredtotal_count (int32)
Required
Last updated