حاسبة ميزانية موارد Kubernetes

تقارن طلبات وحدة المعالجة والذاكرة لحِمل العمل بحجم العُقدة، وتُظهر عدد العُقد التي تحتاجها والمورد الذي يُشكّل عنق الزجاجة والتكلفة الشهرية التقديرية. تتم جميع الحسابات في متصفحك.

حِمل العمل (طلبات الحاوية)
نواة واحدة = 1000m. مثال: 250m = ربع نواة.
1 GiB = 1024 Mi.
العُقدة (Node)
السعة المحجوزة لـ kube-reserved وsystem-reserved وعتبة الإخلاء. القيمة النموذجية 10-15%.
العملة غير مهمة؛ إذا تُرك فارغًا لن تُعرض التكلفة.

النتائج

أدخل القيم ثم اضغط "احسب".

الأسئلة الشائعة

كم عُقدة يحتاج حِمل عمل Kubernetes الخاص بي؟

عدد العُقد هو الأكبر بين ثلاثة حدود: العُقد المطلوبة حسب وحدة المعالجة، وحسب الذاكرة، وحسب عدد الحاويات. تحسب الأداة كلًا منها وتعطي الأكبر باعتباره "العُقد المطلوبة"، وذلك الحد هو المورد المُقيِّد.

لماذا تكون السعة القابلة للتخصيص أقل من السعة الكلية للعُقدة؟

يُحجَز جزء من سعة كل عُقدة لـ kubelet وبيئة تشغيل الحاويات ونظام التشغيل عبر kube-reserved وsystem-reserved، إضافةً إلى عتبة إخلاء. تُجدوَل الحاويات على السعة "القابلة للتخصيص" المتبقية فقط، ولذلك تُدخِل نسبة النفقات الإضافية.

ما الحد الأقصى الافتراضي للحاويات لكل عُقدة؟

الافتراضي في kubelet هو 110 حاوية لكل عُقدة. إذا كان لديك نسخ صغيرة كثيرة، فقد يُشكّل هذا الحد عنق الزجاجة حتى مع توفر وحدة معالجة وذاكرة كافية.

هل أستخدم الطلبات (requests) أم الحدود (limits)؟

يتخذ مُجدوِل Kubernetes قرار التوزيع بناءً على الطلبات وليس الحدود. تستخدم هذه الأداة قيم الطلبات لتخطيط السعة. أما الحدود فتؤثر على سلوك الخنق/OOM عند ضغط الموارد على العُقدة.

ما مدى دقة هذا التقدير؟

إنه تقدير سعة من الدرجة الأولى. لا يحتسب DaemonSets أو قواعد مكافحة التقارب أو قيود توزيع الطوبولوجيا أو التوسع التلقائي العمودي أو التوزيع الإقليمي. استخدمه كخط أساس للعناقيد الإنتاجية وليس كقيمة نهائية.

مبنية على تشغيل عناقيد حقيقية

هذه الحاسبة ليست نظرية — فنفس حسابات تحجيم العُقد تُشغّل عنقود k3s إنتاجيًا صغيرًا خلف هذا الموقع. هذه لقطة حالية للعنقود:

$ kubectl get nodes
NAME           STATUS   ROLES                  AGE    VERSION
bilal-server   Ready    <none>                 194d   v1.33.5+k3s1
k8s-master     Ready    control-plane,master   194d   v1.33.5+k3s1

$ kubectl top nodes
NAME           CPU(cores)   CPU%   MEMORY(bytes)   MEMORY%
bilal-server   333m         4%     7828Mi          49%
k8s-master     784m         10%    12097Mi         38%

$ kubectl top pods -n default
NAME                                 CPU    MEMORY
bilal-baget-6d568d945f-4hljh         5m     142Mi
bilal-filebrowser-76c987d67b-mgwwt   1m     10Mi
bilal-gitlab-57db68cdf-4thml         61m    3843Mi
bilal-mssql-59467b7576-wrl24         34m    1450Mi
bilal-registry-5c86777897-tffxm      2m     381Mi
bilal-website-c46c6fb8f-ctnck        26m    219Mi
maya-website-58877c476c-hvj9q        74m    263Mi

k3s v1.33.5 · عُقدتان · 194 يومًا تشغيل · استخدام 4-10% للمعالج و38-49% للذاكرة في الحالة المستقرة.