Fleet Control for Kubernetes clusters is generally available (GA). Support for managing agents on Linux and Windows hosts is currently in public preview.
You can use NerdGraph to programmatically manage Fleet Control fleets, members, and deployments. These mutations provide complete control over fleet operations, enabling you to automate fleet management, integrate with CI/CD pipelines, and manage instrumentation at scale.
This tutorial provides examples of the available Fleet Control mutations and queries. You can use these to create fleets, manage fleet members, and deploy agent configurations.
You can also use the Fleet Control CLI for command-line fleet management. The CLI is built on the same NerdGraph API.
중요
Agent configurations are managed through the Blob Storage API, not NerdGraph. All configuration operations use a separate REST API.
Fleet management mutations
Use the fleetControlCreateFleet mutation to create a new fleet for managing groups of Kubernetes clusters or hosts.
Input parameters
Parameter
Data type
Is it tequired?
Description
fleetEntity
Object
Yes
The fleet entity creation input containing fleet configuration.
fleetEntity.name
String
Yes
The fleet name. Must be unique within your organization.
fleetEntity.managedEntityType
Enum
Yes
The type of entities this fleet will manage. Options: HOST (for Linux/Windows hosts) or KUBERNETESCLUSTER.
fleetEntity.scope
Object
Yes
The entity scope defining whether the fleet is account-scoped or organization-scoped.
fleetEntity.scope.type
Enum
Yes
Scope type. Options: ACCOUNT or ORGANIZATION.
fleetEntity.scope.id
ID
Yes
The account ID or organization ID, depending on scope type.
fleetEntity.description
String
No
A description of the fleet's purpose.
fleetEntity.operatingSystem
Object
No
Operating system type for HOST fleets. Required if managedEntityType is HOST.
fleetEntity.operatingSystem.type
Enum
Yes (if operatingSystem provided)
OS type. Options: LINUX or WINDOWS.
fleetEntity.tags
Array
No
List of tag objects for categorizing the fleet.
Sample request
mutationCreateFleet{
fleetControlCreateFleet(
fleetEntity:{
name:"Production Web Servers"
description:"Fleet for all production Linux web server hosts"
managedEntityType:HOST
operatingSystem:{type:LINUX}
scope:{type:ACCOUNT,id:"YOUR_ACCOUNT_ID"}
tags:[
{key:"environment",values:["production"]}
{key:"team",values:["platform"]}
]
}
){
entity{
id
name
description
managedEntityType
}
}
}
Sample response
{
"data":{
"fleetControlCreateFleet":{
"entity":{
"id":"<YOUR_FLEET_ID>",
"name":"Production Web Servers",
"description":"Fleet for all production Linux web server hosts",
"managedEntityType":"HOST"
}
}
}
}
Use the fleetControlUpdateFleet mutation to update an existing fleet's name, description, or tags.
Input parameters
Parameter
Data type
Is it required?
Description
id
ID
Yes
The fleet entity ID to update.
fleetUpdate
Object
Yes
The fleet update input containing fields to modify.
fleetUpdate.name
String
No
Updated fleet name.
fleetUpdate.description
String
No
Updated fleet description.
fleetUpdate.tags
Array
No
Updated list of tags.
Sample request
mutationUpdateFleet{
fleetControlUpdateFleet(
id:"<YOUR_FLEET_ID>"
fleetUpdate:{
description:"Updated: Production web servers with enhanced monitoring"
tags:[
{key:"environment",values:["production"]}
{key:"region",values:["us-east-1","us-west-2"]}
]
}
){
entity{
id
name
description
}
}
}
Use the fleetControlDeleteFleet mutation to delete a fleet. This removes the fleet but does not uninstall agents from managed entities.
Input parameters
Parameter
Data type
Is it required?
Description
id
ID
Yes
The fleet entity ID to delete.
Sample request
mutationDeleteFleet{
fleetControlDeleteFleet(id:"<YOUR_FLEET_ID>"){
id
}
}
Fleet member management mutations
Use the fleetControlAddFleetMembers mutation to add managed entities to fleet rings. Rings allow you to organize entities within a fleet for staged rollouts (for example, canary, staging, production).
Input parameters
Parameter
Data type
Is it required?
Description
fleetId
ID
Yes
The fleet entity ID.
members
Array
Yes
List of ring inputs specifying which entities to add to which rings.
members[].ring
String
Yes
The ring name (for example, "canary", "production").