func (c *controller) agentDriverNotify(d driverapi.Driver) { if c.agent == nil { return } d.DiscoverNew(discoverapi.NodeDiscovery, discoverapi.NodeDiscoveryData{ Address: c.agent.bindAddr, Self: true, }) drvEnc := discoverapi.DriverEncryptionConfig{} for _, key := range c.keys { if key.Subsystem == "networking:gossip" /*"networking:ipsec"*/ { drvEnc.Keys = append(drvEnc.Keys, hex.EncodeToString(key.Key)) drvEnc.Tags = append(drvEnc.Tags, strconv.FormatUint(key.LamportTime, 10)) } } c.drvRegistry.WalkDrivers(func(name string, driver driverapi.Driver, capability driverapi.Capability) bool { err := driver.DiscoverNew(discoverapi.EncryptionKeysConfig, drvEnc) if err != nil { logrus.Warnf("Failed to set datapath keys in driver %s: %v", name, err) } return false }) }
func (c *controller) agentDriverNotify(d driverapi.Driver) { if c.agent == nil { return } d.DiscoverNew(discoverapi.NodeDiscovery, discoverapi.NodeDiscoveryData{ Address: c.agent.advertiseAddr, BindAddress: c.agent.bindAddr, Self: true, }) drvEnc := discoverapi.DriverEncryptionConfig{} keys, tags := c.getKeys(subsysIPSec) drvEnc.Keys = keys drvEnc.Tags = tags c.drvRegistry.WalkDrivers(func(name string, driver driverapi.Driver, capability driverapi.Capability) bool { err := driver.DiscoverNew(discoverapi.EncryptionKeysConfig, drvEnc) if err != nil { logrus.Warnf("Failed to set datapath keys in driver %s: %v", name, err) } return false }) }
func (c *controller) agentDriverNotify(d driverapi.Driver) { if c.agent == nil { return } d.DiscoverNew(discoverapi.NodeDiscovery, discoverapi.NodeDiscoveryData{ Address: c.agent.bindAddr, Self: true, }) }
func (c *controller) pushNodeDiscovery(d driverapi.Driver, cap driverapi.Capability, nodes []net.IP, add bool) { var self net.IP if c.cfg != nil { addr := strings.Split(c.cfg.Cluster.Address, ":") self = net.ParseIP(addr[0]) } if d == nil || cap.DataScope != datastore.GlobalScope || nodes == nil { return } for _, node := range nodes { nodeData := discoverapi.NodeDiscoveryData{Address: node.String(), Self: node.Equal(self)} var err error if add { err = d.DiscoverNew(discoverapi.NodeDiscovery, nodeData) } else { err = d.DiscoverDelete(discoverapi.NodeDiscovery, nodeData) } if err != nil { log.Debugf("discovery notification error : %v", err) } } }