mcis

package
v0.1.1 Latest Latest
Warning

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

Go to latest
Published: Jun 13, 2024 License: Apache-2.0 Imports: 2 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type AgentInstallContent

type AgentInstallContent struct {
	McisID string `json:"mcisId"`
	Result string `json:"result"`
	VmID   string `json:"vmId"`
	VmIp   string `json:"vmIp"`
}

type AgentInstallContentWrapper

type AgentInstallContentWrapper struct {
	ResultArray AgentInstallContent `json:"resultArray"`
}

type AutoAction

type AutoAction struct {
	ActionType    string     `json:"actionType"`
	PlacementAlgo string     `json:"placementAlgo"`
	PostCommand   McisCmdReq `json:"postCommand"`
	Vm            TbVmInfo   `json:"vm"`
}

type AutoCondition

type AutoCondition struct {
	EvaluationPeriod string   `json:"evaluationPeriod"`
	EvaluationValue  []string `json:"evaluationValue"`

	Metric   string `json:"metric"`
	Operand  string `json:"operand"`
	Operator string `json:"operator"`
}

type BenchmarkInfo

type BenchmarkInfo struct {
	Desc        string             `json:"desc"`
	Elapsed     string             `json:"elapsed"`
	Result      string             `json:"result"`
	ResultArray StructElementCycle `json:"struct-element-cycle"` //?
	SpecID      string             `json:"specid"`
	Unit        string             `json:"unit"`
}

type BenchmarkInfos

type BenchmarkInfos []BenchmarkInfo

type CheckMcisDynamicReqInfo

type CheckMcisDynamicReqInfo struct {
	ReqCheck []CheckVmDynamicReqInfo `json:"reqCheck"`
}

type CheckVmDynamicReqInfo

type CheckVmDynamicReqInfo struct {
	ConnectionConfigCandidates []string          `json:"connectionConfigCandidates"`
	Region                     tbcommon.TbRegion `json:"region"`
	SystemMessage              string            `json:"systemMessage"`
	VmSpec                     tbmcir.TbSpecInfo `json:"vmSpec"`
}

type DeploymentPlan

type DeploymentPlan struct {
	Filter   FilterInfo   `json:"filter"`
	Limit    string       `json:"limit"`
	Priority PriorityInfo `json:"priority"`
}

type FilterCondition

type FilterCondition struct {
	Condition []Operation `json:"condition"`
	Metric    string      `json:"metric"`
}

type FilterInfo

type FilterInfo struct {
	Policy []FilterCondition `json:"policy"`
}

type InspectOverview

type InspectOverview struct {
	SecurityGroup int `json:"securityGroup"`
	SshKey        int `json:"sshKey"`
	VNet          int `json:"vNet"`
	Vm            int `json:"vm"`
}

type InspectResource

type InspectResource struct {
	ConnectionName   string                `json:"connectionName"`
	ResourceOverview ResourceCountOverview `json:"resourceOverview"`
	ResourceType     string                `json:"resourceType"`
	Resources        ResourcesByManageType `json:"resources"`
	SystemMessage    string                `json:"systemMessage"`
}

type InspectResourceAllResult

type InspectResourceAllResult struct {
	AvailableConnection  int                     `json:"availableConnection"`
	CspOnlyOverview      InspectOverview         `json:"cspOnlyOverview"`
	ElapsedTime          int                     `json:"elapsedTime"`
	InspectResult        []InspectResourceResult `json:"inspectResult"`
	RegisteredConnection int                     `json:"registeredConnection"`
	TumblebugOverview    InspectOverview         `json:"tumblebugOverview"`
}

type InspectResourceResult

type InspectResourceResult struct {
	ConnectionName    string          `json:"connectionName"`
	CspOnlyOverview   InspectOverview `json:"cspOnlyOverview"`
	ElapsedTime       int             `json:"elapsedTime"`
	SystemMessage     string          `json:"systemMessage"`
	TumblebugOverview InspectOverview `json:"tumblebugOverview"`
}

type McisCmdReq

type McisCmdReq struct {
	Command  string `json:"command"`
	UserName string `json:"userName"`
}

