feat: update scheduler and seed peer by ip and port (#3012)
Signed-off-by: Gaius <gaius.qi@gmail.com>
This commit is contained in:
parent
93df8f01d8
commit
ea28581bbe
|
|
@ -269,9 +269,6 @@ type GRPCConfig struct {
|
||||||
// AdvertiseIP is advertise ip.
|
// AdvertiseIP is advertise ip.
|
||||||
AdvertiseIP net.IP `yaml:"advertiseIP" mapstructure:"advertiseIP"`
|
AdvertiseIP net.IP `yaml:"advertiseIP" mapstructure:"advertiseIP"`
|
||||||
|
|
||||||
// AdvertisePort is advertise port.
|
|
||||||
AdvertisePort int `yaml:"advertisePort" mapstructure:"advertisePort"`
|
|
||||||
|
|
||||||
// ListenIP is listen ip, like: 0.0.0.0, 192.168.0.1.
|
// ListenIP is listen ip, like: 0.0.0.0, 192.168.0.1.
|
||||||
ListenIP net.IP `mapstructure:"listenIP" yaml:"listenIP"`
|
ListenIP net.IP `mapstructure:"listenIP" yaml:"listenIP"`
|
||||||
|
|
||||||
|
|
@ -392,7 +389,6 @@ func New() *Config {
|
||||||
Server: ServerConfig{
|
Server: ServerConfig{
|
||||||
Name: DefaultServerName,
|
Name: DefaultServerName,
|
||||||
GRPC: GRPCConfig{
|
GRPC: GRPCConfig{
|
||||||
AdvertisePort: DefaultGRPCAdvertisePort,
|
|
||||||
PortRange: TCPListenPortRange{
|
PortRange: TCPListenPortRange{
|
||||||
Start: DefaultGRPCPort,
|
Start: DefaultGRPCPort,
|
||||||
End: DefaultGRPCPort,
|
End: DefaultGRPCPort,
|
||||||
|
|
@ -485,10 +481,6 @@ func (cfg *Config) Validate() error {
|
||||||
return errors.New("grpc requires parameter advertiseIP")
|
return errors.New("grpc requires parameter advertiseIP")
|
||||||
}
|
}
|
||||||
|
|
||||||
if cfg.Server.GRPC.AdvertisePort <= 0 {
|
|
||||||
return errors.New("grpc requires parameter advertisePort")
|
|
||||||
}
|
|
||||||
|
|
||||||
if cfg.Server.GRPC.ListenIP == nil {
|
if cfg.Server.GRPC.ListenIP == nil {
|
||||||
return errors.New("grpc requires parameter listenIP")
|
return errors.New("grpc requires parameter listenIP")
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -119,9 +119,8 @@ func TestConfig_Load(t *testing.T) {
|
||||||
LogDir: "foo",
|
LogDir: "foo",
|
||||||
PluginDir: "foo",
|
PluginDir: "foo",
|
||||||
GRPC: GRPCConfig{
|
GRPC: GRPCConfig{
|
||||||
AdvertiseIP: net.IPv4zero,
|
AdvertiseIP: net.IPv4zero,
|
||||||
AdvertisePort: 65003,
|
ListenIP: net.IPv4zero,
|
||||||
ListenIP: net.IPv4zero,
|
|
||||||
PortRange: TCPListenPortRange{
|
PortRange: TCPListenPortRange{
|
||||||
Start: 65003,
|
Start: 65003,
|
||||||
End: 65003,
|
End: 65003,
|
||||||
|
|
@ -286,17 +285,6 @@ func TestConfig_Validate(t *testing.T) {
|
||||||
assert.EqualError(err, "grpc requires parameter advertiseIP")
|
assert.EqualError(err, "grpc requires parameter advertiseIP")
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
{
|
|
||||||
name: "grpc requires parameter advertisePort",
|
|
||||||
config: New(),
|
|
||||||
mock: func(cfg *Config) {
|
|
||||||
cfg.Server.GRPC.AdvertisePort = 0
|
|
||||||
},
|
|
||||||
expect: func(t *testing.T, err error) {
|
|
||||||
assert := assert.New(t)
|
|
||||||
assert.EqualError(err, "grpc requires parameter advertisePort")
|
|
||||||
},
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
name: "grpc requires parameter listenIP",
|
name: "grpc requires parameter listenIP",
|
||||||
config: New(),
|
config: New(),
|
||||||
|
|
|
||||||
|
|
@ -41,9 +41,6 @@ const (
|
||||||
// DefaultGRPCPort is default port for grpc server.
|
// DefaultGRPCPort is default port for grpc server.
|
||||||
DefaultGRPCPort = 65003
|
DefaultGRPCPort = 65003
|
||||||
|
|
||||||
// DefaultGRPCPort is default port for grpc server.
|
|
||||||
DefaultGRPCAdvertisePort = 65003
|
|
||||||
|
|
||||||
// DefaultRESTAddr is default address for rest server.
|
// DefaultRESTAddr is default address for rest server.
|
||||||
DefaultRESTAddr = ":8080"
|
DefaultRESTAddr = ":8080"
|
||||||
)
|
)
|
||||||
|
|
|
||||||
|
|
@ -6,7 +6,6 @@ server:
|
||||||
pluginDir: foo
|
pluginDir: foo
|
||||||
grpc:
|
grpc:
|
||||||
advertiseIP: 0.0.0.0
|
advertiseIP: 0.0.0.0
|
||||||
advertisePort: 65003
|
|
||||||
listenIP: 0.0.0.0
|
listenIP: 0.0.0.0
|
||||||
port:
|
port:
|
||||||
start: 65003
|
start: 65003
|
||||||
|
|
|
||||||
|
|
@ -238,6 +238,8 @@ func (s *managerServerV2) UpdateSeedPeer(ctx context.Context, req *managerv2.Upd
|
||||||
seedPeer := models.SeedPeer{}
|
seedPeer := models.SeedPeer{}
|
||||||
if err := s.db.WithContext(ctx).First(&seedPeer, models.SeedPeer{
|
if err := s.db.WithContext(ctx).First(&seedPeer, models.SeedPeer{
|
||||||
Hostname: req.Hostname,
|
Hostname: req.Hostname,
|
||||||
|
IP: req.Ip,
|
||||||
|
Port: req.Port,
|
||||||
SeedPeerClusterID: uint(req.SeedPeerClusterId),
|
SeedPeerClusterID: uint(req.SeedPeerClusterId),
|
||||||
}).Error; err != nil {
|
}).Error; err != nil {
|
||||||
if errors.Is(err, gorm.ErrRecordNotFound) {
|
if errors.Is(err, gorm.ErrRecordNotFound) {
|
||||||
|
|
@ -450,6 +452,8 @@ func (s *managerServerV2) UpdateScheduler(ctx context.Context, req *managerv2.Up
|
||||||
scheduler := models.Scheduler{}
|
scheduler := models.Scheduler{}
|
||||||
if err := s.db.WithContext(ctx).First(&scheduler, models.Scheduler{
|
if err := s.db.WithContext(ctx).First(&scheduler, models.Scheduler{
|
||||||
Hostname: req.Hostname,
|
Hostname: req.Hostname,
|
||||||
|
IP: req.Ip,
|
||||||
|
Port: req.Port,
|
||||||
SchedulerClusterID: uint(req.SchedulerClusterId),
|
SchedulerClusterID: uint(req.SchedulerClusterId),
|
||||||
}).Error; err != nil {
|
}).Error; err != nil {
|
||||||
if errors.Is(err, gorm.ErrRecordNotFound) {
|
if errors.Is(err, gorm.ErrRecordNotFound) {
|
||||||
|
|
|
||||||
|
|
@ -728,5 +728,9 @@ func (cfg *Config) Convert() error {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if cfg.Server.AdvertisePort == 0 {
|
||||||
|
cfg.Server.AdvertisePort = cfg.Server.Port
|
||||||
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue