mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-08-01 07:47:56 +00:00
Merge pull request #14803 from zhengguoyong/minion-libvird
Auto commit by PR queue bot
This commit is contained in:
commit
720dc87967
@ -26,25 +26,25 @@ export MASTER_IP="192.168.10.1"
|
|||||||
export INSTANCE_PREFIX=kubernetes
|
export INSTANCE_PREFIX=kubernetes
|
||||||
export MASTER_NAME="${INSTANCE_PREFIX}-master"
|
export MASTER_NAME="${INSTANCE_PREFIX}-master"
|
||||||
|
|
||||||
# Map out the IPs, names and container subnets of each minion
|
# Map out the IPs, names and container subnets of each node
|
||||||
export MINION_IP_BASE="192.168.10."
|
export NODE_IP_BASE="192.168.10."
|
||||||
MINION_CONTAINER_SUBNET_BASE="10.10"
|
NODE_CONTAINER_SUBNET_BASE="10.10"
|
||||||
MASTER_CONTAINER_NETMASK="255.255.255.0"
|
MASTER_CONTAINER_NETMASK="255.255.255.0"
|
||||||
MASTER_CONTAINER_ADDR="${MINION_CONTAINER_SUBNET_BASE}.0.1"
|
MASTER_CONTAINER_ADDR="${NODE_CONTAINER_SUBNET_BASE}.0.1"
|
||||||
MASTER_CONTAINER_SUBNET="${MINION_CONTAINER_SUBNET_BASE}.0.1/24"
|
MASTER_CONTAINER_SUBNET="${NODE_CONTAINER_SUBNET_BASE}.0.1/24"
|
||||||
CONTAINER_SUBNET="${MINION_CONTAINER_SUBNET_BASE}.0.0/16"
|
CONTAINER_SUBNET="${NODE_CONTAINER_SUBNET_BASE}.0.0/16"
|
||||||
if [[ "$NUM_MINIONS" -gt 253 ]]; then
|
if [[ "$NUM_MINIONS" -gt 253 ]]; then
|
||||||
echo "ERROR: Because of how IPs are allocated in ${BASH_SOURCE}, you cannot create more than 253 minions"
|
echo "ERROR: Because of how IPs are allocated in ${BASH_SOURCE}, you cannot create more than 253 nodes"
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
for ((i=0; i < NUM_MINIONS; i++)) do
|
for ((i=0; i < NUM_MINIONS; i++)) do
|
||||||
MINION_IPS[$i]="${MINION_IP_BASE}$((i+2))"
|
NODE_IPS[$i]="${NODE_IP_BASE}$((i+2))"
|
||||||
MINION_NAMES[$i]="${INSTANCE_PREFIX}-minion-$((i+1))"
|
NODE_NAMES[$i]="${INSTANCE_PREFIX}-node-$((i+1))"
|
||||||
MINION_CONTAINER_SUBNETS[$i]="${MINION_CONTAINER_SUBNET_BASE}.$((i+1)).1/24"
|
NODE_CONTAINER_SUBNETS[$i]="${NODE_CONTAINER_SUBNET_BASE}.$((i+1)).1/24"
|
||||||
MINION_CONTAINER_ADDRS[$i]="${MINION_CONTAINER_SUBNET_BASE}.$((i+1)).1"
|
NODE_CONTAINER_ADDRS[$i]="${NODE_CONTAINER_SUBNET_BASE}.$((i+1)).1"
|
||||||
MINION_CONTAINER_NETMASKS[$i]="255.255.255.0"
|
NODE_CONTAINER_NETMASKS[$i]="255.255.255.0"
|
||||||
done
|
done
|
||||||
MINION_CONTAINER_SUBNETS[$NUM_MINIONS]=$MASTER_CONTAINER_SUBNET
|
NODE_CONTAINER_SUBNETS[$NUM_MINIONS]=$MASTER_CONTAINER_SUBNET
|
||||||
|
|
||||||
SERVICE_CLUSTER_IP_RANGE=10.11.0.0/16 # formerly PORTAL_NET
|
SERVICE_CLUSTER_IP_RANGE=10.11.0.0/16 # formerly PORTAL_NET
|
||||||
|
|
||||||
|
@ -46,7 +46,7 @@ coreos:
|
|||||||
Name=cbr0
|
Name=cbr0
|
||||||
|
|
||||||
[Network]
|
[Network]
|
||||||
Address=${MINION_CONTAINER_SUBNETS[$i]}
|
Address=${NODE_CONTAINER_SUBNETS[$i]}
|
||||||
|
|
||||||
[Route]
|
[Route]
|
||||||
Destination=${CONTAINER_SUBNET}
|
Destination=${CONTAINER_SUBNET}
|
||||||
@ -113,4 +113,4 @@ coreos:
|
|||||||
reboot-strategy: off
|
reboot-strategy: off
|
||||||
|
|
||||||
$( [[ ${type} =~ "master" ]] && render-template "$ROOT/user_data_master.yml" )
|
$( [[ ${type} =~ "master" ]] && render-template "$ROOT/user_data_master.yml" )
|
||||||
$( [[ ${type} =~ "minion" ]] && render-template "$ROOT/user_data_minion.yml" )
|
$( [[ ${type} =~ "node" ]] && render-template "$ROOT/user_data_minion.yml" )
|
||||||
|
@ -15,7 +15,7 @@ coreos:
|
|||||||
[Service]
|
[Service]
|
||||||
ExecStart=/opt/kubernetes/bin/kubelet \
|
ExecStart=/opt/kubernetes/bin/kubelet \
|
||||||
--address=0.0.0.0 \
|
--address=0.0.0.0 \
|
||||||
--hostname-override=${MINION_IPS[$i]} \
|
--hostname-override=${NODE_IPS[$i]} \
|
||||||
--api-servers=http://${MASTER_IP}:8080 \
|
--api-servers=http://${MASTER_IP}:8080 \
|
||||||
$( [[ "$ENABLE_CLUSTER_DNS" == "true" ]] && echo "--cluster-dns=${DNS_SERVER_IP}" ) \
|
$( [[ "$ENABLE_CLUSTER_DNS" == "true" ]] && echo "--cluster-dns=${DNS_SERVER_IP}" ) \
|
||||||
$( [[ "$ENABLE_CLUSTER_DNS" == "true" ]] && echo "--cluster-domain=${DNS_DOMAIN}" ) \
|
$( [[ "$ENABLE_CLUSTER_DNS" == "true" ]] && echo "--cluster-domain=${DNS_DOMAIN}" ) \
|
||||||
|
@ -46,9 +46,9 @@ function detect-master {
|
|||||||
echo "KUBE_MASTER: $KUBE_MASTER"
|
echo "KUBE_MASTER: $KUBE_MASTER"
|
||||||
}
|
}
|
||||||
|
|
||||||
# Get minion IP addresses and store in KUBE_MINION_IP_ADDRESSES[]
|
# Get node IP addresses and store in KUBE_NODE_IP_ADDRESSES[]
|
||||||
function detect-minions {
|
function detect-nodes {
|
||||||
KUBE_MINION_IP_ADDRESSES=("${MINION_IPS[@]}")
|
KUBE_NODE_IP_ADDRESSES=("${NODE_IPS[@]}")
|
||||||
}
|
}
|
||||||
|
|
||||||
# Verify prereqs on host machine
|
# Verify prereqs on host machine
|
||||||
@ -166,9 +166,9 @@ function wait-cluster-readiness {
|
|||||||
|
|
||||||
local timeout=120
|
local timeout=120
|
||||||
while [[ $timeout -ne 0 ]]; do
|
while [[ $timeout -ne 0 ]]; do
|
||||||
nb_ready_minions=$("${kubectl}" get nodes -o go-template="{{range.items}}{{range.status.conditions}}{{.type}}{{end}}:{{end}}" --api-version=v1 2>/dev/null | tr ':' '\n' | grep -c Ready || true)
|
nb_ready_nodes=$("${kubectl}" get nodes -o go-template="{{range.items}}{{range.status.conditions}}{{.type}}{{end}}:{{end}}" --api-version=v1 2>/dev/null | tr ':' '\n' | grep -c Ready || true)
|
||||||
echo "Nb ready minions: $nb_ready_minions / $NUM_MINIONS"
|
echo "Nb ready nodes: $nb_ready_nodes / $NUM_MINIONS"
|
||||||
if [[ "$nb_ready_minions" -eq "$NUM_MINIONS" ]]; then
|
if [[ "$nb_ready_nodes" -eq "$NUM_MINIONS" ]]; then
|
||||||
return 0
|
return 0
|
||||||
fi
|
fi
|
||||||
|
|
||||||
@ -182,7 +182,7 @@ function wait-cluster-readiness {
|
|||||||
# Instantiate a kubernetes cluster
|
# Instantiate a kubernetes cluster
|
||||||
function kube-up {
|
function kube-up {
|
||||||
detect-master
|
detect-master
|
||||||
detect-minions
|
detect-nodes
|
||||||
gen-kube-bearertoken
|
gen-kube-bearertoken
|
||||||
initialize-pool keep_base_image
|
initialize-pool keep_base_image
|
||||||
initialize-network
|
initialize-network
|
||||||
@ -195,11 +195,11 @@ function kube-up {
|
|||||||
if [[ $i -eq $NUM_MINIONS ]]; then
|
if [[ $i -eq $NUM_MINIONS ]]; then
|
||||||
etcd2_initial_cluster[$i]="${MASTER_NAME}=http://${MASTER_IP}:2380"
|
etcd2_initial_cluster[$i]="${MASTER_NAME}=http://${MASTER_IP}:2380"
|
||||||
else
|
else
|
||||||
etcd2_initial_cluster[$i]="${MINION_NAMES[$i]}=http://${MINION_IPS[$i]}:2380"
|
etcd2_initial_cluster[$i]="${NODE_NAMES[$i]}=http://${NODE_IPS[$i]}:2380"
|
||||||
fi
|
fi
|
||||||
done
|
done
|
||||||
etcd2_initial_cluster=$(join , "${etcd2_initial_cluster[@]}")
|
etcd2_initial_cluster=$(join , "${etcd2_initial_cluster[@]}")
|
||||||
readonly machines=$(join , "${KUBE_MINION_IP_ADDRESSES[@]}")
|
readonly machines=$(join , "${KUBE_NODE_IP_ADDRESSES[@]}")
|
||||||
|
|
||||||
for (( i = 0 ; i <= $NUM_MINIONS ; i++ )); do
|
for (( i = 0 ; i <= $NUM_MINIONS ; i++ )); do
|
||||||
if [[ $i -eq $NUM_MINIONS ]]; then
|
if [[ $i -eq $NUM_MINIONS ]]; then
|
||||||
@ -207,9 +207,9 @@ function kube-up {
|
|||||||
name=$MASTER_NAME
|
name=$MASTER_NAME
|
||||||
public_ip=$MASTER_IP
|
public_ip=$MASTER_IP
|
||||||
else
|
else
|
||||||
type=minion-$(printf "%02d" $i)
|
type=node-$(printf "%02d" $i)
|
||||||
name=${MINION_NAMES[$i]}
|
name=${NODE_NAMES[$i]}
|
||||||
public_ip=${MINION_IPS[$i]}
|
public_ip=${NODE_IPS[$i]}
|
||||||
fi
|
fi
|
||||||
image=$name.img
|
image=$name.img
|
||||||
config=kubernetes_config_$type
|
config=kubernetes_config_$type
|
||||||
@ -263,7 +263,7 @@ function kube-push {
|
|||||||
kube-push-internal
|
kube-push-internal
|
||||||
ssh-to-node "$MASTER_NAME" "sudo systemctl restart kube-apiserver kube-controller-manager kube-scheduler"
|
ssh-to-node "$MASTER_NAME" "sudo systemctl restart kube-apiserver kube-controller-manager kube-scheduler"
|
||||||
for ((i=0; i < NUM_MINIONS; i++)); do
|
for ((i=0; i < NUM_MINIONS; i++)); do
|
||||||
ssh-to-node "${MINION_NAMES[$i]}" "sudo systemctl restart kubelet kube-proxy"
|
ssh-to-node "${NODE_NAMES[$i]}" "sudo systemctl restart kubelet kube-proxy"
|
||||||
done
|
done
|
||||||
wait-cluster-readiness
|
wait-cluster-readiness
|
||||||
}
|
}
|
||||||
@ -312,14 +312,14 @@ function ssh-to-node {
|
|||||||
local cmd="$2"
|
local cmd="$2"
|
||||||
local machine
|
local machine
|
||||||
|
|
||||||
if [[ "$node" == "$MASTER_IP" ]] || [[ "$node" =~ ^"$MINION_IP_BASE" ]]; then
|
if [[ "$node" == "$MASTER_IP" ]] || [[ "$node" =~ ^"$NODE_IP_BASE" ]]; then
|
||||||
machine="$node"
|
machine="$node"
|
||||||
elif [[ "$node" == "$MASTER_NAME" ]]; then
|
elif [[ "$node" == "$MASTER_NAME" ]]; then
|
||||||
machine="$MASTER_IP"
|
machine="$MASTER_IP"
|
||||||
else
|
else
|
||||||
for ((i=0; i < NUM_MINIONS; i++)); do
|
for ((i=0; i < NUM_MINIONS; i++)); do
|
||||||
if [[ "$node" == "${MINION_NAMES[$i]}" ]]; then
|
if [[ "$node" == "${NODE_NAMES[$i]}" ]]; then
|
||||||
machine="${MINION_IPS[$i]}"
|
machine="${NODE_IPS[$i]}"
|
||||||
break
|
break
|
||||||
fi
|
fi
|
||||||
done
|
done
|
||||||
|
Loading…
Reference in New Issue
Block a user