Documentation ¶
Overview ¶
Package mesos xxx
Index ¶
- Variables
- func GenerateRandnum() int
- func NewMesosCluster(cfg *types.CmdConfig, st storage.Storage, netservice *service.InnerService) cluster.Cluster
- type AppWatch
- func (app *AppWatch) AddEvent(obj interface{})
- func (app *AppWatch) DeleteEvent(obj interface{})
- func (app *AppWatch) GetApplicationChannel(application *schedulertypes.Application) string
- func (app *AppWatch) IsExist(data interface{}) bool
- func (app *AppWatch) UpdateEvent(old, cur interface{}, force bool)
- type ConfigMapInfo
- type ConfigMapWatch
- type DeploymentInfo
- type DeploymentWatch
- func (watch *DeploymentWatch) AddEvent(obj interface{})
- func (watch *DeploymentWatch) DeleteEvent(obj interface{})
- func (watch *DeploymentWatch) GetDeploymentChannel(deployment *schedulertypes.Deployment) string
- func (watch *DeploymentWatch) ProcessAllDeployments() error
- func (watch *DeploymentWatch) UpdateEvent(old, cur interface{})
- func (watch *DeploymentWatch) Work()
- type EndpointInfo
- type EndpointWatch
- type ExportServiceInfo
- type ExportServiceWatch
- func (watch *ExportServiceWatch) AddEvent(obj interface{})
- func (watch *ExportServiceWatch) DeleteEvent(obj interface{})
- func (watch *ExportServiceWatch) GetExportserviceChannel(exportservice *lbtypes.ExportService) string
- func (watch *ExportServiceWatch) SyncEpTaskgroupBackend(esInfo *ExportServiceInfo, taskgroup *schedtypes.TaskGroup) error
- func (watch *ExportServiceWatch) SyncExportServiceBackends(esInfo *ExportServiceInfo) error
- func (watch *ExportServiceWatch) UpdateEvent(obj interface{})
- type MesosCluster
- func (ms *MesosCluster) GetClusterID() string
- func (ms *MesosCluster) GetClusterStatus() string
- func (ms *MesosCluster) ProcessAppPathes() error
- func (ms *MesosCluster) ReportData(data *types.BcsSyncData) error
- func (ms *MesosCluster) Run(cxt context.Context)
- func (ms *MesosCluster) Stop()
- func (ms *MesosCluster) Sync(tp string) error
- type NSControlInfo
- type SecretInfo
- type SecretWatch
- type ServiceInfo
- type ServiceWatch
- type TaskControlInfo
- type TaskGroupWatch
- func (task *TaskGroupWatch) AddEvent(obj interface{})
- func (task *TaskGroupWatch) DeleteEvent(obj interface{})
- func (task *TaskGroupWatch) GetTaskGroupChannel(taskGroup *schedulertypes.TaskGroup) string
- func (task *TaskGroupWatch) GetTaskGroupChannelV2(taskGroup *schedulertypes.TaskGroup) string
- func (task *TaskGroupWatch) IsExist(data interface{}) bool
- func (task *TaskGroupWatch) UpdateEvent(old, cur interface{}, force bool)
- type WatchInterface
- type ZkClient
Constants ¶
This section is empty.
Variables ¶
var ( // ApplicationThreadNum goroutine number for Application channel ApplicationThreadNum int // TaskgroupThreadNum goroutine number for taskgroup channel TaskgroupThreadNum int // ExportserviceThreadNum goroutine number for exportservice channel ExportserviceThreadNum int // DeploymentThreadNum goroutine number for deployment channel DeploymentThreadNum int )
var ( // SyncDefaultTimeOut default timeout SyncDefaultTimeOut = time.Second * 1 )
Functions ¶
func NewMesosCluster ¶
func NewMesosCluster(cfg *types.CmdConfig, st storage.Storage, netservice *service.InnerService) cluster.Cluster
NewMesosCluster create mesos cluster
Types ¶
type AppWatch ¶
type AppWatch struct {
// contains filtered or unexported fields
}
AppWatch for app data in zookeeper, app wath is base on namespace. AppWatch will record all namespace path,
func NewAppWatch ¶
NewAppWatch return a new application watch
func (*AppWatch) AddEvent ¶
func (app *AppWatch) AddEvent(obj interface{})
AddEvent call when data added
func (*AppWatch) DeleteEvent ¶
func (app *AppWatch) DeleteEvent(obj interface{})
DeleteEvent when delete
func (*AppWatch) GetApplicationChannel ¶
func (app *AppWatch) GetApplicationChannel(application *schedulertypes.Application) string
GetApplicationChannel get distribution channel for Application
func (*AppWatch) UpdateEvent ¶
UpdateEvent when update
type ConfigMapInfo ¶
type ConfigMapInfo struct {
// contains filtered or unexported fields
}
ConfigMapInfo wrapper for BCS ConfigMap
type ConfigMapWatch ¶
type ConfigMapWatch struct {
// contains filtered or unexported fields
}
ConfigMapWatch watch for configmap, watch all detail and store to local cache
func NewConfigMapWatch ¶
func NewConfigMapWatch(cxt context.Context, client ZkClient, reporter cluster.Reporter, watchPath string) *ConfigMapWatch
NewConfigMapWatch create watch for BCS ConfigMap
func (*ConfigMapWatch) AddEvent ¶
func (watch *ConfigMapWatch) AddEvent(obj interface{})
AddEvent call when data added
func (*ConfigMapWatch) DeleteEvent ¶
func (watch *ConfigMapWatch) DeleteEvent(obj interface{})
DeleteEvent when delete
func (*ConfigMapWatch) ProcessAllConfigmaps ¶
func (watch *ConfigMapWatch) ProcessAllConfigmaps() error
ProcessAllConfigmaps handle all configmap under all namespace
func (*ConfigMapWatch) UpdateEvent ¶
func (watch *ConfigMapWatch) UpdateEvent(old, cur interface{})
UpdateEvent when update
type DeploymentInfo ¶
type DeploymentInfo struct {
// contains filtered or unexported fields
}
DeploymentInfo wrapper for BCS Deployment
type DeploymentWatch ¶
type DeploymentWatch struct {
// contains filtered or unexported fields
}
DeploymentWatch watch all deployment data and store to local cache
func NewDeploymentWatch ¶
func NewDeploymentWatch(cxt context.Context, client ZkClient, reporter cluster.Reporter, watchPath string) *DeploymentWatch
NewDeploymentWatch create deployment watch
func (*DeploymentWatch) AddEvent ¶
func (watch *DeploymentWatch) AddEvent(obj interface{})
AddEvent call when data added
func (*DeploymentWatch) DeleteEvent ¶
func (watch *DeploymentWatch) DeleteEvent(obj interface{})
DeleteEvent when delete
func (*DeploymentWatch) GetDeploymentChannel ¶
func (watch *DeploymentWatch) GetDeploymentChannel(deployment *schedulertypes.Deployment) string
GetDeploymentChannel get channel by random algorithm
func (*DeploymentWatch) ProcessAllDeployments ¶
func (watch *DeploymentWatch) ProcessAllDeployments() error
ProcessAllDeployments handle all namespace deployment data
func (*DeploymentWatch) UpdateEvent ¶
func (watch *DeploymentWatch) UpdateEvent(old, cur interface{})
UpdateEvent when update
type EndpointInfo ¶
type EndpointInfo struct {
// contains filtered or unexported fields
}
EndpointInfo wrapper for BCSEndpoint
type EndpointWatch ¶
type EndpointWatch struct {
// contains filtered or unexported fields
}
EndpointWatch watch for Endpoint and store all datas to local cache
func NewEndpointWatch ¶
func NewEndpointWatch(cxt context.Context, client ZkClient, reporter cluster.Reporter, watchPath string) *EndpointWatch
NewEndpointWatch create endpoint watch
func (*EndpointWatch) AddEvent ¶
func (watch *EndpointWatch) AddEvent(obj interface{})
AddEvent call when data added
func (*EndpointWatch) DeleteEvent ¶
func (watch *EndpointWatch) DeleteEvent(obj interface{})
DeleteEvent when delete
func (*EndpointWatch) ProcessAllEndpoints ¶
func (watch *EndpointWatch) ProcessAllEndpoints() error
ProcessAllEndpoints handle all namespace Endpoint data
func (*EndpointWatch) UpdateEvent ¶
func (watch *EndpointWatch) UpdateEvent(old, cur interface{})
UpdateEvent when update
func (*EndpointWatch) Work ¶
func (watch *EndpointWatch) Work()
Work handle all Endpoint datas periodically
type ExportServiceInfo ¶
type ExportServiceInfo struct {
// contains filtered or unexported fields
}
ExportServiceInfo wrapper for ServiceInfo
type ExportServiceWatch ¶
type ExportServiceWatch struct { ClusterID string // contains filtered or unexported fields }
ExportServiceWatch watch for taskGroup
func NewExportServiceWatch ¶
func NewExportServiceWatch(cxt context.Context, client ZkClient, reporter cluster.Reporter, clusterID, watchPath string) *ExportServiceWatch
NewExportServiceWatch create export service watch
func (*ExportServiceWatch) AddEvent ¶
func (watch *ExportServiceWatch) AddEvent(obj interface{})
AddEvent call when data added
func (*ExportServiceWatch) DeleteEvent ¶
func (watch *ExportServiceWatch) DeleteEvent(obj interface{})
DeleteEvent when delete
func (*ExportServiceWatch) GetExportserviceChannel ¶
func (watch *ExportServiceWatch) GetExportserviceChannel(exportservice *lbtypes.ExportService) string
GetExportserviceChannel get channel for dispatch
func (*ExportServiceWatch) SyncEpTaskgroupBackend ¶
func (watch *ExportServiceWatch) SyncEpTaskgroupBackend(esInfo *ExportServiceInfo, taskgroup *schedtypes.TaskGroup) error
SyncEpTaskgroupBackend convert taskgroup to exportservice endpoint
func (*ExportServiceWatch) SyncExportServiceBackends ¶
func (watch *ExportServiceWatch) SyncExportServiceBackends(esInfo *ExportServiceInfo) error
SyncExportServiceBackends export service backend synchronization
func (*ExportServiceWatch) UpdateEvent ¶
func (watch *ExportServiceWatch) UpdateEvent(obj interface{})
UpdateEvent when update
type MesosCluster ¶
type MesosCluster struct { Status string // curr status // contains filtered or unexported fields }
MesosCluster cluster implements all cluster interface
func (*MesosCluster) GetClusterID ¶
func (ms *MesosCluster) GetClusterID() string
GetClusterID get mesos clusterID
func (*MesosCluster) GetClusterStatus ¶
func (ms *MesosCluster) GetClusterStatus() string
GetClusterStatus get synchronization status
func (*MesosCluster) ProcessAppPathes ¶
func (ms *MesosCluster) ProcessAppPathes() error
ProcessAppPathes handle all Application datas
func (*MesosCluster) ReportData ¶
func (ms *MesosCluster) ReportData(data *types.BcsSyncData) error
ReportData report data to reportHandler, handle all data independently
func (*MesosCluster) Run ¶
func (ms *MesosCluster) Run(cxt context.Context)
Run running cluster watch
func (*MesosCluster) Sync ¶
func (ms *MesosCluster) Sync(tp string) error
Sync ask cluster to sync data to local cache
type NSControlInfo ¶
type NSControlInfo struct {
// contains filtered or unexported fields
}
NSControlInfo store all app info under one namespace
type SecretInfo ¶
type SecretInfo struct {
// contains filtered or unexported fields
}
SecretInfo wrapper for BCSSecret
type SecretWatch ¶
type SecretWatch struct {
// contains filtered or unexported fields
}
SecretWatch watch all secret data and store in local cache
func NewSecretWatch ¶
func NewSecretWatch(cxt context.Context, client ZkClient, reporter cluster.Reporter, watchPath string) *SecretWatch
NewSecretWatch create SecretWatch for data synchronization
func (*SecretWatch) AddEvent ¶
func (watch *SecretWatch) AddEvent(obj interface{})
AddEvent call when data added
func (*SecretWatch) DeleteEvent ¶
func (watch *SecretWatch) DeleteEvent(obj interface{})
DeleteEvent when delete
func (*SecretWatch) ProcessAllSecrets ¶
func (watch *SecretWatch) ProcessAllSecrets() error
ProcessAllSecrets handle all namespaces data
func (*SecretWatch) UpdateEvent ¶
func (watch *SecretWatch) UpdateEvent(old, cur interface{})
UpdateEvent when update
func (*SecretWatch) Work ¶
func (watch *SecretWatch) Work()
Work list all namespace secret periodically
type ServiceInfo ¶
type ServiceInfo struct {
// contains filtered or unexported fields
}
ServiceInfo wrapper for BCSService
type ServiceWatch ¶
type ServiceWatch struct {
// contains filtered or unexported fields
}
ServiceWatch watch all event for Service and store in local cache
func NewServiceWatch ¶
func NewServiceWatch(cxt context.Context, client ZkClient, reporter cluster.Reporter, watchPath string) *ServiceWatch
NewServiceWatch create watch for Service
func (*ServiceWatch) AddEvent ¶
func (watch *ServiceWatch) AddEvent(obj interface{})
AddEvent call when data added
func (*ServiceWatch) DeleteEvent ¶
func (watch *ServiceWatch) DeleteEvent(obj interface{})
DeleteEvent when delete
func (*ServiceWatch) ProcessAllServices ¶
func (watch *ServiceWatch) ProcessAllServices() error
ProcessAllServices handle all namespace service
func (*ServiceWatch) UpdateEvent ¶
func (watch *ServiceWatch) UpdateEvent(old, cur interface{})
UpdateEvent when update
func (*ServiceWatch) Work ¶
func (watch *ServiceWatch) Work()
Work list all Service data periodically
type TaskControlInfo ¶
type TaskControlInfo struct {
// contains filtered or unexported fields
}
TaskControlInfo store all app info under one namespace
type TaskGroupWatch ¶
type TaskGroupWatch struct {
// contains filtered or unexported fields
}
TaskGroupWatch watch for taskGroup
func NewTaskGroupWatch ¶
func NewTaskGroupWatch(cxt context.Context, client ZkClient, reporter cluster.Reporter) *TaskGroupWatch
NewTaskGroupWatch create default taskgroup watch
func (*TaskGroupWatch) AddEvent ¶
func (task *TaskGroupWatch) AddEvent(obj interface{})
AddEvent call when data added
func (*TaskGroupWatch) DeleteEvent ¶
func (task *TaskGroupWatch) DeleteEvent(obj interface{})
DeleteEvent when delete
func (*TaskGroupWatch) GetTaskGroupChannel ¶
func (task *TaskGroupWatch) GetTaskGroupChannel(taskGroup *schedulertypes.TaskGroup) string
GetTaskGroupChannel get taskgroup dispatch channel
func (*TaskGroupWatch) GetTaskGroupChannelV2 ¶
func (task *TaskGroupWatch) GetTaskGroupChannelV2(taskGroup *schedulertypes.TaskGroup) string
GetTaskGroupChannelV2 get taskgroup dispatch channel
func (*TaskGroupWatch) IsExist ¶
func (task *TaskGroupWatch) IsExist(data interface{}) bool
IsExist check data exist in local dataCache
func (*TaskGroupWatch) UpdateEvent ¶
func (task *TaskGroupWatch) UpdateEvent(old, cur interface{}, force bool)
UpdateEvent when update
type WatchInterface ¶
type WatchInterface interface { cluster.DataExister cluster.EventHandler // contains filtered or unexported methods }
WatchInterface define interface for watch
type ZkClient ¶
type ZkClient interface { ConnectEx(sessionTimeOut time.Duration) error GetEx(path string) ([]byte, *zk.Stat, error) GetW(path string) ([]byte, *zk.Stat, <-chan zk.Event, error) GetChildrenEx(path string) ([]string, *zk.Stat, error) ChildrenW(path string) ([]string, *zk.Stat, <-chan zk.Event, error) ExistEx(path string) (bool, *zk.Stat, error) State() zk.State Close() }
ZkClient interface to define zk operation interface is only use for dependency injection