type McisConnectionConfigCandidatesReq

type McisConnectionConfigCandidatesReq struct {
	CommonSpec []string `json:"commonSpec"`
}

type McisPolicyInfo

type McisPolicyInfo struct {
	ID          string `json:"id"`
	Name        string `json:"name"`
	ActionLog   string `json:"actionLog"`
	Description string `json:"description"`
	// contains filtered or unexported fields
}

type McisStatusInfo

type McisStatusInfo struct {
	ID              string           `json:"id"`
	InstallMonAgent string           `json:"installMonAgent"` // yes, no
	Label           string           `json:"label"`
	MasterIp        string           `json:"masterIp"`
	MasterSSHPort   string           `json:"masterSSHPort"`
	MasterVmID      string           `json:"masterVmId"`
	Name            string           `json:"name"`
	Status          string           `json:"status"`
	StatusCount     StatusCountInfo  `json:"statusCount"`
	SystemLabel     string           `json:"systemLabel"`
	TargetAction    string           `json:"targetAction"`
	TargetStatus    string           `json:"targetStatus"`
	Vm              []TbVmStatusInfo `json:"vm"`
}

type McisStatusInfos

type McisStatusInfos []McisStatusInfo

type MonResultSimple

type MonResultSimple struct {
	Err    string `json:"err"`
	Metric string `json:"metric"` // yes, no
	Value  string `json:"value"`
	VmId   string `json:"vmId"`
}

type MonResultSimpleResponse

type MonResultSimpleResponse struct {
	McisID         string          `json:"mcisId"`
	McisMonitoring MonResultSimple `json:"mcisMonitoring"` // yes, no
	NamespaceID    string          `json:"nsId"`
}

type NetworkReq

type NetworkReq struct {
	EtcdEndpoints   []string `json:"etcdEndpoints"`
	ServiceEndpoint string   `json:"serviceEndpoint"`
}

type Operation

type Operation struct {
	Operand  string `json:"operand"`
	Operator string `json:"operator"` //  >=, =, <=, ==
}

type ParameterKeyVal

type ParameterKeyVal struct {
	Key string   `json:"key"`
	Val []string `json:"val"` //  >=, =, <=, ==
}

type Policies

type Policies []Policy

type Policy

type Policy struct {
	AutoAction    AutoAction    `json:"autoAction"`
	AutoCondition AutoCondition `json:"autoCondition"`
	Status        string        `json:"status"`
}

type PriorityCondition

type PriorityCondition struct {
	Metric    string            `json:"metric"`
	Parameter []ParameterKeyVal `json:"parameter"`
	Weight    string            `json:"weight"`
}

type PriorityInfo

type PriorityInfo struct {
	Policy []PriorityCondition `json:"policy"`
}

type RegionInfo

type RegionInfo struct {
	Region string `json:"region"`
	Zone   string `json:"zone"`
}

type RegisterResourceAllResult

type RegisterResourceAllResult struct {
	RegisterationResult []RegisterResourceResult `json:"registerationResult"`
}

type RegisterResourceResult

type RegisterResourceResult struct {
	ConnectionName        string                `json:"connectionName"`
	ElapsedTime           int                   `json:"elapsedTime"`
	RegisterationOutputs  tbcommon.TbIdList     `json:"registerationOutputs"`
	RegisterationOverview RegisterationOverview `json:"registerationOverview"`
	SystemMessage         string                `json:"systemMessage"`
}

type RegisterationOverview

type RegisterationOverview struct {
	Failed        int `json:"failed"`
	SecurityGroup int `json:"securityGroup"`
	SshKey        int `json:"sshKey"`
	VNet          int `json:"vNet"`
	Vm            int `json:"vm"`
}

type ResourceCountOverview

type ResourceCountOverview struct {
	OnCspOnly   int `json:"onCspOnly"`
	OnCspTotal  int `json:"onCspTotal"`
	OnSpider    int `json:"onSpider"`
	OnTumblebug int `json:"onTumblebug"`
}

type ResourceOnCsp

