Skip to main content

Registers the edge host device

POST 

/v1/edgehosts/register

Registers the edge host device

Request

Header Parameters

    ProjectUid string

    Scope the request to the specified project uid

Body

    aclmeta object

    Resource access control information (Read-only response data)

    ownerUidstring

    User or service uid which created the resource

    projectUidstring

    Project's uid if the resource is under a project

    tenantUidstring

    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

    property name*string
    creationTimestampdate-time

    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.

    deletionTimestampdate-time

    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

    property name*string
    lastModifiedTimestampdate-time

    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.

    namestring

    Name of the resource

    uidstring

    UID is the unique identifier generated for the resource. This is not an input field for any request.

    Populated by the system. Read-only.

    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[]
  • Array [
  • computeClusters object[]
  • Array [
  • datastoresstring[]
    namestring
    networksstring[]
    resourcePoolsstring[]
  • ]
  • foldersstring[]
    namestring
  • ]
  • clusterProfileTemplates object[]
  • Array [
  • cloudTypestring

    Possible values: [all, aws, azure, gcp, vsphere, openstack, maas, nested, baremetal, eks, aks, edge, edge-native, libvirt, tencent, tke, coxedge, generic, gke]

    Default value: all

    namestring
    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

  • Array [
  • kindstring

    Kind of the referent. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds

    namestring

    Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names

    uidstring

    UID of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids

  • ]
  • packServerSecretstring

    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

  • Array [
  • annotations object

    Annotations is used to allow packref to add more arbitrary information one example is to add git reference for values.yaml

    property name*string
    digeststring

    digest is used to specify the version should be installed by palette when pack upgrade available, change this digest to trigger upgrade

    inValidReasonstring
    isInvalidboolean

    pack is invalid when the associated tag is deleted from the registry

    layerstringrequired

    Possible values: [kernel, os, k8s, cni, csi, addon]

    manifests object[]
  • Array [
  • kindstring

    Kind of the referent. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds

    namestring

    Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names

    uidstring

    UID of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids

  • ]
  • namestringrequired

    pack name

    packUidstring

    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

    property name*string
    presets object[]
  • Array [
  • addstring
    displayNamestring
    groupstring
    namestring
    removestring[]
  • ]
  • registryUidstring

    pack registry uid

    schema object[]
  • Array [
  • formatstring
    hintsstring[]
    listOptionsstring[]
    namestring
    readonlyboolean
    regexstring
    requiredboolean
    typestring
  • ]
  • serverstring

    pack registry server or helm repo

    tagstring

    pack tag

    typestring

    Possible values: [spectro, helm, manifest]

    type of the pack

    valuesstring

    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

    versionstring

    pack version

  • ]
  • profileVersionstring

    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.

    kindstring

    Kind of the referent. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds

    namestring

    Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names

    uidstring

    UID of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids

    typestring
    uidstring
    versionint32

    Deprecated. Use profileVersion

  • ]
  • device object

    DeviceSpec defines the desired state of Device

    archTypestring

    Possible values: [arm64, amd64]

    Default value: amd64

    Architecture type of the edge host

    cpu object
    coresint32

    number of cpu cores

    disks object[]
  • Array [
  • controllerstring
    partitions object[]
  • Array [
  • fileSystemTypestring
    freeSpaceint32
    mountPointstring
    totalSpaceint32
    usedSpaceint32
  • ]
  • sizeint32

    Size in GB

    vendorstring
  • ]
  • gpus object[]
  • Array [
  • 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

    property name*string
    modelstring

    Model is the model of GPU, for a given vendor, for eg., TU104GL [Tesla T4]

    vendorstring

    Vendor is the GPU vendor, for eg., NVIDIA or AMD

  • ]
  • memory object
    sizeInMBint64

    memory size in bytes

    nics object[]
  • Array [
  • dnsstring[]
    gatewaystring
    ipstring
    isDefaultboolean
    macAddrstring
    nicNamestring
    subnetstring
  • ]
  • os object
    familystring
    versionstring
    host object

    EdgeHost is the underlying appliance

    disableAutoRegisterboolean

    Set to true if auto register is disabled for the device

    hostAddressstringrequired

    HostAddress is a FQDN or IP address of the Host

    hostAuthTokenstring

    HostAuthToken to authorize auto registration

    hostChecksumstring

    HostChecksum is the checksum provided by the edge host, to be persisted in SaaS

    hostIdentity

    HostIdentity is the identity to access the edge host

    caCertstring

    CACert is the client CA certificate

    modestring

    Mode indicates a system or session connection to the host

    socketPathstring

    SocketPath is an optional path to the socket on the host, if not using defaults

    sshSecret object

    SSHSecret to the secret containing ssh-username

    namestring

    SSH secret name

    privateKeystring

    Private Key to access the host

    hostPairingKeypassword

    HostPairingKey is the one-time pairing key to pair the edge host with the device registered in SaaS

    hostUidstringrequired

    HostUid is the ID of the EdgeHost

    macAddressstring

    Mac address of edgehost

    project object

    Object identity meta

    namestring
    uidstring
    properties

    Additional properties of edge host

    networks object[]
  • Array [
  • networkNamestringrequired

    NetworkName of the network where this machine will be connected

    networkTypestringrequired

    Possible values: [default, bridge]

    NetworkType specifies the type of network

  • ]
  • storagePools undefined[]
  • Array [
  • namestring
  • ]
  • service object

    ServiceSpec defines the specification of service registering edge

    namestring
    versionstring
    typestring

    Possible values: [libvirt, vsphere, edge-native]

    Cloudtype of the provisioned edge host

    versionstring
    status object

    EdgeHostDeviceStatus defines the observed state of EdgeHostDevice

    health

    EdgeHostHealth defines the desired health state of EdgeHostDevice

    agentVersionstring
    messagestring
    statestring

    Possible values: [healthy, unhealthy]

    inUseClusters object[]
  • Array [
  • namestring
    uidstring
  • ]
  • packs object[]
  • Array [
  • condition object
    lastProbeTimedate-time

    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.

    lastTransitionTimedate-time

    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.

    messagestring

    Human-readable message indicating details about last transition.

    reasonstring

    Unique, one-word, CamelCase reason for the condition's last transition.

    statusstringrequired
    typestringrequired
    endTimedate-time

    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[]
  • Array [
  • condition object
    lastProbeTimedate-time

    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.

    lastTransitionTimedate-time

    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.

    messagestring

    Human-readable message indicating details about last transition.

    reasonstring

    Unique, one-word, CamelCase reason for the condition's last transition.

    statusstringrequired
    typestringrequired
    namestring
    uidstring
  • ]
  • namestring
    profileUidstring
    services object[]
  • Array [
  • hoststring

    IP or Host from svc.Status.LoadBalancerStatus.Ingress

    namestring

    name of the loadbalancer service

    ports object[]

    port this service exposed

  • Array [
  • portint32required

    The port that will be exposed by this service.

    protocolstring
  • ]
  • ]
  • startTimedate-time

    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.

    typestring
    versionstring
  • ]
  • profileStatus object
    hasUserMacrosboolean

    If it is true then profile pack values has a reference to user defined macros

    serviceAuthTokenstring
    statestring

    Possible values: [ready, unpaired, in-use]

