Tôi đang cố gắng tạo Cụm Kubernetes bằng kubeadm. Tôi đã khởi động máy chủ Ubuntu 18.04, cài đặt docker (đảm bảo rằng docker.service đang chạy), cài đặt kubeadm kubelet và kubectl.
Sau đây là các bước mà tôi đã làm:
sudo apt-get cập nhật
sudo apt-get cài đặt docker.io -y
sudo systemctl kích hoạt docker
sudo systemctl bắt đầu docker
cuộn tròn -s https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key thêm
sudo apt-add-repository "deb http://apt.kubernetes.io/ kubernetes-xenial chính"
sudo apt-get cài đặt kubeadm kubelet kubectl -y
sudo apt-mark giữ kubeadm kubelet kubectl
phiên bản kubeadm
hoán đổi âa
Sudo hostnamectl set-hostname master-node
Sudo kubeadm init --pod-network-cidr=10.244.0.0/16
Một lần sau khi tôi chạy Sudo kubeadm init --pod-network-cidr=10.244.0.0/16, tôi gặp lỗi sau:
root@ip-172-31-10-50:/home/ubuntu# Sudo kubeadm init --pod-network-cidr=192.168.0.0/16
[init] Sử dụng phiên bản Kubernetes: v1.23.1
[preflight] Chạy kiểm tra trước chuyến bay
[preflight] Kéo hình ảnh cần thiết để thiết lập cụm Kubernetes
[preflight] Quá trình này có thể mất một hoặc hai phút, tùy thuộc vào tốc độ kết nối internet của bạn
[preflight] Bạn cũng có thể thực hiện hành động này trước bằng cách sử dụng 'kéo hình ảnh cấu hình kubeadm'
[certs] Sử dụng thư mục certificateDir "/etc/kubernetes/pki"
[certs] Sử dụng cơ quan cấp chứng chỉ ca hiện có
[certs] Sử dụng khóa và chứng chỉ apiserver hiện có trên đĩa
[certs] Sử dụng khóa và chứng chỉ apiserver-kubelet-client hiện có trên đĩa
[certs] Sử dụng tổ chức phát hành chứng chỉ front-proxy-ca hiện có
[certs] Sử dụng khóa và chứng chỉ ứng dụng khách-proxy trước hiện có trên đĩa
[certs] Sử dụng tổ chức phát hành chứng chỉ etcd/ca hiện có
[certs] Sử dụng chứng chỉ và khóa máy chủ/etcd hiện có trên đĩa
[certs] Sử dụng khóa và chứng chỉ etcd/peer hiện có trên đĩa
[certs] Sử dụng chứng chỉ và khóa etcd/healthcheck-client hiện có trên đĩa
[certs] Sử dụng khóa và chứng chỉ apiserver-etcd-client hiện có trên đĩa
[certs] Sử dụng khóa "sa" hiện có
[kubeconfig] Sử dụng thư mục kubeconfig "/etc/kubernetes"
[kubeconfig] Sử dụng tệp kubeconfig hiện có: "/etc/kubernetes/admin.conf"
[kubeconfig] Sử dụng tệp kubeconfig hiện có: "/etc/kubernetes/kubelet.conf"
[kubeconfig] Sử dụng tệp kubeconfig hiện có: "/etc/kubernetes/controller-manager.conf"
[kubeconfig] Sử dụng tệp kubeconfig hiện có: "/etc/kubernetes/scheduler.conf"
[kubelet-start] Viết tệp môi trường kubelet có cờ vào tệp "/var/lib/kubelet/kubeadm->flags.env"
[kubelet-start] Viết cấu hình kubelet vào tệp "/var/lib/kubelet/config.yaml"
[kubelet-start] Bắt đầu kubelet
[mặt phẳng điều khiển] Sử dụng thư mục kê khai "/etc/kubernetes/manifests"
[control-plane] Tạo bảng kê khai Pod tĩnh cho "kube-apiserver"
[control-plane] Tạo bảng kê khai Pod tĩnh cho "kube-controller-manager"
[control-plane] Tạo bảng kê khai Pod tĩnh cho "kube-scheduler"
[etcd] Tạo tệp kê khai Pod tĩnh cho etcd cục bộ trong "/etc/kubernetes/manifests"
[wait-control-plane] Chờ kubelet khởi động mặt phẳng điều khiển dưới dạng Pod tĩnh từ thư mục "/etc/kubernetes/manifests". Quá trình này có thể mất tới 4m0s
[kubelet-check] Thời gian chờ ban đầu là 40 giây đã qua.
[kubelet-check] Có vẻ như kubelet không chạy hoặc hoạt động bình thường.
[kiểm tra kubelet] Lệnh gọi HTTP bằng 'curl -sSL http://localhost:10248/healthz' không thành công do lỗi: Get "http://localhost:10248/healthz": dial tcp 127.0.0.1:10248: connect : kết nối bị từ chối.
tôi đã cố chạy kubectl init --pod-network-cidr sử dụng CIDR của Flannel(10.244.0.0/16) và cũng CIDR của Calico(192.168.0.0/16). Tuy nhiên, tôi đã nhận được lỗi tương tự.
Ngoài ra, tôi quan sát thấy rằng tình trạng của Kubelet trong trường hợp EC2 của tôi bị dao động. Khi tôi chạy trạng thái systemctl kubelet.service, đôi khi nó không chạy và đôi khi Kubelet đang chạy. Nó xảy ra tự động. Hãy nghĩ rằng đây là những gì thất bại khởi tạo kubectl kể từ kiểm tra kubelet nói rõ ràng: "Có vẻ như kubelet không chạy hoặc hoạt động bình thường"
Sau khi chạy trạng thái systemctl kubelet.service, lỗi:
root@ip-172-31-10-50:/home/ubuntu# systemctl status kubelet.service
â kubelet.service - kubelet: Tác nhân nút Kubernetes
Đã tải: đã tải (/lib/systemd/system/kubelet.service; đã bật; giá trị đặt sẵn của nhà cung cấp: đã bật)
Đăng nhập: /etc/systemd/system/kubelet.service.d
ââ10-kubeadm.conf
Hoạt động: đang kích hoạt (tự động khởi động lại) (Kết quả: mã thoát) kể từ Thứ Tư 2021-12-29 17:52:35 UTC; 3 giây trước
Tài liệu: https://kubernetes.io/docs/home/
Quá trình: 22901 ExecStart=/usr/bin/kubelet $KUBELET_KUBECONFIG_ARGS $KUBELET_CONFIG_ARGS $KUBELET_KUBEADM_ARGS $KUBELET_EXTRA_ARGS (mã=đã thoát, trạng thái=1/THẤT BẠI)
PID chính: 22901 (mã=đã thoát, trạng thái=1/THẤT BẠI)
Và khi tôi tiếp tục chạy trạng thái systemctl kubelet.service, sau vài giây, kubectl.service dường như đang chạy và sau vài giây, nó lại bị lỗi.
...bỏ qua...
â kubelet.service - kubelet: Tác nhân nút Kubernetes
Đã tải: đã tải (/lib/systemd/system/kubelet.service; đã bật; giá trị đặt trước của nhà cung cấp: đã bật)
Đăng nhập: /etc/systemd/system/kubelet.service.d
ââ10-kubeadm.conf
Hoạt động: hoạt động (đang chạy) kể từ Thứ Năm 2021-12-30 18:50:49 UTC; 125 mili giây trước
Tài liệu: https://kubernetes.io/docs/home/
PID chính: 12895 (kubelet)
Nhiệm vụ: 9 (giới hạn: 4686)
Nhóm C: /system.slice/kubelet.service
ââ12895 /usr/bin/kubelet --bootstrap-kubeconfig=/etc/kubernetes/bootstrap-kubelet.conf > --kubeconfig=/etc/kubernetes/kubelet.conf --config=/var/lib /kubelet/conf
Tôi không chắc tại sao kubelet lại dao động theo cách này.
Có ai biết làm thế nào để sửa lỗi này?