Skip to content

The etcdv2 Watcher bug in the contiv. #1140

Open
@liucimin

Description

@liucimin

Description

Contiv as CNI plugin in Kubernetes.
Contiv in using etcdv2 in the project.
And the netplugin create some watcher to watch the etcd data.Such as state/nets.
But if the network interrupt,and the etcd index has been cost larger than 1000.The watcher must
fail because that the etcdv2's just save 1000 events before now index .

Then we use netctl to create a new network in netmaster,but the netplugin can not get the change.
If we use the new network to create pod,it will fail!

Expected Behavior

Pod should be created by the new network.

Observed Behavior

Problem seems to be from the etcdv2's mechanism and the etcdv2 library.

Steps to Reproduce (for bugs)

1.Create a new network for the contiv.
2.Use the contiv until the etcd index 1000 larger than step 1.
3.Interrupt the network between netplugin and etcd.
4.Resume the etwork between netplugin and etcd.
5.Create a new network for the contiv.
6.Create new pods.

Your Environment

  • netctl version
    Client Version:
    Version: 1.2.1-44-g03bbb20-unsupported
    GitCommit: 03bbb20-unsupported
    BuildTime: 03-21-2018.08-06-47.UTC

Server Version:
Version: 1.2.1-46-g99b69e9-unsupported
GitCommit: 99b69e9-unsupported
BuildTime: 03-29-2018.01-58-52.UTC

  • Orchestrator version (e.g. kubernetes, mesos, swarm):
    kubernetes 1.9.3

  • Operating System and version
    centos7

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions