Retrieves a list of edge host of libvirt cluster
GET/v1/spectroclusters/:uid/edge/edgeHosts
Retrieves a list of edge host of libvirt cluster
Request​
Path Parameters
Cluster uid
Header Parameters
Scope the request to the specified project uid
Responses​
- 200
List of edge host device
- application/json
- Schema
- Example (from schema)
Schema
Array [
Array [
Array [
]
]
Array [
Array [
]
Array [
Array [
]
Array [
]
Array [
]
]
]
Array [
Array [
]
]
Array [
]
Array [
]
Array [
]
Array [
]
Array [
]
Array [
Array [
]
Array [
Array [
]
]
]
]
items
undefined[]
required
aclmeta
object
Resource access control information (Read-only response data)
User or service uid which created the resource
Project's uid if the resource is under a project
Tenant's uid
metadata
object
ObjectMeta is metadata that all persisted resources must have, which includes all objects users must create.
annotations
object
Annotations are system generated key value metadata for the resource. As an input certain annotations like description can be set.
Time is a wrapper around time.Time which supports correct marshaling to YAML and JSON. Wrappers are provided for many of the factory methods that the time package offers.
Time is a wrapper around time.Time which supports correct marshaling to YAML and JSON. Wrappers are provided for many of the factory methods that the time package offers.
labels
object
Labels are key value data to organize and categorize resources. Providing spectro__tag as value for a label is considered as a kubernetes compliant tag
Time is a wrapper around time.Time which supports correct marshaling to YAML and JSON. Wrappers are provided for many of the factory methods that the time package offers.
Name of the resource.
UID is the unique identifier generated for the resource. This is not an input field for any request.
spec
object
EdgeHostDeviceSpec defines the desired state of EdgeHostDevice
cloudProperties
object
Additional cloud properties of the edge host (applicable based on the cloud type)
vsphere
Vsphere cloud properties of edge host
datacenters
object[]
computeClusters
object[]
clusterProfileTemplates
object[]
packServerRefs
object[]
PackServerRefs is only used on Hubble side it is reference to pack registry servers which PackRef belongs to in hubble, pack server is a top level object, so use a reference to point to it packs within a clusterprofile can come from different pack servers, so this is an array
Kind of the referent. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds
Name of the referent.
UID of the referent.
This secret is used only on Palette side use case is similar to k8s image pull secret this single secret internally should contains all the pack servers in PackServerRefs if empty, means no credential is needed to access the pack server For spectro saas, Ally will set this field before pass to palette
packs
object[]
Packs definitions here are final definitions. If ClonedFrom and ParamsOverwrite is present, then Packs are the final merge result of ClonedFrom and ParamsOverwrite So orchestration engine will just take the Packs and do the work, no need to worry about parameters merge
annotations
object
Annotations is used to allow packref to add more arbitrary information one example is to add git reference for values.yaml
digest is used to specify the version should be installed by palette when pack upgrade available, change this digest to trigger upgrade
pack is invalid when the associated tag is deleted from the registry
Possible values: [kernel
, os
, k8s
, cni
, csi
, addon
]
path to the pack logo
manifests
object[]
Kind of the referent. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds
Name of the referent.
UID of the referent.
pack name
PackUID is Hubble packUID, not palette Pack.UID It is used by Hubble only.
params
object
params passed as env variables to be consumed at installation time
presets
object[]
pack registry uid
schema
object[]
pack registry server or helm repo
pack tag
Possible values: [spectro
, helm
, manifest
]
type of the pack
values represents the values.yaml used as input parameters either Params OR Values should be used, not both If both applied at the same time, will only use Values
pack version
version start from 1.0.0, matching the index of ClusterProfileSpec.Versions[] will be used by clusterSpec to identify which version is applied to the cluster
relatedObject
object
ObjectReference contains enough information to let you inspect or modify the referred object.
Kind of the referent. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds
Name of the referent.
UID of the referent.
Deprecated. Use profileVersion
device
object
DeviceSpec defines the desired state of Device
Possible values: [arm64
, amd64
]
Default value: amd64
Architecture type of the edge host
cpu
object
number of cpu cores
disks
object[]
partitions
object[]
Size in GB
gpus
object[]
addresses
object
Addresses is a map of PCI device entry name to its addresses. Example entry would be "11:00.0 VGA compatible controller [0300]: NVIDIA Corporation Device [10de:1eb1] (rev a1)"- > 0000_11_00_0" The address is BDF (Bus Device Function) identifier format seperated by underscores. The first 4 bits are almost always 0000. In the above example 11 is Bus, 00 is Device,0 is function. The values of these addreses are expected in hexadecimal format
Model is the model of GPU, for a given vendor, for eg., TU104GL [Tesla T4]
Vendor is the GPU vendor, for eg., NVIDIA or AMD
memory
object
memory size in bytes
nics
object[]
os
object
host
object
EdgeHost is the underlying appliance
Set to true if auto register is disabled for the device
HostAddress is a FQDN or IP address of the Host
HostAuthToken to authorize auto registration
HostChecksum is the checksum provided by the edge host, to be persisted in SaaS
hostIdentity
CACert is the client CA certificate
Mode indicates a system or session connection to the host
SocketPath is an optional path to the socket on the host, if not using defaults
sshSecret
object
SSH secret name
Private Key to access the host
HostPairingKey is the one-time pairing key to pair the edge host with the device registered in SaaS
HostUid is the ID of the EdgeHost
Mac address of edgehost
project
object
Object identity meta
properties
Additional properties of edge host
networks
object[]
NetworkName of the network where this machine will be connected
Possible values: [default
, bridge
]
NetworkType specifies the type of network
storagePools
undefined[]
service
object
ServiceSpec defines the specification of service registering edge
Possible values: [libvirt
, vsphere
, edge-native
]
Cloudtype of the provisioned edge host
status
object
EdgeHostDeviceStatus defines the observed state of EdgeHostDevice
health
EdgeHostHealth defines the desired health state of EdgeHostDevice
Possible values: [healthy
, unhealthy
]
inUseClusters
object[]
packs
object[]
condition
object
Time is a wrapper around time.Time which supports correct marshaling to YAML and JSON. Wrappers are provided for many of the factory methods that the time package offers.
Time is a wrapper around time.Time which supports correct marshaling to YAML and JSON. Wrappers are provided for many of the factory methods that the time package offers.
Human-readable message indicating details about last transition.
Unique, one-word, CamelCase reason for the condition's last transition.
Time is a wrapper around time.Time which supports correct marshaling to YAML and JSON. Wrappers are provided for many of the factory methods that the time package offers.
manifests
object[]
condition
object
Time is a wrapper around time.Time which supports correct marshaling to YAML and JSON. Wrappers are provided for many of the factory methods that the time package offers.
Time is a wrapper around time.Time which supports correct marshaling to YAML and JSON. Wrappers are provided for many of the factory methods that the time package offers.
Human-readable message indicating details about last transition.
Unique, one-word, CamelCase reason for the condition's last transition.
services
object[]
IP or Host from svc.Status.LoadBalancerStatus.Ingress
name of the loadbalancer service
ports
object[]
port this service exposed
The port that will be exposed by this service.
Time is a wrapper around time.Time which supports correct marshaling to YAML and JSON. Wrappers are provided for many of the factory methods that the time package offers.
profileStatus
object
If it is true then profile pack values has a reference to user defined macros
Possible values: [ready
, unpaired
, in-use
]
listmeta
object
ListMeta describes metadata for the resource listing
Next token for the pagination. Next token is equal to empty string indicates end of result set.
Total count of the resources which might change during pagination based on the resources addition or deletion
Number of records feteched
The next offset for the pagination. Starting index for which next request will be placed.
{
"items": [
{
"aclmeta": {
"ownerUid": "string",
"projectUid": "string",
"tenantUid": "string"
},
"metadata": {
"annotations": {},
"creationTimestamp": "2024-04-16T17:49:01.903Z",
"deletionTimestamp": "2024-04-16T17:49:01.903Z",
"labels": {},
"lastModifiedTimestamp": "2024-04-16T17:49:01.903Z",
"name": "string",
"uid": "string"
},
"spec": {
"cloudProperties": {
"vsphere": {
"datacenters": [
{
"computeClusters": [
{
"datastores": [
"string"
],
"name": "string",
"networks": [
"string"
],
"resourcePools": [
"string"
]
}
],
"folders": [
"string"
],
"name": "string"
}
]
}
},
"clusterProfileTemplates": [
{
"cloudType": "string",
"name": "string",
"packServerRefs": [
{
"kind": "string",
"name": "string",
"uid": "string"
}
],
"packServerSecret": "string",
"packs": [
{
"annotations": {},
"digest": "string",
"inValidReason": "string",
"isInvalid": true,
"layer": "kernel",
"logo": "string",
"manifests": [
{
"kind": "string",
"name": "string",
"uid": "string"
}
],
"name": "string",
"packUid": "string",
"params": {},
"presets": [
{
"add": "string",
"displayName": "string",
"group": "string",
"name": "string",
"remove": [
"string"
]
}
],
"registryUid": "string",
"schema": [
{
"format": "string",
"hints": [
"string"
],
"listOptions": [
"string"
],
"name": "string",
"readonly": true,
"regex": "string",
"required": true,
"type": "string"
}
],
"server": "string",
"tag": "string",
"type": "spectro",
"values": "string",
"version": "string"
}
],
"profileVersion": "string",
"relatedObject": {
"kind": "string",
"name": "string",
"uid": "string"
},
"type": "string",
"uid": "string",
"version": 0
}
],
"device": {
"archType": "amd64",
"cpu": {
"cores": 0
},
"disks": [
{
"controller": "string",
"partitions": [
{
"fileSystemType": "string",
"freeSpace": 0,
"mountPoint": "string",
"totalSpace": 0,
"usedSpace": 0
}
],
"size": 0,
"vendor": "string"
}
],
"gpus": [
{
"addresses": {},
"model": "string",
"vendor": "string"
}
],
"memory": {
"sizeInMB": 0
},
"nics": [
{
"dns": [
"string"
],
"gateway": "string",
"ip": "string",
"isDefault": true,
"macAddr": "string",
"nicName": "string",
"subnet": "string"
}
],
"os": {
"family": "string",
"version": "string"
}
},
"host": {
"disableAutoRegister": true,
"hostAddress": "string",
"hostAuthToken": "string",
"hostChecksum": "string",
"hostIdentity": {
"caCert": "string",
"mode": "string",
"socketPath": "string",
"sshSecret": {
"name": "string",
"privateKey": "string"
}
},
"hostPairingKey": "string",
"hostUid": "string",
"macAddress": "string",
"project": {
"name": "string",
"uid": "string"
}
},
"properties": {
"networks": [
{
"networkName": "string",
"networkType": "default"
}
],
"storagePools": [
{
"name": "string"
}
]
},
"service": {
"name": "string",
"version": "string"
},
"type": "libvirt",
"version": "string"
},
"status": {
"health": {
"agentVersion": "string",
"message": "string",
"state": "healthy"
},
"inUseClusters": [
{
"name": "string",
"uid": "string"
}
],
"packs": [
{
"condition": {
"lastProbeTime": "2024-04-16T17:49:01.904Z",
"lastTransitionTime": "2024-04-16T17:49:01.904Z",
"message": "string",
"reason": "string",
"status": "string",
"type": "string"
},
"endTime": "2024-04-16T17:49:01.904Z",
"manifests": [
{
"condition": {
"lastProbeTime": "2024-04-16T17:49:01.904Z",
"lastTransitionTime": "2024-04-16T17:49:01.904Z",
"message": "string",
"reason": "string",
"status": "string",
"type": "string"
},
"name": "string",
"uid": "string"
}
],
"name": "string",
"profileUid": "string",
"services": [
{
"host": "string",
"name": "string",
"ports": [
{
"port": 0,
"protocol": "string"
}
]
}
],
"startTime": "2024-04-16T17:49:01.904Z",
"type": "string",
"version": "string"
}
],
"profileStatus": {
"hasUserMacros": true
},
"serviceAuthToken": "string",
"state": "ready"
}
}
],
"listmeta": {
"continue": "string",
"count": 0,
"limit": 0,
"offset": 0
}
}