type ResourceOnCsp struct {
	Count int                 `json:"count"`
	Info  []ResourceOnCspInfo `json:"info"`
}

ResourcesOnCsp 와 ResourcesOnSpider 가 동일하여 ResourecesOnCspOrSpider 로 사용하는 것 같음.

type ResourceOnCspInfo

type ResourceOnCspInfo struct {
	IdByCsp     string `json:"idByCsp"`
	RefNameOrId string `json:"refNameOrId"`
}

type ResourceOnSpider

type ResourceOnSpider struct {
	Count int                    `json:"count"`
	Info  []ResourceOnSpiderInfo `json:"info"`
}

ResourcesOnCsp 와 ResourcesOnSpider 가 동일하여 ResourecesOnCspOrSpider 로 사용하는 것 같음.

type ResourceOnSpiderInfo

type ResourceOnSpiderInfo struct {
	IdByCsp string `json:"idByCsp"`
	IdBySp  string `json:"idBySp"`
}

type ResourceOnTumblebug

type ResourceOnTumblebug struct {
	Count int                       `json:"count"`
	Info  []ResourceOnTumblebugInfo `json:"info"`
}

type ResourceOnTumblebugInfo

type ResourceOnTumblebugInfo struct {
	IdByCsp   string `json:"idByCsp"`
	IdByTb    string `json:"idByTb"`
	McisId    string `json:"mcisId"`
	NsId      string `json:"nsId"`
	ObjectKey string `json:"objectKey"`
}

type ResourcesByManageType

type ResourcesByManageType struct {
	OnCspOnly   ResourceOnCsp       `json:"onCspOnly"`
	OnCspTotal  ResourceOnCsp       `json:"onCspTotal"`
	OnSpider    ResourceOnSpider    `json:"onSpider"`
	OnTumblebug ResourceOnTumblebug `json:"onTumblebug"`
}

type RestGetAllBenchmarkRequest

type RestGetAllBenchmarkRequest struct {
	Host string `json:"host"`
}

type RestGetAllMcisPolicyResponse

type RestGetAllMcisPolicyResponse struct {
	McisPolicy McisPolicyInfo `json:"mcisPolicy"`
}

type RestGetAllMcisResponse

type RestGetAllMcisResponse struct {
	Mcis []TbMcisInfo `json:"mcis"`
}

type RestGetBenchmarkRequest

type RestGetBenchmarkRequest struct {
	Host string `json:"host"`
}

type RestPostCmdMcisResponse

type RestPostCmdMcisResponse struct {
	McisID string `json:"mcisId"`
	Result string `json:"result"`
	VmID   string `json:"vmId"`
	VmIp   string `json:"vmIp"`
}

type RestPostCmdMcisResponseWrapper

type RestPostCmdMcisResponseWrapper struct {
	ResultArray []RestPostCmdMcisResponse `json:"resultArray"`
}

type RestPostCmdMcisVmResponse

type RestPostCmdMcisVmResponse struct {
	Result string `json:"result"`
}

type SpiderVMInfo

type SpiderVMInfo struct {
	CspId            string                `json:"cspid"`
	IID              tbcommon.TbIID        `json:"iid"`
	ImageIID         tbcommon.TbIID        `json:"imageIId"`
	KeyPairIID       tbcommon.TbIID        `json:"keyPairIId"`
	KeyPairName      string                `json:"keyPairName"`
	KeyValueList     []tbcommon.TbKeyValue `json:"keyValueList"`
	Name             string                `json:"name"`
	NetworkInterface string                `json:"networkInterface"`

	PrivateDns         string           `json:"networkInterface"`
	PrivateIP          string           `json:"privateIP"`
	PublicDns          string           `json:"publicDns"`
	PublicIP           string           `json:"publicIP"`
	Region             RegionInfo       `json:"region"`
	SecurityGroupIIds  []tbcommon.TbIID `json:"securityGroupIIds"`
	SecurityGroupNames []string         `json:"securityGroupNames"`

	SshaccessPoint string `json:"sshaccessPoint"`
	StartTime      string `json:"startTime"`

	SubnetIID  tbcommon.TbIID `json:"subnetIID"`
	SubnetName string         `json:"subnetName"`

	VmblockDisk  string `json:"vmblockDisk"`
	VmbootDisk   string `json:"vmbootDisk"`
	VmspecName   string `json:"vmspecName"`
	VmuserId     string `json:"vmuserId"`
	VmuserPasswd string `json:"vmuserPasswd"`

	RootDeviceName string `json:"rootDeviceName"`
	RootDiskSize   string `json:"rootDiskSize"`
	RootDiskType   string `json:"rootDiskType"`

	VpcIID  tbcommon.TbIID `json:"vpcIID"`
	VpcName string         `json:"vpcName"`
}

