Có yêu cầu bộ nhớ mặc định và \ hoặc giới hạn cho nhóm \ vùng chứa trong k8s \ openshift không?

Jan 24 2021

Hallo đồng nghiệp DevOps,

Tôi đang cố gắng hiểu liệu đó có phải là yêu cầu cơ sở và \ hoặc giới hạn cho mỗi pod \ container trong k8s hoặc Openshift như hiện nay hay không hoặc liệu bạn có biết về một thay đổi trong tương lai liên quan đến điều đó hay không.

Tôi đã thấy câu trả lời này: Bộ nhớ mặc định được phân bổ cho một nhóm nói rằng không có bất kỳ bộ nhớ nào, ít nhất là đối với việc triển khai k8s của Google và tôi muốn biết chắc chắn về điều đó đối với trạng thái hiện tại của k8s và Openshift trong việc triển khai tại chỗ.

hiện đang chạy cụm openshift 3.11.16 doanh nghiệp và sắp chuyển sang 4.6.4, vì vậy câu hỏi của tôi liên quan đến việc triển khai xây dựng trên nền k8s mặc định (Openshift) của RedHat.

Có bất kỳ yêu cầu cơ sở hoặc giá trị giới hạn nào cho vùng chứa \ pod không?

CHỈNH SỬA: Ngoài ra, có cách nào k8s hoặc openshift dự đoán yêu cầu bộ nhớ vùng chứa bằng ngôn ngữ phát triển ứng dụng hoặc các biến môi trường được thiết lập để triển khai không (như từ lệnh RUN của java container hoặc env: JVM_OPTS -Xms1G -Xmx1G)?

Trả lời

2 VasiliAngapov Jan 24 2021 at 01:15

Theo mặc định, không có yêu cầu hoặc giới hạn tài nguyên nào, có nghĩa là mọi nhóm đều được tạo bằng BestEffort QoS . Nếu bạn muốn định cấu hình các giá trị mặc định cho các yêu cầu và giới hạn, bạn nên sử dụng LimitRange .

BestEffort pod theo định nghĩa là "để một Pod được cấp một lớp QoS của BestEffort, các Container trong Pod không được có bất kỳ giới hạn hoặc yêu cầu nào về bộ nhớ hoặc CPU." Nhóm BestEffort có mức độ ưu tiên thấp nhất cho bộ lập lịch Kubernetes và có thể bị loại bỏ trong trường hợp tranh chấp tài nguyên

Tất cả những gì đã nói ở trên đều đúng với tất cả các bản phân phối Kubernetes bao gồm cả OpenShift.

1 StavBernaz Feb 04 2021 at 05:31

Không có giới hạn hoặc yêu cầu mặc định. Để định cấu hình tài nguyên mặc định, bạn nên tạo tài nguyên LimitRange như được mô tả ở đây:https://docs.openshift.com/container-platform/3.11/dev_guide/compute_resources.html#dev-viewing-limit-ranges

Nếu bạn muốn mọi dự án mới được tạo với các giới hạn tài nguyên nhất định, bạn có thể sửa đổi mẫu dự án mặc định như được mô tả ở đây: https://docs.openshift.com/container-platform/3.11/admin_guide/managing_projects.html#modifying-the-template-for-new-projects

Điều này cũng không thay đổi trong 4.6, chỉ việc triển khai cách sửa đổi LimitRange hoặc mẫu dự án mặc định. (Phương pháp hoàn toàn giống nhau)

Đối với câu hỏi của bạn về dự đoán tài nguyên của các ứng dụng, có một số cao thủ xung quanh vấn đề này. Tôi chỉ nghe nói về turbonomic thậm chí có thể tự động thay đổi tài nguyên Triển khai của bạn bằng cách sử dụng và có thể cũng có một số chỉ số tùy chỉnh.