Responses

OK

Schema
    aclmeta object

    Resource access control information (Read-only response data)

    ownerUidstring

    User or service uid which created the resource

    projectUidstring

    Project's uid if the resource is under a project

    tenantUidstring

    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

    property name*string
    creationTimestampdate-time

    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.

    deletionTimestampdate-time

    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

    property name*string
    lastModifiedTimestampdate-time

    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.

    namestring

    Name of the resource

    uidstring

    UID is the unique identifier generated for the resource. This is not an input field for any request.

    Populated by the system. Read-only.

    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[]
  • Array [
  • computeClusters object[]
  • Array [
  • datastoresstring[]
    namestring
    networksstring[]
    resourcePoolsstring[]
  • ]
  • foldersstring[]
    namestring
  • ]
  • clusterProfileTemplates object[]
  • Array [
  • cloudTypestring

    Possible values: [all, aws, azure, gcp, vsphere, openstack, maas, nested, baremetal, eks, aks, edge, edge-native, libvirt, tencent, tke, coxedge, generic, gke]

    Default value: all

    namestring
    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

  • Array [
  • kindstring

    Kind of the referent. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds

    namestring

    Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names

    uidstring

    UID of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids

  • ]
  • packServerSecretstring

    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

  • Array [
  • annotations object

    Annotations is used to allow packref to add more arbitrary information one example is to add git reference for values.yaml

    property name*string
    digeststring

    digest is used to specify the version should be installed by palette when pack upgrade available, change this digest to trigger upgrade

    inValidReasonstring
    isInvalidboolean

    pack is invalid when the associated tag is deleted from the registry

    layerstringrequired

    Possible values: [kernel, os, k8s, cni, csi, addon]

    manifests object[]
  • Array [
  • kindstring

    Kind of the referent. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds

    namestring

    Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names

    uidstring

    UID of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids

  • ]
  • namestringrequired

    pack name

    packUidstring

    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

    property name*string
    presets object[]
  • Array [
  • addstring
    displayNamestring
    groupstring
    namestring
    removestring[]
  • ]
  • registryUidstring

    pack registry uid

    schema object[]
  • Array [
  • formatstring
    hintsstring[]
    listOptionsstring[]
    namestring
    readonlyboolean
    regexstring
    requiredboolean
    typestring
  • ]
  • serverstring

    pack registry server or helm repo

    tagstring

    pack tag

    typestring

    Possible values: [spectro, helm, manifest]

    type of the pack

    valuesstring

    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

    versionstring

    pack version

  • ]
  • profileVersionstring

    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.

    kindstring

    Kind of the referent. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds

    namestring

    Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names

    uidstring

    UID of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids

    typestring
    uidstring
    versionint32

    Deprecated. Use profileVersion

  • ]
  • device object

    DeviceSpec defines the desired state of Device

    archTypestring

    Possible values: [arm64, amd64]

    Default value: amd64

    Architecture type of the edge host

    cpu object
    coresint32

    number of cpu cores

    disks object[]
  • Array [
  • controllerstring
    partitions object[]
  • Array [
  • fileSystemTypestring
    freeSpaceint32
    mountPointstring
    totalSpaceint32
    usedSpaceint32
  • ]
  • sizeint32

    Size in GB

    vendorstring
  • ]
  • gpus object[]
  • Array [
  • 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

    property name*string
    modelstring

    Model is the model of GPU, for a given vendor, for eg., TU104GL [Tesla T4]

    vendorstring

    Vendor is the GPU vendor, for eg., NVIDIA or AMD

  • ]
  • memory object
    sizeInMBint64

    memory size in bytes

    nics object[]
  • Array [
  • dnsstring[]
    gatewaystring
    ipstring
    isDefaultboolean
    macAddrstring
    nicNamestring
    subnetstring
  • ]
  • os object
    familystring
    versionstring
    host object

    EdgeHost is the underlying appliance

    disableAutoRegisterboolean

    Set to true if auto register is disabled for the device

    hostAddressstringrequired

    HostAddress is a FQDN or IP address of the Host

    hostAuthTokenstring

    HostAuthToken to authorize auto registration

    hostChecksumstring

    HostChecksum is the checksum provided by the edge host, to be persisted in SaaS

    hostIdentity

    HostIdentity is the identity to access the edge host

    caCertstring

    CACert is the client CA certificate

    modestring

    Mode indicates a system or session connection to the host

    socketPathstring

    SocketPath is an optional path to the socket on the host, if not using defaults

    sshSecret object

    SSHSecret to the secret containing ssh-username

    namestring

    SSH secret name

    privateKeystring

    Private Key to access the host

    hostPairingKeypassword

    HostPairingKey is the one-time pairing key to pair the edge host with the device registered in SaaS

    hostUidstringrequired

    HostUid is the ID of the EdgeHost

    macAddressstring

    Mac address of edgehost

    project object

    Object identity meta

    namestring
    uidstring
    properties

    Additional properties of edge host

    networks object[]
  • Array [
  • networkNamestringrequired

    NetworkName of the network where this machine will be connected

    networkTypestringrequired

    Possible values: [default, bridge]

    NetworkType specifies the type of network

  • ]
  • storagePools undefined[]
  • Array [
  • namestring
  • ]
  • service object

    ServiceSpec defines the specification of service registering edge

    namestring
    versionstring
    typestring

    Possible values: [libvirt, vsphere, edge-native]

    Cloudtype of the provisioned edge host

    versionstring
    status object

    EdgeHostDeviceStatus defines the observed state of EdgeHostDevice

    health

    EdgeHostHealth defines the desired health state of EdgeHostDevice

    agentVersionstring
    messagestring
    statestring

    Possible values: [healthy, unhealthy]

    inUseClusters object[]
  • Array [
  • namestring
    uidstring
  • ]
  • packs object[]
  • Array [
  • condition object
    lastProbeTimedate-time

    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.

    lastTransitionTimedate-time

    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.

    messagestring

    Human-readable message indicating details about last transition.

    reasonstring

    Unique, one-word, CamelCase reason for the condition's last transition.

    statusstringrequired
    typestringrequired
    endTimedate-time

    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[]
  • Array [
  • condition object
    lastProbeTimedate-time

    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.

    lastTransitionTimedate-time

    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.

    messagestring

    Human-readable message indicating details about last transition.

    reasonstring

    Unique, one-word, CamelCase reason for the condition's last transition.

    statusstringrequired
    typestringrequired
    namestring
    uidstring
  • ]
  • namestring
    profileUidstring
    services object[]
  • Array [
  • hoststring

    IP or Host from svc.Status.LoadBalancerStatus.Ingress

    namestring

    name of the loadbalancer service

    ports object[]

    port this service exposed

  • Array [
  • portint32required

    The port that will be exposed by this service.

    protocolstring
  • ]
  • ]
  • startTimedate-time

    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.

    typestring
    versionstring
  • ]
  • profileStatus object
    hasUserMacrosboolean

    If it is true then profile pack values has a reference to user defined macros

    serviceAuthTokenstring
    statestring

    Possible values: [ready, unpaired, in-use]

Loading...