type StatusCountInfo

type StatusCountInfo struct {
	CountCreating    int `json:"countCreating"`
	CountFailed      int `json:"countFailed"`
	CountRebooting   int `json:"countRebooting"`
	CountResuming    int `json:"countResuming"`
	CountRunning     int `json:"countRunning"`
	CountSuspended   int `json:"countSuspended"`
	CountSuspending  int `json:"countSuspending"`
	CountTerminated  int `json:"countTerminated"`
	CountTerminating int `json:"countTerminating"`
	CountTotal       int `json:"countTotal"`
	CountUndefined   int `json:"countUndefined"`
}

type StructElementCycle

type StructElementCycle struct {
	Cycle string `json:"cycle"`
}

type TbCustomImageInfo

type TbCustomImageInfo struct {
	AssociatedObjectList []string `json:"associatedObjectList"`
	ConnectionName       string   `json:"connectionName"`
	CreatedTime          string   `json:"createdTime"`
	CspCustomImageId     string   `json:"cspCustomImageId"`
	CspCustomImageName   string   `json:"cspCustomImageName"`
	Description          string   `json:"description"`
	GuestOS              string   `json:"guestOS"`

	ID string `json:"id"`

	KeyValueList []tbcommon.TbKeyValue `json:"keyValueList"`
	Name         string                `json:"name"`
	NameSpace    string                `json:"namespace"`
	SourceVmId   string                `json:"sourceVmId"`

	Status      string `json:"status"`
	SystemLabel string `json:"systemLabel"`
	// contains filtered or unexported fields
}

type TbMcisDynamicReq

type TbMcisDynamicReq struct {
	Description     string           `json:"description"`
	InstallMonAgent string           `json:"installMonAgent"`
	Label           string           `json:"label"`
	Name            string           `json:"name"`
	SystemLabel     string           `json:"systemLabel"`
	Vm              []TbVmDynamicReq `json:"vm"`
}

type TbMcisInfo

type TbMcisInfo struct {
	ConfigureCloudAdaptiveNetwork string          `json:"configureCloudAdaptiveNetwork"`
	ID                            string          `json:"id"`
	Description                   string          `json:"description"`
	InstallMonAgent               string          `json:"installMonAgent"`
	Label                         string          `json:"label"`
	SystemLabel                   string          `json:"systemLabel"`
	Name                          string          `json:"name"`
	PlacementAlgo                 string          `json:"placementAlgo"`
	Status                        string          `json:"status"`
	StatusCount                   StatusCountInfo `json:"statusCount"`
	TargetAction                  string          `json:"targetAction"`
	TargetStatus                  string          `json:"targetStatus"`

	Vm []TbVmInfo `json:"vm"`
}

type TbMcisReq

type TbMcisReq struct {
	Description     string `json:"description"`
	InstallMonAgent string `json:"installMonAgent"`
	Label           string `json:"label"`
	Name            string `json:"name"`
	PlacementAlgo   string `json:"placementAlgo"`
	SystemLabel     string `json:"systemLabel"`

	// Vm TbVmInfo `json:"vm"`
	Vm []TbVmReq `json:"vm"`
}

type TbNLBAddRemoveVMReq

type TbNLBAddRemoveVMReq struct {
	TargetGroup []TbNLBTargetGroup `json:"targetGroup"`
}

type TbNLBHealthCheckerInfo

