-
Notifications
You must be signed in to change notification settings - Fork 14.5k
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
Added IPV6 information to setup cluster using kubeadm #6465
Changes from 1 commit
d5273b9
ccb4dd7
76cbaf0
4b06883
d270ed7
3522d55
aa7bf8f
882beff
c166f3d
eb4e426
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -115,7 +115,7 @@ something provider-specific. The tabs below will contain a notice about what fla | |
on `kubeadm init` are required. | ||
- Unless otherwise specified, kubeadm uses the default gateway's network interface | ||
to advertise the master's IP. If you want to use a different network interface, specify | ||
`--apiserver-advertise-address=<ip-address>` argument to `kubeadm init`. | ||
`--apiserver-advertise-address=<ip-address>` argument to `kubeadm init`. To configure IPV6 for apiserver, this argument should be specified with IPV6 enclosed in square brackets `--apiserver-advertise-address=[ipv6-address]` | ||
- If you would like to customise control plane components, you can do so by providing | ||
extra args to each one, as documented [here](/docs/admin/kubeadm#custom-args). | ||
- `kubeadm init` will first run a series of prechecks to ensure that the machine | ||
|
@@ -125,6 +125,21 @@ components. This may take several minutes. | |
- You can't run `kubeadm init` twice without tearing down the cluster in between | ||
([unless you're upgrading from v1.6 to v1.7](/docs/tasks/administer-cluster/kubeadm-upgrade-1-7/)), | ||
see [Tear Down](#tear-down). | ||
- Optionally, to specify IPV6 for liveness probe for control-plan components and etcd server, you can specify extraArgs in kubeadm.conf file as mentioned in example below. ${APISERVER_ADVERTISE_ADDRESS} is your IPV6 enclosed in square brackets. | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Substitute control-plan with controlplane or control plane Instead of adding line 128. I would add to line 119. Line 119 is already referring to using custom args to customize the controlplane. Then update /docs/admin/kubeadm#custom-args with your example kubeadm.conf with a sentence that states this is an example of setting an IPv6 address for controller-manager, scheduler and etcd. Replace ${APISERVER_ADVERTISE_ADDRESS} with an example IPv6 apiserver address. |
||
|
||
``` yaml | ||
apiVersion: kubeadm.k8s.io/v1alpha1 | ||
kind: MasterConfiguration | ||
apiServerExtraArgs: | ||
etcd-servers: "http://${APISERVER_ADVERTISE_ADDRESS}:2379" | ||
controllerManagerExtraArgs: | ||
address: "${APISERVER_ADVERTISE_ADDRESS}" | ||
schedulerExtraArgs: | ||
address: "${APISERVER_ADVERTISE_ADDRESS}" | ||
etcd: | ||
extraArgs: | ||
listen-client-urls: "http://${APISERVER_ADVERTISE_ADDRESS}:2379" | ||
``` | ||
|
||
The output should look like: | ||
|
||
|
@@ -211,7 +226,7 @@ supports Container Network Interface (CNI) based networks (and does not support | |
|
||
Several projects provide Kubernetes pod networks using CNI, some of which also | ||
support [Network Policy](/docs/concepts/services-networking/networkpolicies/). See the [add-ons | ||
page](/docs/concepts/cluster-administration/addons/) for a complete list of available network add-ons. | ||
page](/docs/concepts/cluster-administration/addons/) for a complete list of available network add-ons. IPV6 support was added in CNI v0.6, so for IPV6 based network please use CNI version 0.6 or higher. | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. sub IPV6 with IPv6 sub 0.6 with 0.6.0 and link to the cni 0.6.0 release page: https://github.com/containernetworking/cni/releases/tag/v0.6.0 Please note that CNI bridge and local-ipam are the only supported drivers in 1.9. Link to these drivers: |
||
|
||
**New for Kubernetes 1.6:** kubeadm 1.6 sets up a more secure cluster by | ||
default. As such it uses RBAC to grant limited privileges to workloads running | ||
|
@@ -371,6 +386,8 @@ The nodes are where your workloads (containers and pods, etc) run. To add new no | |
kubeadm join --token <token> <master-ip>:<master-port> --discovery-token-ca-cert-hash sha256:<hash> | ||
``` | ||
|
||
Please note that to specify IPV6 for master-ip it must be enclosed in square brackets, for instance `[fd00::100]`. | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. sub Please note with Note: |
||
|
||
The output should look something like: | ||
|
||
``` | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Brackets are not needed when specifying an
apiserver-advertise-address
IPv6 address. Brackets should only ever be required when specifying an IPv6 tuple, i.e.[fd00:db01::100]:8080
.Instead of the docs you added to line 118, consider the following "To deploy an IPv6 Kubernetes cluster using IPv6 addressing, you must specify an IPv6
--apiserver-advertise-address
".nit: Please replace all references of IPV6 with IPv6 (lowercase v)