shared

package
v0.0.0-...-4be979a Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 17, 2025 License: Apache-2.0 Imports: 0 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type HostAZ

type HostAZ struct {
	// Name of the OpenStack compute host.
	ComputeHost string `db:"compute_host"`
	// Availability zone of the compute host, if available.
	AvailabilityZone *string `db:"availability_zone"`
}

func (HostAZ) Indexes

func (HostAZ) Indexes() map[string][]string

Indexes for the feature.

func (HostAZ) TableName

func (HostAZ) TableName() string

Table under which the feature is stored.

type HostCapabilities

type HostCapabilities struct {
	// Name of the OpenStack compute host.
	ComputeHost string `db:"compute_host"`
	// Comma-separated list of traits assigned to the compute host.
	Traits string `db:"traits"`
	// The type of hypervisor running on the compute host.
	HypervisorType string `db:"hypervisor_type"`
}

Feature that maps the traits of a compute host in OpenStack.

func (HostCapabilities) Indexes

func (HostCapabilities) Indexes() map[string][]string

Indexes for the feature.

func (HostCapabilities) TableName

func (HostCapabilities) TableName() string

Table under which the feature is stored.

type HostPinnedProjects

type HostPinnedProjects struct {
	// The name of the aggregate where the filter is defined
	AggregateName *string `db:"aggregate_name"`
	// UUID of the aggregate where the filter is defined
	AggregateUUID *string `db:"aggregate_uuid"`
	// Tenant ID that belongs to the filter
	ProjectID *string `db:"project_id"`
	// Domain ID of the project
	DomainID *string `db:"domain_id"`
	// Combination of project name and domain name
	Label *string `db:"label"`
	// Name of the OpenStack compute host.
	ComputeHost *string `db:"compute_host"`
}

HostPinnedProjects represents the mapping between compute hosts and their tenant restrictions. This feature tracks which projects are allowed on specific hosts based on Nova aggregate tenant isolation filters. Hosts without restrictions have a NULL project_id, indicating they accept workloads from any project. See the docs: https://docs.openstack.org/nova/latest/admin/scheduling.html#aggregatemultitenancyisolation

func (HostPinnedProjects) Indexes

func (HostPinnedProjects) Indexes() map[string][]string

Indexes for the feature.

func (HostPinnedProjects) TableName

func (HostPinnedProjects) TableName() string

Table under which the feature is stored.

type HostUtilization

type HostUtilization struct {
	// Name of the OpenStack compute host.
	ComputeHost string `db:"compute_host" json:"computeHost"`

	// VCPU resource usage
	VCPUsUsed             float64 `db:"vcpus_used" json:"vcpusUsed"`
	VCPUsUtilizedPct      float64 `db:"vcpus_utilized_pct" json:"vcpusUtilizedPct"`
	TotalVCPUsAllocatable float64 `db:"total_vcpus_allocatable" json:"totalVCPUsAllocatable"`

	// RAM resource usage
	RAMUsedMB             float64 `db:"ram_used_mb" json:"ramUsedMB"`
	RAMUtilizedPct        float64 `db:"ram_utilized_pct" json:"ramUtilizedPct"`
	TotalRAMAllocatableMB float64 `db:"total_ram_allocatable_mb" json:"totalRAMAllocatableMB"`

	// Disk resource usage
	DiskUsedGB             float64 `db:"disk_used_gb" json:"diskUsedGB"`
	DiskUtilizedPct        float64 `db:"disk_utilized_pct" json:"diskUtilizedPct"`
	TotalDiskAllocatableGB float64 `db:"total_disk_allocatable_gb" json:"totalDiskAllocatableGB"`
}

Feature that maps how many resources are utilized on a compute host.

func (HostUtilization) Indexes

func (HostUtilization) Indexes() map[string][]string

Indexes for the feature.

func (HostUtilization) TableName

func (HostUtilization) TableName() string

Table under which the feature is stored.

type VMHostResidency

type VMHostResidency struct {
	// Time the vm stayed on the host in seconds.
	Duration int `db:"duration"`
	// Flavor name of the virtual machine.
	FlavorName string `db:"flavor_name"`
	// The UUID of the virtual machine.
	InstanceUUID string `db:"instance_uuid"`
	// The migration uuid.
	MigrationUUID string `db:"migration_uuid"`
	// The host the VM was running on and needed to move out.
	SourceHost string `db:"source_host"`
	// The host the VM was moved to.
	TargetHost string `db:"target_host"`
	// The source node the VM was running on and needed to move out.
	SourceNode string `db:"source_node"`
	// The target node the VM was moved to.
	TargetNode string `db:"target_node"`
	// Who forced the VM to move out.
	UserID string `db:"user_id"`
	// To which project the user belongs that forced the VM to move out.
	ProjectID string `db:"project_id"`
	// Migration type (live-migration or resize).
	Type string `db:"type"`
	// Time when the migration was triggered in seconds since epoch.
	Time int `db:"time"`
}

Feature that describes how long a vm was running on a host until it needed to move out, and the reason for the move (i.e., who forced it to move).

func (VMHostResidency) Indexes

func (VMHostResidency) Indexes() map[string][]string

Indexes for the feature.

func (VMHostResidency) TableName

func (VMHostResidency) TableName() string

Table under which the feature is stored.

type VMLifeSpanHistogramBucket

type VMLifeSpanHistogramBucket struct {
	// Flavor name of the virtual machine.
	FlavorName string `db:"flavor_name"`
	// The bucket this life span falls into.
	Bucket float64 `db:"bucket"`
	// The value of the bucket.
	Value uint64 `db:"value"`
	// The count of vms that fell into this bucket.
	Count uint64 `db:"count"`
	// The sum of all durations that fell into this bucket.
	Sum float64 `db:"sum"`
}

Feature that describes how long a vm existed before it was deleted.

func (VMLifeSpanHistogramBucket) Indexes

func (VMLifeSpanHistogramBucket) Indexes() map[string][]string

Indexes for the feature.

func (VMLifeSpanHistogramBucket) TableName

func (VMLifeSpanHistogramBucket) TableName() string

Table under which the feature is stored.

type VMLifeSpanRaw

type VMLifeSpanRaw struct {
	// Time the vm stayed on the host in seconds.
	Duration int `db:"duration"`
	// Flavor name of the virtual machine.
	FlavorName string `db:"flavor_name"`
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL