Merge pull request 'fix: skip kubeadm wait-control-plane phase, wait for VIP manually' (#92) from stage into master
Some checks failed
Terraform Apply / Terraform Apply (push) Failing after 23m51s
Some checks failed
Terraform Apply / Terraform Apply (push) Failing after 23m51s
Reviewed-on: #92
This commit was merged in pull request #92.
This commit is contained in:
@@ -195,15 +195,47 @@ in
|
||||
env -i PATH=/run/current-system/sw/bin:/usr/bin:/bin kubeadm init \
|
||||
--config /tmp/kubeadm/init-config.yaml \
|
||||
--upload-certs \
|
||||
--ignore-preflight-errors=NumCPU,HTTPProxyCIDR,Port-10250 || {
|
||||
echo "==> kubeadm init failed, checking pod status:"
|
||||
--ignore-preflight-errors=NumCPU,HTTPProxyCIDR,Port-10250 \
|
||||
--skip-phases=wait-control-plane || {
|
||||
echo "==> kubeadm init phases failed, checking pod status:"
|
||||
crictl pods || true
|
||||
crictl ps -a || true
|
||||
echo "==> Checking if VIP is bound:"
|
||||
ip -4 addr show | grep "$vip" || echo "VIP NOT BOUND"
|
||||
echo "==> kube-vip logs:"
|
||||
crictl logs $(crictl ps --name kube-vip -q 2>/dev/null | head -1) 2>/dev/null || echo "Could not get kube-vip logs"
|
||||
echo "==> kubelet logs:"
|
||||
journalctl -xeu kubelet --no-pager -n 50
|
||||
exit 1
|
||||
}
|
||||
|
||||
echo "==> Waiting for kube-vip to claim VIP $vip"
|
||||
for i in $(seq 1 60); do
|
||||
if ip -4 addr show | grep -q "$vip"; then
|
||||
echo "==> VIP $vip is bound"
|
||||
break
|
||||
fi
|
||||
if [ "$i" -eq 60 ]; then
|
||||
echo "==> WARNING: VIP not bound after 2 minutes, proceeding anyway"
|
||||
fi
|
||||
sleep 2
|
||||
done
|
||||
|
||||
echo "==> Waiting for API server to be ready"
|
||||
for i in $(seq 1 60); do
|
||||
if curl -sk "https://$vip:6443/healthz" 2>/dev/null | grep -q "ok"; then
|
||||
echo "==> API server is healthy"
|
||||
break
|
||||
fi
|
||||
if [ "$i" -eq 60 ]; then
|
||||
echo "==> ERROR: API server not healthy after 2 minutes"
|
||||
crictl pods || true
|
||||
crictl ps -a || true
|
||||
exit 1
|
||||
fi
|
||||
sleep 2
|
||||
done
|
||||
|
||||
mkdir -p /root/.kube
|
||||
cp /etc/kubernetes/admin.conf /root/.kube/config
|
||||
chmod 600 /root/.kube/config
|
||||
|
||||
Reference in New Issue
Block a user