Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type ClusterDefaults ¶
type ClusterDefaults struct {
GatewaySizing HostSizingRequirements `json:"gateway_sizing,omitempty"` // GatewaySizing keeps the default node definition
GatewayTemplateID string `json:"gateway_template_id,omitempty"` // template id used at creation for gateways
MasterSizing HostSizingRequirements `json:"master_sizing,omitempty"` // MasterSizing keeps the default node definition
MasterTemplateID string `json:"master_template_id,omitempty"` // template ID used at creation for masters
NodeSizing HostSizingRequirements `json:"node_sizing,omitempty"` // NodeSizing keeps the default node definition
NodeTemplateID string `json:"node_template_id,omitempty"` // template ID used at creation for nodes
Image string `json:"image,omitempty"` // Image keeps the default Linux image name to use
ImageID string `json:"image_id,omitempty"` // contains the ID of the image used at creation
}
ClusterDefaults ... !!! FROZEN !!!
func (ClusterDefaults) Clone ¶
func (cd ClusterDefaults) Clone() (data.Clonable, error)
Clone ... satisfies interface data.Clonable
func (*ClusterDefaults) IsNull ¶
func (cd *ClusterDefaults) IsNull() bool
IsNull ... satisfies interface data.Clonable
type ClusterNetwork ¶
type ClusterNetwork struct {
NetworkID string `json:"network_id,omitempty"` // contains the ID of the subnet (not called SubnetID because of legacy)
CIDR string `json:"cidr,omitempty"` // the network CIDR
GatewayID string `json:"gateway_id,omitempty"` // contains the ID of the primary gateway
GatewayIP string `json:"gateway_ip,omitempty"` // contains the private IP address of the primary gateway
SecondaryGatewayID string `json:"secondary_gateway_id,omitempty"` // contains the ID of the secondary gateway
SecondaryGatewayIP string `json:"secondary_gateway_ip,omitempty"` // contains the private IP of the secondary gateway
DefaultRouteIP string `json:"default_route_ip,omitempty"` // contains the IP of the default route
PrimaryPublicIP string `json:"primary_public_ip,omitempty"` // contains the public IP of the primary gateway
SecondaryPublicIP string `json:"secondary_public_ip,omitempty"` // contains the public IP of the secondary gateway
EndpointIP string `json:"endpoint_ip,omitempty"` // contains the IP of the external Endpoint
NetworkState subnetstate.Enum `json:"status,omitempty"` // contains the subnet state (not called SubnetState because of legacy)
Domain string `json:"domain,omitempty"` // contains the domain used to define the FQDN of hosts created (taken from network)
}
ClusterNetwork contains network information relative to cluster !!! FROZEN !!!
func (ClusterNetwork) Clone ¶
func (n ClusterNetwork) Clone() (data.Clonable, error)
Clone ... satisfies interface data.Clonable
func (*ClusterNetwork) IsNull ¶
func (n *ClusterNetwork) IsNull() bool
IsNull ... satisfies interface data.Clonable
type ClusterNode ¶
type ClusterNode struct {
ID string `json:"id"` // ID of the node
NumericalID uint `json:"intid"` // Numerical (unsigned integer) ID of the node
Name string `json:"name"` // GetName of the node
PublicIP string `json:"public_ip"` // public ip of the node
PrivateIP string `json:"private_ip"` // private ip of the node
}
ClusterNode describes a node in the cluster !!! FROZEN !!!
type ClusterNodes ¶
type ClusterNodes struct {
Masters []*ClusterNode `json:"masters,omitempty"` // Masters contains the ID of the masters
PublicNodes []*ClusterNode `json:"public_nodes,omitempty"` // PublicNodes is a slice of IDs of the public cluster nodes
PrivateNodes []*ClusterNode `json:"private_nodes,omitempty"` // PrivateNodes is a slice of IDs of the private cluster nodes
MasterLastIndex int `json:"master_last_index,omitempty"` // MasterLastIndex
PrivateLastIndex int `json:"private_last_index,omitempty"` // PrivateLastIndex
PublicLastIndex int `json:"public_last_index,omitempty"` // PublicLastIndex
GlobalLastIndex uint `json:"global_last_index,omitempty"` // is used to keep of the index associated to the last created node
}
ClusterNodes contains all the nodes created in the cluster !!! FROZEN !!!
func (ClusterNodes) Clone ¶
func (n ClusterNodes) Clone() (data.Clonable, error)
Clone ... satisfies interface data.Clonable
func (*ClusterNodes) IsNull ¶
func (n *ClusterNodes) IsNull() bool
IsNull ... satisfies interface data.Clonable
type HostEffectiveSizing ¶
type HostEffectiveSizing struct {
Cores int `json:"cores,omitempty"`
RAMSize float32 `json:"ram_size,omitempty"`
DiskSize int `json:"disk_size,omitempty"`
GPUNumber int `json:"gpu_number,omitempty"`
GPUType string `json:"gpu_type,omitempty"`
CPUFreq float32 `json:"cpu_freq,omitempty"`
}
HostEffectiveSizing represent sizing elements of a host !!! FROZEN !!! Note: if tagged as FROZEN, must not be changed ever.
Create a new version instead with needed supplemental fields
func NewHostEffectiveSizing ¶
func NewHostEffectiveSizing() *HostEffectiveSizing
NewHostEffectiveSizing ...
func (*HostEffectiveSizing) IsNull ¶
func (hes *HostEffectiveSizing) IsNull() bool
IsNull tells if the struct is a null value
type HostNetworking ¶
type HostNetworking struct {
DefaultSubnetID string `json:"default_subnet_id,omitempty"` // contains the ID of the default subnet
PublicIPv4 string `json:"public_ip_v4,omitempty"`
PublicIPv6 string `json:"public_ip_v6,omitempty"`
SubnetsByID map[string]string `json:"subnet_by_id,omitempty"` // contains the name of each subnet bound to the host (indexed by ID)
SubnetsByName map[string]string `json:"subnet_by_name,omitempty"` // contains the ID of each subnet bound to the host (indexed by Name)
IPv4Addresses map[string]string `json:"ipv4_addresses,omitempty"` // contains ipv4 (indexed by network ID) allocated to the host
IPv6Addresses map[string]string `json:"ipv6_addresses,omitempty"` // contains ipv6 (indexed by Networking ID) allocated to the host
IsGateway bool `json:"is_gateway,omitempty"` // Tells if host is a gateway of a Subnet
Single bool `json:"single,omitempty"` // Tells if the Host is single
}
HostNetworking contains network information related to Host !!! FROZEN !!! Note: if tagged as FROZEN, must not be changed ever.
Create a new version instead with needed supplemental fields
func (HostNetworking) Clone ¶
func (hn HostNetworking) Clone() (data.Clonable, error)
Clone ... satisfies interface data.Clonable
func (*HostNetworking) IsNull ¶
func (hn *HostNetworking) IsNull() bool
IsNull tells if the HostNetworking corresponds to a null value
func (*HostNetworking) Reset ¶
func (hn *HostNetworking) Reset()
Reset resets the content of the property
type HostSizing ¶
type HostSizing struct {
RequestedSize *HostSizingRequirements `json:"requested_size,omitempty"`
Template string `json:"template,omitempty"`
AllocatedSize *HostEffectiveSizing `json:"allocated_size,omitempty"`
}
HostSizing contains sizing information about the host !!! FROZEN !!! Note: if tagged as FROZEN, must not be changed ever.
Create a new version instead with needed supplemental fields
func (HostSizing) Clone ¶
func (hs HostSizing) Clone() (data.Clonable, error)
Clone ... (data.Clonable interface)
func (*HostSizing) IsNull ¶
func (hs *HostSizing) IsNull() bool
IsNull ... satisfies interface data.Clonable
type HostSizingRequirements ¶
type HostSizingRequirements struct {
MinCores int `json:"min_cores,omitempty"`
MaxCores int `json:"max_cores,omitempty"`
MinRAMSize float32 `json:"min_ram_size,omitempty"`
MaxRAMSize float32 `json:"max_ram_size,omitempty"`
MinDiskSize int `json:"min_disk_size,omitempty"`
MinGPU int `json:"min_gpu,omitempty"`
MinCPUFreq float32 `json:"min_freq,omitempty"`
Replaceable bool `json:"replaceable,omitempty"` // Tells if we accept host that could be removed without notice (AWS proposes such kind of server known as SPOT)
}
HostSizingRequirements describes host sizing requirements to fulfill !!! FROZEN !!! Note: if tagged as FROZEN, must not be changed ever.
Create a new version instead with needed supplemental fields
func NewHostSizingRequirements ¶
func NewHostSizingRequirements() *HostSizingRequirements
NewHostSizingRequirements ...
func (*HostSizingRequirements) IsNull ¶
func (hsr *HostSizingRequirements) IsNull() bool
IsNull tells if the struct is a null value