type TbNLBHealthCheckerInfo struct {
	CspID string `json:"cspID"`

	Protocol string `json:"protocol"`
	Port     string `json:"port"`

	Interval  int `json:"interval"`
	Threshold int `json:"threshold"`
	Timeout   int `json:"timeout"`

	KeyValueList []tbcommon.TbKeyValue `json:"keyValueList"`
}

type TbNLBHealthCheckerReq

type TbNLBHealthCheckerReq struct {
	Interval  string `json:"interval"`
	Threshold string `json:"threshold"`
	Timeout   string `json:"timeout"`
}

type TbNLBInfo

type TbNLBInfo struct {
	AssociatedObjectList []string `json:"associatedObjectList"`
	ConnectionName       string   `json:"connectionName"`
	CreatedTime          string   `json:"createdTime"`
	CspNlbId             string   `json:"cspNlbId"`
	CspNlbName           string   `json:"cspNlbName"`
	Description          string   `json:"description"`

	HealthChecker TbNLBHealthCheckerInfo `json:"healthChecker"`
	Listener      TbNLBListenerInfo      `json:"listener"`
	Location      tbcommon.TbGeoLocation `json:"location"`
	TargetGroup   TbNLBTargetGroup       `json:"targetGroup"`

	ID              string                `json:"id"`
	IsAutoGenerated bool                  `json:"isAutoGenerated"`
	KeyValueList    []tbcommon.TbKeyValue `json:"keyValueList"`
	Name            string                `json:"name"`
	Status          string                `json:"status"`
	SystemLabel     string                `json:"systemLabel"`

	Scope string `json:"scope"`
	Type  string `json:"type"`

	McisID string `json:"mcisId"` // TB에서 해당항목이 없지만 NLB는 McisID가 필수라 추가함.
}

type TbNLBListenerInfo

type TbNLBListenerInfo struct {
	CspID   string `json:"cspID"`
	DnsName string `json:"dnsName"`

	Ip string `json:"ip"`

	Protocol string `json:"protocol"`
	Port     string `json:"port"`

	KeyValueList []tbcommon.TbKeyValue `json:"keyValueList"`
}

type TbNLBReq

type TbNLBReq struct {
	ConnectionName string `json:"connectionName"`
	CspNlbId       string `json:"cspNlbId"`
	Description    string `json:"description"`
	Name           string `json:"name"`
	Scope          string `json:"scope"`
	Type           string `json:"type"`

	VNetId string `json:"vNetId"`

	HealthCheckerReq TbNLBHealthCheckerReq `json:"healthCheckerReq"`
	Listener         TbNLBListenerInfo     `json:"listener"`
	TargetGroup      TbNLBTargetGroup      `json:"targetGroup"`

	IsAutoGenerated bool                  `json:"isAutoGenerated"`
	KeyValueList    []tbcommon.TbKeyValue `json:"keyValueList"`
	Status          string                `json:"status"`
	SystemLabel     string                `json:"systemLabel"`
}

type TbNLBTargetGroup

type TbNLBTargetGroup struct {
	CspID string `json:"cspID"`

	Protocol string `json:"protocol"`
	Port     string `json:"port"`

	SubGroupId string   `json:"subGroupId"`
	Vms        []string `json:"vms"`

	KeyValueList []tbcommon.TbKeyValue `json:"keyValueList"`
}

type TbScaleOutSubGroupReq

type TbScaleOutSubGroupReq struct {
	NumVMsToAdd string `json:"numVMsToAdd"`
}

type TbVmDynamicReq

type TbVmDynamicReq struct {
	CommonImage    string `json:"commonImage"`
	CommonSpec     string `json:"commonSpec"`
	ConnectionName string `json:"connectionName"`
	Description    string `json:"description"`
	Label          string `json:"label"`
	Name           string `json:"name"`
	RootDiskSize   string `json:"rootDiskSize"`
	RootDiskType   string `json:"rootDiskType"`
	SubGroupSize   string `json:"subGroupSize"`
}

type TbVmInfo

