Skip to content

Commit 5833fe6

Browse files
committed
docs: note on order of starting components
flannel requires an annotation to use a host external ip for a multi-node setup. If the ip addresses that are in the private space can be routed between nodes (possible in some clouds) this is not an issue. It is only an issue in an HPC or similar environment where the private 10.x address might go to a router and not be understood (and dropped). We ran into this issue on our HPC system, and I realized it was because of the order of operations - we should make sync-external-ip first (adding the annotation) and then make install-flannel to use it. This would only be a bug for specific, multi-node environments. Signed-off-by: vsoch <vsoch@users.noreply.github.com>
1 parent e337e8d commit 5833fe6

File tree

1 file changed

+4
-1
lines changed

1 file changed

+4
-1
lines changed

README.md

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -103,6 +103,7 @@ pasta does not seem to work well
103103
Use scripts in [`./init-host`](./init-host) for automating these steps.
104104

105105
## Usage
106+
106107
See `make help`.
107108

108109
```bash
@@ -170,7 +171,7 @@ make up
170171
171172
### Multi-tenancy
172173

173-
Multiple users on the hosts may create their own instances of Usernetes, but the port numbers have to be changed to avoid conflicts.
174+
Multiple users on the hosts may create their own instances of Usernetes. For systems that do not allow the lower port range, the port numbers can be changed to avoid conflicts.
174175

175176
```bash
176177
# Default: 2379
@@ -187,6 +188,8 @@ make up
187188

188189
![docs/images/multi-tenancy.png](./docs/images/multi-tenancy.png)
189190

191+
In addition, for multi-host, you will want to `make install-flannel` after `make sync-external-ip` when worker pods are up. The sync command adds an annotation `flannel.alpha.coreos.com/public-ip-overwrite` for flannel to direct the nodes to use the physical node host IP. If the flannel pod has already been created for a node, it would need to be restarted to recheck the annotation. The easiest approach is to install flannel after the annotations have been applied.
192+
190193
### Rootful mode
191194
Although Usernetes (Gen2) is designed to be used with Rootless Docker, it should work with the regular "rootful" Docker too.
192195
This might be useful for some people who are looking for "multi-host" version of [`kind`](https://kind.sigs.k8s.io/) and [minikube](https://minikube.sigs.k8s.io/).

0 commit comments

Comments
 (0)