mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-07-28 14:07:14 +00:00
update network-y stuff for supporting ubuntu/bionic as master
On bionic, we don't have eth0 hard coded. example below, so we use `ip route` to figure out the default ethernet interface ``` dims@kubernetes-master:~$ ip link 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 2: ens4: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1460 qdisc fq_codel state UP mode DEFAULT group default qlen 1000 link/ether 42:01:0a:80:00:23 brd ff:ff:ff:ff:ff:ff 3: docker0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN mode DEFAULT group default link/ether 02:42:b2:4e:dd:86 brd ff:ff:ff:ff:ff:ff ``` Also, bionic uses systemd-resolver by default and adds entries in /etc/resolv.conf that CoreDNS does not link. So follow the recommendation in the documentation to specify resolv.conf explicitly
This commit is contained in:
parent
2a17cfbd45
commit
ee3f897ca7
@ -765,6 +765,11 @@ function construct-linux-kubelet-flags {
|
||||
flags+=" --kubeconfig=/var/lib/kubelet/bootstrap-kubeconfig"
|
||||
flags+=" --register-schedulable=false"
|
||||
fi
|
||||
if [[ "${MASTER_OS_DISTRIBUTION}" == "ubuntu" ]]; then
|
||||
# Configure the file path for host dns configuration
|
||||
# as ubuntu uses systemd-resolved
|
||||
flags+=" --resolv-conf=/run/systemd/resolve/resolv.conf"
|
||||
fi
|
||||
else # For nodes
|
||||
flags+=" ${NODE_KUBELET_TEST_ARGS:-}"
|
||||
flags+=" --bootstrap-kubeconfig=/var/lib/kubelet/bootstrap-kubeconfig"
|
||||
@ -772,6 +777,11 @@ function construct-linux-kubelet-flags {
|
||||
if [[ "${node_type}" == "heapster" ]]; then
|
||||
flags+=" ${HEAPSTER_KUBELET_TEST_ARGS:-}"
|
||||
fi
|
||||
if [[ "${NODE_OS_DISTRIBUTION}" == "ubuntu" ]]; then
|
||||
# Configure the file path for host dns configuration
|
||||
# as ubuntu uses systemd-resolved
|
||||
flags+=" --resolv-conf=/run/systemd/resolve/resolv.conf"
|
||||
fi
|
||||
fi
|
||||
# Network plugin
|
||||
if [[ -n "${NETWORK_PROVIDER:-}" || -n "${NETWORK_POLICY_PROVIDER:-}" ]]; then
|
||||
@ -2925,7 +2935,7 @@ function attach-internal-master-ip() {
|
||||
echo "Setting ${name}'s aliases to '${aliases}' (added ${ip})"
|
||||
# Attach ${ip} to ${name}
|
||||
gcloud compute instances network-interfaces update "${name}" --project "${PROJECT}" --zone "${zone}" --aliases="${aliases}"
|
||||
run-gcloud-command "${name}" "${zone}" "sudo ip route add to local ${ip}/32 dev eth0"
|
||||
run-gcloud-command "${name}" "${zone}" 'sudo ip route add to local '${ip}'/32 dev $(ip route | grep default | awk '\''{print $5}'\'')' || true
|
||||
return $?
|
||||
}
|
||||
|
||||
@ -2943,7 +2953,7 @@ function detach-internal-master-ip() {
|
||||
echo "Setting ${name}'s aliases to '${aliases}' (removed ${ip})"
|
||||
# Detach ${MASTER_NAME}-internal-ip from ${name}
|
||||
gcloud compute instances network-interfaces update "${name}" --project "${PROJECT}" --zone "${zone}" --aliases="${aliases}"
|
||||
run-gcloud-command "${name}" "${zone}" "sudo ip route del to local ${ip}/32 dev eth0"
|
||||
run-gcloud-command "${name}" "${zone}" 'sudo ip route del to local '${ip}'/32 dev $(ip route | grep default | awk '\''{print $5}'\'')' || true
|
||||
return $?
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user