Điểm:1

Triển khai mặt phẳng điều khiển mà không cần đăng ký nút chính bằng kubeadm

lá cờ in

Tôi muốn thiết lập cụm Kubernetes và ẩn các thành phần của mặt phẳng điều khiển cho tất cả các máy khách (một số loại cụm được quản lý). Kubeadm sử dụng Kubelet và các nhóm tĩnh để chạy các thành phần này dẫn đến việc đăng ký tài nguyên Nút và Nhóm vào Máy chủ API để bất kỳ người dùng nào có CụmVai trò có thể liệt kê và quản lý các nút và nhóm chính.

Tôi có thể khởi động mặt phẳng điều khiển, dừng tác nhân Kubelet và xóa tài nguyên nút chính nhưng có vẻ như theo cách này tôi không thể sử dụng kubeadm để nâng cấp các thành phần và Kubelet để khôi phục các nhóm nếu có sự cố xảy ra.

Tôi có thể chạy mặt phẳng điều khiển ra khỏi cụm Kubernetes bằng cách sử dụng không kubeadm hoặc tôi nên sử dụng công cụ của riêng mình trong trường hợp đó?

lá cờ in
Xin chào Pavel Parshin chào mừng đến với S.F. Có vẻ như bạn đang cố làm tê liệt mặt phẳng điều khiển để giải quyết vấn đề RBAC; nếu bạn không muốn mọi người xoay vòng máy bay điều khiển của mình, hãy đảm bảo thông tin đăng nhập của họ không có quyền truy cập vào nó
Mikołaj Głodziak avatar
lá cờ id
Bạn đã sử dụng phiên bản Kubernetes nào và bạn đã thiết lập cụm như thế nào? Bạn đã sử dụng cài đặt kim loại trần hoặc một số nhà cung cấp đám mây?
Pavel Parshin avatar
lá cờ in
@mdaniel, xin chào. Tôi nghĩ đó không phải là vấn đề của RBAC vì tôi sẽ trao cho người dùng cuối vai trò quản trị viên. Đó là một trong những yêu cầu
Pavel Parshin avatar
lá cờ in
@MikoÅajGÅodziak, 19.14. Tôi đang sử dụng ClusterAPI và OpenStack để thiết lập cụm. ClusterAPI sử dụng kubeadm để khởi động mặt phẳng điều khiển
Điểm:1
lá cờ id

Can I run the control plane out of the Kubernetes cluster using kubeadm

Short answer: No, it is not possible.

should I use my own instruments in that case

Yes, that will be the solution to this situation. If you find your own solution, feel free to write it as an answer.

As a workaround, you can try to create a separate control plane (as in Kubernetes the hard way) and thenkubeadm join. However, you must also be aware that this type of configuration will be complicated to perform. Look also at this blog page.

See also similar topics:

You can run the Kubernetes control plane outside Kubernetes as long as the worker nodes have network access to the control plane. This approach is used on most managed Kubernetes solutions.

Look also this page about Self-registration of Nodes.

EDIT: I have found another possible workaround.

EDIT2: This tutorial should help you too.

Wytrzymały Wiktor avatar
lá cờ it
Xin chào @PavelParshin. Điều này có [trả lời câu hỏi của bạn](https://stackoverflow.com/help/someone-answers) không?
Điểm:0
lá cờ in

Cuối cùng tôi đã viết lại kubeadm đã thêm tùy chọn triển khai các thành phần mặt phẳng điều khiển dưới dạng dịch vụ unix và chạy chúng ra khỏi cụm Kubernetes.

Nếu bạn quan tâm, hãy xem PR và áp dụng nó cho các yêu cầu của bạn. Cách sử dụng:

# xây dựng kubeadm cập nhật
tạo CÁI GÌ=cmd/kubeadm KUBE_BUILD_PLATFORMS=linux/AMD64

# cài đặt các thành phần của mặt phẳng điều khiển
wget -q --show-progress --https-only --timestamping \
  "https://storage.googleapis.com/kubernetes-release/release/v1.21.0/bin/linux/amd64/kube-apiserver" \
  "https://storage.googleapis.com/kubernetes-release/release/v1.21.0/bin/linux/amd64/kube-controller-manager" \
  "https://storage.googleapis.com/kubernetes-release/release/v1.21.0/bin/linux/amd64/kube-scheduler" \
  "https://storage.googleapis.com/kubernetes-release/release/v1.21.0/bin/linux/amd64/kubectl"

chmod +x kube-apiserver kube-controller-manager kube-scheduler kubectl
sudo mv kube-apiserver kube-controller-manager kube-scheduler kubectl /usr/local/bin/

wget -q --show-progress --https-only --timestamping \
  "https://github.com/etcd-io/etcd/releases/download/v3.4.15/etcd-v3.4.15-linux-amd64.tar.gz"

tar -xvf etcd-v3.4.15-linux-AMD64.tar.gz
sudo mv etcd-v3.4.15-linux-amd64/etcd* /usr/local/bin/

# chạy kubeadm với tùy chọn lưu trữ dịch vụ đã bật
kubeadm init --service-hosting

Nếu bạn đang sử dụng API cụm, bạn phải viết bộ điều khiển mặt phẳng điều khiển và CRD của riêng mình để hỗ trợ triển khai của riêng bạn.

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.