You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
* fixed server adress in generic examples
* updated generic docs
* removed unnecessary mounts
* removed some steps not needed
* some clarification on functionality
* updated description
* updated description
* enriching docs with usefull links
* added note about containerised kubelet
* fixed link
* final touches
* one last link
Copy file name to clipboardExpand all lines: Documentation/generic.md
+14-14Lines changed: 14 additions & 14 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -2,32 +2,32 @@
2
2
3
3
This guide is for running kube-router as the [CNI](https://github.com/containernetworking) network provider for on premise and/or bare metal clusters outside of a cloud provider's environment. It assumes the initial cluster is bootstrapped and a networking provider needs configuration.
4
4
5
-
All pod networking CIDRs are allocated by kube-controller-manager. Kube-router provides service/pod networking, a network policy firewall, and a high performance IPVS/LVS based service proxy. The network policy firewall and service proxy are both optional but recommended.
6
-
5
+
All pod networking [CIDRs](https://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing) are allocated by kube-controller-manager. Kube-router provides service/pod networking, a network policy firewall, and a high performance [IPVS/LVS](http://www.linuxvirtualserver.org/software/ipvs.html) based service proxy. The network policy firewall and service proxy are both optional but recommended.
7
6
8
7
### Configuring the Kubelet
9
8
10
-
Ensure each kubelet is configured with the following options:
9
+
Ensure each [Kubelet](https://kubernetes.io/docs/reference/generated/kubelet/) is configured with the following options:
11
10
12
11
--network-plugin=cni
13
12
--cni-conf-dir=/etc/cni/net.d
14
13
15
-
If a previous CNI provider (e.g. weave-net, calico, or flannel) was used, remove old configurations from `/etc/cni/net.d` on each kubelet.
14
+
If running Kubelet containerised, make sure `/etc/cni/net.d` is mapped to the host's `/etc/cni/net.d`
16
15
17
-
**Note: Switching CNI providers on a running cluster requires re-creating all pods to pick up new pod IPs**
16
+
If a previous CNI provider (e.g. weave-net, calico, or flannel) was used, remove old configurations from `/etc/cni/net.d` on each kubelet.
18
17
18
+
_**Note: Switching CNI providers on a running cluster requires re-creating all pods to pick up new pod IPs**_
19
19
20
20
### Configuring kube-controller-manager
21
21
22
-
The following options are mandatory for kube-controller-manager:
22
+
The following options are mandatory for [kube-controller-manager](https://kubernetes.io/docs/reference/generated/kube-controller-manager/):
23
23
24
24
--cluster-cidr=${POD_NETWORK} # for example 10.32.0.0/12
25
25
--service-cluster-ip-range=${SERVICE_IP_RANGE} # for example 10.50.0.0/22
26
26
27
27
28
28
## Running kube-router with everything
29
29
30
-
This runs kube-router with pod/service networking, the network policy firewall, and service proxy to replace kube-proxy. The example command uses `10.32.0.0/12` as the pod CIDR address range and `https://cluster01.int.domain.com:6443` as the apiserver address. Please change these to suit your cluster.
30
+
This runs kube-router with pod/service networking, the network policy firewall, and service proxy to replace kube-proxy. The example command uses `10.32.0.0/12` as the pod CIDR address range and `https://cluster01.int.domain.com:6443` as the [apiserver](https://kubernetes.io/docs/reference/generated/kube-apiserver/) address. Please change these to suit your cluster.
31
31
32
32
CLUSTERCIDR=10.32.0.0/12 \
33
33
APISERVER=https://cluster01.int.domain.com:6443 \
@@ -37,7 +37,7 @@ This runs kube-router with pod/service networking, the network policy firewall,
37
37
38
38
### Removing a previous kube-proxy
39
39
40
-
If kube-proxy was never deployed to the cluster, this can likely be skipped.
40
+
If [kube-proxy](https://kubernetes.io/docs/reference/generated/kube-proxy/) was never deployed to the cluster, this can likely be skipped.
41
41
42
42
Remove any previously running kube-proxy and all iptables rules it created. Start by deleting the kube-proxy daemonset:
43
43
@@ -50,10 +50,10 @@ Any iptables rules kube-proxy left around will also need to be cleaned up. This
50
50
51
51
## Running kube-router without the service proxy
52
52
53
-
This runs kube-router with pod/service networking and the network policy firewall. The service proxy is disabled. Don't forget to update the cluster CIDR and apiserver addresses to match your cluster.
53
+
This runs kube-router with pod/service networking and the network policy firewall. The Services proxy is disabled.
54
54
55
-
CLUSTERCIDR=10.32.0.0/12 \
56
-
APISERVER=https://cluster01.int.domain.com:6443 \
57
-
sh -c 'curl https://raw.githubusercontent.com/cloudnativelabs/kube-router/master/daemonset/generic-kuberouter.yaml -o - | \
58
-
sed -e "s;%APISERVER%;$APISERVER;g" -e "s;%CLUSTERCIDR%;$CLUSTERCIDR;g"' | \
In this mode kube-router relies on for example [kube-proxy](https://kubernetes.io/docs/reference/generated/kube-proxy/) to provide service networking.
58
+
59
+
When service proxy is disabled kube-router will use [in-cluster configuration](https://github.com/kubernetes/client-go/tree/master/examples/in-cluster-client-configuration) to access APIserver through cluster-ip. Service networking must therefore be setup before deploying kube-router.
0 commit comments