summaryrefslogtreecommitdiff
path: root/edgemesh
diff options
context:
space:
mode:
authorzhangjie <iamkadisi@163.com>2020-01-14 15:45:14 +0800
committerzhangjie <iamkadisi@163.com>2020-01-19 17:26:26 +0800
commit66c3d26e1bacaee2c23ae160caaccf08a727d8e7 (patch)
treec4e606a5bb7a81b92a81f39b87a32d5a67bd74e1 /edgemesh
parenteventbus module use new api config (diff)
downloadkubeedge-66c3d26e1bacaee2c23ae160caaccf08a727d8e7.tar.gz
edgemesh module use nnew config api
Signed-off-by: zhangjie <iamkadisi@163.com>
Diffstat (limited to 'edgemesh')
-rw-r--r--edgemesh/cmd/edgemesh.go5
-rw-r--r--edgemesh/pkg/config/config.go23
-rw-r--r--edgemesh/pkg/module.go17
-rw-r--r--edgemesh/pkg/resolver/resolver.go2
-rw-r--r--edgemesh/pkg/server/server.go2
5 files changed, 22 insertions, 27 deletions
diff --git a/edgemesh/cmd/edgemesh.go b/edgemesh/cmd/edgemesh.go
index c1f2c8380..c167f145e 100644
--- a/edgemesh/cmd/edgemesh.go
+++ b/edgemesh/cmd/edgemesh.go
@@ -2,7 +2,7 @@ package main
import (
"flag"
- "github.com/kubeedge/kubeedge/edgemesh/pkg"
+
"github.com/spf13/pflag"
"k8s.io/klog"
@@ -15,7 +15,8 @@ func main() {
pflag.CommandLine.AddGoFlagSet(flag.CommandLine)
pflag.Parse()
- pkg.Register()
+ // TODO need parse edgemesh config file before Register @kadisi
+ //pkg.Register()
//Start server
server.StartTCP()
diff --git a/edgemesh/pkg/config/config.go b/edgemesh/pkg/config/config.go
index b2f5e80a4..e066dbb76 100644
--- a/edgemesh/pkg/config/config.go
+++ b/edgemesh/pkg/config/config.go
@@ -1,39 +1,26 @@
package config
import (
- "os"
"sync"
- "k8s.io/klog"
-
- "github.com/kubeedge/beehive/pkg/common/config"
+ "github.com/kubeedge/kubeedge/pkg/apis/edgecore/v1alpha1"
)
var c Configure
var once sync.Once
type Configure struct {
- StrategyName string
+ v1alpha1.EdgeMesh
}
-func InitConfigure() {
+func InitConfigure(e *v1alpha1.EdgeMesh) {
once.Do(func() {
- var errs []error
- if len(errs) != 0 {
- for _, e := range errs {
- klog.Errorf("%v", e)
- }
- klog.Error("init edgemesh config error, exit")
- os.Exit(1)
- }
- strategyName := config.CONFIG.GetConfigurationByKey("mesh.loadbalance.strategy-name").(string)
c = Configure{
- StrategyName: strategyName,
+ EdgeMesh: *e,
}
- klog.Infof("init edgemesh config successfully,config info %++v", c)
})
-
}
+
func Get() *Configure {
return &c
}
diff --git a/edgemesh/pkg/module.go b/edgemesh/pkg/module.go
index ee869a17a..46939cd05 100644
--- a/edgemesh/pkg/module.go
+++ b/edgemesh/pkg/module.go
@@ -10,28 +10,35 @@ import (
"github.com/kubeedge/kubeedge/edgemesh/pkg/constant"
"github.com/kubeedge/kubeedge/edgemesh/pkg/proxy"
"github.com/kubeedge/kubeedge/edgemesh/pkg/server"
+ "github.com/kubeedge/kubeedge/pkg/apis/edgecore/v1alpha1"
)
//EdgeMesh defines EdgeMesh object structure
type EdgeMesh struct {
+ enable bool
}
// Register register edgemesh
-func Register() {
- meshconfig.InitConfigure()
- core.Register(&EdgeMesh{})
+func Register(m *v1alpha1.EdgeMesh) {
+ meshconfig.InitConfigure(m)
+ core.Register(&EdgeMesh{enable: m.Enable})
}
-//Name returns the name of EdgeMesh module
+// Name returns the name of EdgeMesh module
func (em *EdgeMesh) Name() string {
return constant.ModuleNameEdgeMesh
}
-//Group returns EdgeMesh group
+// Group returns EdgeMesh group
func (em *EdgeMesh) Group() string {
return modules.MeshGroup
}
+// Enable indicates whether this module is enabled
+func (em *EdgeMesh) Enable() bool {
+ return em.enable
+}
+
//Start sets context and starts the controller
func (em *EdgeMesh) Start() {
proxy.Init()
diff --git a/edgemesh/pkg/resolver/resolver.go b/edgemesh/pkg/resolver/resolver.go
index 1a576b049..bf180148a 100644
--- a/edgemesh/pkg/resolver/resolver.go
+++ b/edgemesh/pkg/resolver/resolver.go
@@ -60,7 +60,7 @@ func (resolver *MyResolver) Resolve(data chan []byte, stop chan interface{}, inv
i.SourceServiceID = ""
i.Protocol = "rest"
i.Args = req
- i.Strategy = config.Get().StrategyName
+ i.Strategy = config.Get().LBStrategy
i.Reply = &http.Response{}
invCallback("http", *i)
}
diff --git a/edgemesh/pkg/server/server.go b/edgemesh/pkg/server/server.go
index 15a0a36f7..7545713a4 100644
--- a/edgemesh/pkg/server/server.go
+++ b/edgemesh/pkg/server/server.go
@@ -31,7 +31,7 @@ func Start() {
control.Init(opts)
opt := registry.Options{}
registry.DefaultServiceDiscoveryService = edgeregistry.NewServiceDiscovery(opt)
- myStrategy := meshconfig.Get().StrategyName
+ myStrategy := meshconfig.Get().LBStrategy
loadbalancer.InstallStrategy(myStrategy, func() loadbalancer.Strategy {
switch myStrategy {
case "RoundRobin":