type TbVmInfo struct {
	ConnectionName string `json:"connectionName"`
	CreatedTime    string `json:"createdTime"`

	CspViewVmDetail SpiderVMInfo `json:"cspViewVmDetail"`

	Description string                 `json:"description"`
	ID          string                 `json:"id"`
	IdByCSP     string                 `json:"idByCSP"`
	ImageID     string                 `json:"imageId"`
	Label       string                 `json:"label"`
	Location    tbcommon.TbGeoLocation `json:"location"`

	MonAgentStatus string `json:"monAgentStatus"`

	Name               string     `json:"name"`
	NetworkAgentStatus string     `json:"networkAgentStatus"`
	PrivateDns         string     `json:"privateDns"`
	PrivateIP          string     `json:"privateIP"`
	PublicDNS          string     `json:"publicDNS"`
	PublicIP           string     `json:"publicIP"`
	Region             RegionInfo `json:"region"`

	RootDeviceName string   `json:"rootDeviceName"`
	RootDiskSize   string   `json:"rootDiskSize"`
	RootDiskType   string   `json:"rootDiskType"`
	DataDiskIds    []string `json:"dataDiskIds"`

	SecurityGroupIDs []string `json:"securityGroupIds"`

	SpecID         string `json:"specId"`
	SshKeyID       string `json:"sshKeyId"`
	SshPort        string `json:"sshPort"`
	Status         string `json:"status"`
	SubnetID       string `json:"subnetId"`
	SystemMessage  string `json:"systemMessage"`
	TargetAction   string `json:"targetAction"`
	TargetStatus   string `json:"targetStatus"`
	VNetID         string `json:"vNetId"`
	VmBlockDisk    string `json:"vmBlockDisk"`
	VmBootDisk     string `json:"vmBootDisk"`
	SubGroupID     string `json:"subGroupId"`
	VmUserAccount  string `json:"vmUserAccount"`
	VmUserPassword string `json:"vmUserPassword"`
}

type TbVmRecommendReq

type TbVmRecommendReq struct {
	DiskSize       string                `json:"diskSize"`
	MaxResultNum   string                `json:"maxResultNum"`
	MemorySize     string                `json:"memorySize"`
	PlacementAlgo  string                `json:"placementAlgo"`
	PlacementParam []tbcommon.TbKeyValue `json:"placementParam"`

	RequestName string `json:"requestName"`
	VcpuSize    string `json:"vcpuSize"`
}

type TbVmReq

type TbVmReq struct {
	ConnectionName string `json:"connectionName"`
	Description    string `json:"description"`
	IdByCsp        string `json:"idByCsp"`
	ImageID        string `json:"imageId"`
	ImageType      string `json:"imageType"`
	Label          string `json:"label"`
	Name           string `json:"name"`

	RootDiskSize string `json:"rootDiskSize"`
	RootDiskType string `json:"rootDiskType"`

	SecurityGroupIDs []string `json:"securityGroupIds"`

	SpecID         string `json:"specId"`
	SshKeyID       string `json:"sshKeyId"`
	SubnetID       string `json:"subnetId"`
	VNetID         string `json:"vNetId"`
	SubGroupSize   string `json:"subGroupSize"`
	VmUserAccount  string `json:"vmUserAccount"`
	VmUserPassword string `json:"vmUserPassword"`

	DataDiskIds []string `json:"dataDiskIds"`
}

type TbVmSnapshotReq

type TbVmSnapshotReq struct {
	Name string `json:"name"`
}

type TbVmStatusInfo

type TbVmStatusInfo struct {
	CreatedTime string `json:"createdTime"`
	CspVmID     string `json:"cspVmId"`

	ID       string                 `json:"id"`
	Location tbcommon.TbGeoLocation `json:"location"`

	MonAgentStatus string `json:"monAgentStatus"`

	Name          string `json:"name"`
	NativeStatus  string `json:"nativeStatus"`
	PrivateIP     string `json:"privateIP"`
	PublicIP      string `json:"publicIP"`
	SshPort       string `json:"sshPort"`
	Status        string `json:"status"`
	SystemMessage string `json:"systemMessage"`
	TargetAction  string `json:"targetAction"`
	TargetStatus  string `json:"targetStatus"`
}

Jump to

Keyboard shortcuts

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