Skip to content
This repository has been archived by the owner on Feb 1, 2021. It is now read-only.

Add clarification on install for VM cloning and Engine ID duplication issue #1472

Merged

Conversation

abronan
Copy link
Contributor

@abronan abronan commented Dec 1, 2015

Fix #1467

Signed-off-by: Alexandre Beslic abronan@docker.com

@vieux
Copy link
Contributor

vieux commented Dec 1, 2015

ping @moxiegirl

@MHBauer
Copy link
Contributor

MHBauer commented Dec 1, 2015

I agree about needing the warning. I know and understand what the issue is, so it reads okay to me. I would like someone who doesn't know about the issue to understand what the text is talking about.

@abronan abronan added this to the 1.0.1 milestone Dec 1, 2015
@dongluochen
Copy link
Contributor

LGTM. Thanks @abronan.

@@ -27,7 +27,7 @@ You can run Docker Swarm on Linux 64-bit architectures. You can also install and

Take a moment and identify the systems on your network that you intend to use. Ensure each node meets the requirements listed above.


> **Warning**: Before going any further with the setup process, make sure that Docker is not pre-installed on your VM image and/or that the machine is not created using VM cloning. Docker generates a unique ID for the Engine that is located in the `/etc/docker/key.json` file. If a VM is the result of cloning with a docker daemon pre-installed, Swarm will not be able to recognize remote docker Engines as different. This is because the same unique ID is duplicated on those Engines from the VM cloning. As a result, you will see a single docker Engine registered on Swarm. As a workaround you can stop the daemon on those machines, delete the `/etc/docker/key.json` and finally restart the Engines. This will regenerate a new ID for each of those docker daemons.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@MHBauer I don't actually know this particular issue. Tho, I am close to the issue:

  • VM cloning --- how would a user go about that --- it would be helpful to explain it. Clone an image with AWS or something different?
  • Does a user see a warning / error message during the setup about this? Presenting that message will help them to debug the problem.

Also, this Warning really is too long to be a warning. So, I'd likely to restructure once I know the answer to the questions...or I may find the time to setup and test it myself.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@moxiegirl Yeah I admit I went a little too overboard with that warning 😅

Will try to re-structure and make it more clear and concise.

@@ -27,7 +27,7 @@ You can run Docker Swarm on Linux 64-bit architectures. You can also install and

Take a moment and identify the systems on your network that you intend to use. Ensure each node meets the requirements listed above.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@abronan try this

## Prerequisites 

You install Docker Swarm on a single system which is known as your Docker Swarm
manager. You create the cluster, or swarm, on one or more additional nodes on
your network.  Each node in your swarm must:

* be accessible by the swarm manager across your network
* have Docker Engine 1.6.0+ installed
* open a TCP port to listen for the manager
* *do not* install on VM or other image created through cloning

Docker generates a unique ID for the Engine that is located in the
`/etc/docker/key.json` file. If a VM is cloned from an instance where the a
Docker daemon was previously pre-installed, Swarm is unable to differentiate
among the remote Docker engines. This is because the cloning process copied the
the identical ID to each image and the ID is no longer unique. 

If you forget this restriction and create a node anyway, Swarm displays a single
Docker engine as registered. To workaround this problem, by regenerating a new
ID for each node with the problem. To do this stop the daemon on a node, delete
its `/etc/docker/key.json` file, and restart the daemon.

You can run Docker Swarm on Linux 64-bit architectures. You can also install and
run it on 64-bit Windows and Max OSX but these architectures are *not* regularly
tested for compatibility. 

Take a moment and identify the systems on your network that you intend to use.
Ensure each node meets the requirements listed above.

@abronan abronan force-pushed the improve_docs_duplicate_engine_ids branch from c38438e to 53213f7 Compare December 4, 2015 23:10
@abronan
Copy link
Contributor Author

abronan commented Dec 4, 2015

@moxiegirl PTAL. Thanks for the suggestions, much much better now 😄

You can run Docker Swarm on Linux 64-bit architectures. You can also install and run it on 64-bit Windows and Max OSX but these architectures are *not* regularly tested for compatibility.
Docker generates a unique ID for the Engine that is located in the
`/etc/docker/key.json` file. If a VM is cloned from an instance where a
Docker daemon was previously pre-installed, Swarm will unable to differentiate

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

will unable > is unable

@moxiegirl
Copy link

@abronan Glad I could help. I spotted one minor problem but otherwise LGTM. After that fix, merge away.

… problem

Signed-off-by: Alexandre Beslic <abronan@docker.com>
@abronan abronan force-pushed the improve_docs_duplicate_engine_ids branch from 53213f7 to 75a3ac2 Compare December 7, 2015 05:28
abronan added a commit that referenced this pull request Dec 7, 2015
Add clarification on install for VM cloning and Engine ID duplication issue
@abronan abronan merged commit 0b0e328 into docker-archive:master Dec 7, 2015
@moxiegirl moxiegirl removed their assignment Dec 21, 2015
@abronan abronan deleted the improve_docs_duplicate_engine_ids branch August 19, 2016 21:21
ChristianKniep pushed a commit to ChristianKniep/swarm that referenced this pull request Jul 27, 2017
…icate_engine_ids

Add clarification on install for VM cloning and Engine ID duplication issue
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants