mirror of https://github.com/docker/docs.git
fix heartbeat
This commit is contained in:
parent
dacb3e2ef1
commit
80cc51c9be
|
@ -92,9 +92,13 @@ func (c *Cluster) Nodes() map[string]*Node {
|
|||
return c.nodes
|
||||
}
|
||||
|
||||
func (c *Cluster) Node(ID string) *Node {
|
||||
node, _ := c.nodes[ID]
|
||||
return node
|
||||
func (c *Cluster) Node(addr string) *Node {
|
||||
for _, node := range c.nodes {
|
||||
if node.Addr == addr {
|
||||
return node
|
||||
}
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func (c *Cluster) Events(h EventHandler) error {
|
||||
|
|
4
join.go
4
join.go
|
@ -18,9 +18,9 @@ func join(c *cli.Context) {
|
|||
log.Fatal(err)
|
||||
}
|
||||
|
||||
// heartbeat every 25 seconds
|
||||
hb := time.Duration(c.Int("heartbeat"))
|
||||
for {
|
||||
time.Sleep(25 * time.Second)
|
||||
time.Sleep(hb * time.Second)
|
||||
if err := discovery.RegisterSlave(c.String("addr"), c.String("token")); err != nil {
|
||||
log.Error(err)
|
||||
}
|
||||
|
|
9
main.go
9
main.go
|
@ -45,6 +45,11 @@ func main() {
|
|||
Usage: "ip to advertise",
|
||||
EnvVar: "SWARM_ADDR",
|
||||
}
|
||||
flHeartBeat := cli.IntFlag{
|
||||
Name: "heartbeat, hb",
|
||||
Value: 25,
|
||||
Usage: "time in second between each heartbeat",
|
||||
}
|
||||
|
||||
app.Commands = []cli.Command{
|
||||
{
|
||||
|
@ -78,14 +83,14 @@ func main() {
|
|||
Name: "manage",
|
||||
ShortName: "m",
|
||||
Usage: "manage a docker cluster",
|
||||
Flags: []cli.Flag{flToken, flAddr},
|
||||
Flags: []cli.Flag{flToken, flAddr, flHeartBeat},
|
||||
Action: manage,
|
||||
},
|
||||
{
|
||||
Name: "join",
|
||||
ShortName: "j",
|
||||
Usage: "join a docker cluster",
|
||||
Flags: []cli.Flag{flToken, flAddr},
|
||||
Flags: []cli.Flag{flToken, flAddr, flHeartBeat},
|
||||
Action: join,
|
||||
},
|
||||
}
|
||||
|
|
|
@ -55,9 +55,10 @@ func manage(c *cli.Context) {
|
|||
if err := refresh(cluster, nodes); err != nil {
|
||||
log.Fatal(err)
|
||||
}
|
||||
hb := time.Duration(c.Int("heartbeat"))
|
||||
go func() {
|
||||
for {
|
||||
time.Sleep(25 * time.Second)
|
||||
time.Sleep(hb * time.Second)
|
||||
nodes, err = discovery.FetchSlaves(c.String("token"))
|
||||
if err == nil {
|
||||
refresh(cluster, nodes)
|
||||
|
|
Loading…
Reference in New Issue