Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Problem upgrading from Python version to Go version #89

Closed
frostynova opened this issue Nov 16, 2016 · 7 comments
Closed

Problem upgrading from Python version to Go version #89

frostynova opened this issue Nov 16, 2016 · 7 comments

Comments

@frostynova
Copy link

We have libnetwork plugin running in the production environment, so i wonder if the go version release, can we migrate online?

@tomdee
Copy link
Contributor

tomdee commented Nov 17, 2016

You should be able to but remember that IPV6 isn't supported, the ipam driver is renamed to calico-ipam and calico-ipam must be used. We haven't tested it extensively, so please test it locally before running the migration on your production environment! Of course, we're keen to hear any feedback.

@tomdee tomdee closed this as completed Nov 17, 2016
@frostynova
Copy link
Author

@tomdee We have tried the new version, but got an error when starting container:

Error response from daemon: Plugin does not implement the requested driver

I think this is because the rename of ipam driver. But what should we do to join the old network after upgrading the calico node?

@tomdee tomdee changed the title Can the go version plugin migrate online? Problem upgrading from Python version to Go version Dec 15, 2016
@tomdee
Copy link
Contributor

tomdee commented Dec 15, 2016

The rename of the ipam driver is caused by this upstream issue - docker/go-plugins-helpers#36

As far as I can tell, Docker doesn't allow the IPAM driver being used for a docker network to be updated after it's been created. https://docs.docker.com/engine/reference/api/docker_remote_api_v1.24/#/create-a-network

@tomdee tomdee reopened this Dec 15, 2016
@CMGS
Copy link
Contributor

CMGS commented Dec 15, 2016

I modified docker network data in etcd (docker/network/v1.0/network), changed ipamType from calico to calico-ipam and it seems work well for me.

however, the fresh container started with previous network and new calico can not connected by exists containers. I checked the route table and it was correct, so how to make it work well?

@frostynova
Copy link
Author

@tomdee We found another issue:

Python version plugin using network id to auto create profile
But Go version using network name which will prevent the upgrade node join the old SDN network.

@frostynova
Copy link
Author

frostynova commented Dec 19, 2016

@tomdee

By using profile rules, i made the name and id profile communicate with each other.

@tomdee
Copy link
Contributor

tomdee commented Jan 11, 2017

It would be great if we could come up with a decent process to upgrading from the Python version to the Go version. e.g. a script or a documented procedure. Until that happens, the upgrade is unsupported.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants