Kubernetes Basics · Ders

Kaynak Kotaları ve Limit Aralıkları

Ad alanı düzeyinde ResourceQuotas ve Pod başına LimitRanges uygulayarak gürültücü komşu sorunlarını ve kontrolden çıkan iş yüklerini önleyin.

4. ders / 413 adım

Kaynak Kotaları ve Limit Aralıkları, CoddyKit'te ücretsiz bir Kubernetes Basics dersidir. Bu, 4 dersinin 4. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, Kubernetes Basics öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. Kubernetes Basics kursu toplamda 4 dersten oluşur.

Paylaşılan Kümeler İçin Koruyucu Sınırlar

Paylaşılan bir kümede bir ekip yanlışlıkla tüm kaynakları tüketebilir. ResourceQuotas ve LimitRanges, ad alanlarının adil kalmasını sağlayan ve kesintileri önleyen koruyucu sınırlardır.

ResourceQuota Nedir

Bir ResourceQuota, bir ad alanının tüketebileceği toplam kaynakları sınırlar: CPU, bellek ve Pod veya Hizmet gibi nesne sayıları.

Bir İşlem Kaynağı Kotası

Bu kota, ad alanındaki tüm Pod'lar genelindeki toplam istekleri ve sınırları kısıtlar.

apiVersion: v1
kind: ResourceQuota
metadata:
  name: team-compute
  namespace: team-a
spec:
  hard:
    requests.cpu: '4'
    requests.memory: 8Gi
    limits.cpu: '8'
    limits.memory: 16Gi

Nesne Sayısı Kotaları

Kotalar ayrıca her nesne türünün kaç örneğinin bulunabileceğini sınırlayarak yanlışlıkla oluşabilecek kontrolsüz büyümeyi önleyebilir.

spec:
  hard:
    pods: '20'
    services: '5'
    persistentvolumeclaims: '10'

Kota Uygulama Kuralı

İşlem kaynakları için bir ResourceQuota ayarlandığında her Pod, kaynak isteklerini ve sınırlarını mutlaka tanımlamalıdır; aksi hâlde reddedilir. Kota, sınırlandırılmamış Pod'ları hesaba katamaz.

Kota Kullanımını Denetleme

Bir kotanın herhangi bir anda ne kadarının kullanıldığını inceleyin.

kubectl describe resourcequota team-compute -n team-a
# Resource         Used  Hard
# requests.cpu     2     4
# requests.memory  3Gi   8Gi

LimitRange Nedir?

Bir LimitRange, ad alanı içindeki her nesne için varsayılanları ve sınırları uygular. Böylece bir geliştirici değerleri ayarlamayı unuttuğunda bile tek tek Pod'lar kısıtlanır.

Varsayılanlar ve Sınırlar

Bir LimitRange, her kapsayıcı için varsayılan kaynak isteklerini ve sınırlarını ekleyebilir; ayrıca minimum ve maksimum değerleri zorunlu kılabilir.

apiVersion: v1
kind: LimitRange
metadata:
  name: container-limits
  namespace: team-a
spec:
  limits:
  - type: Container
    default:
      cpu: 500m
      memory: 256Mi
    defaultRequest:
      cpu: 250m
      memory: 128Mi
    max:
      cpu: '2'
      memory: 1Gi

Birlikte Nasıl Çalışırlar?

LimitRange her kapsayıcı için varsayılanları doldurur; ardından ResourceQuota tüm değerleri ad alanı kotasına göre toplar. Birlikte kullanıldıklarında hem Pod başına uygun boyutlandırmayı hem de ad alanı genelinde adil bir toplamı güvence altına alırlar.

Reddedilmeleri Giderme

Bir Pod reddedilirse hata, buna neden olan politikayı belirtir. Dikkatle okuyun: kotayı aşıp aşmadığınızı veya bir LimitRange sınırını ihlal edip etmediğinizi söyler.

# exceeded quota: team-compute, requested: requests.cpu=2, used: 3, limited: 4
# maximum cpu usage per Container is 2, but limit is 4

Üretim Ortamı İpuçları

  • Unutulan kaynak isteklerinin kotayı bozmasını önlemek için bir LimitRange ayarlayın
  • Kotaları, ani artışlar için pay bırakarak gerçek kullanıma göre boyutlandırın
  • Kullanımı düzenli olarak gözden geçirin ve ekipler büyüdükçe ayarlayın

Hızlı Kontrol

Ad alanı korumaları konusundaki anlayışınızı sınayın.

Özet

ResourceQuotas ile adil kullanımı (işlem kaynakları ve nesne sayıları için ad alanı genelindeki sınırlar) ve LimitRanges ile kapsayıcı başına varsayılanları ve sınırları uygulamayı öğrendiniz. Birlikte kullanıldıklarında aşırı kaynak kullanan komşu sorunlarını önler ve paylaşılan kümeleri kararlı tutarlar; bu, üretim ortamları için temel bir en iyi uygulamadır.

Başlamak ücretsiz

Yapay zeka eğitmeniyle Kubernetes Basics öğren — ücretsiz

Tarayıcında gerçek kod yaz ve çalıştır, 7/24 yapay zeka eğitmeninden anında yardım al; web'de ya da uygulamada kaldığın yerden devam et.

Kurslar
12
Dersler
48

Sıkça Sorulan Sorular

“Kaynak Kotaları ve Limit Aralıkları” dersi ücretsiz mi?

Evet — “Kaynak Kotaları ve Limit Aralıkları” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve Kubernetes Basics kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. Kubernetes Basics kursu toplamda 4 dersten oluşur.

“Kaynak Kotaları ve Limit Aralıkları” dersinde ne öğreneceğim?

Ad alanı düzeyinde ResourceQuotas ve Pod başına LimitRanges uygulayarak gürültücü komşu sorunlarını ve kontrolden çıkan iş yüklerini önleyin. Kubernetes Basics ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.

Kubernetes Basics öğrenmeye başlamak için deneyim gerekli mi?

Önceden deneyim gerekmez. CoddyKit'te Kubernetes Basics, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 4 dersinin 4. dersidir.

“Kaynak Kotaları ve Limit Aralıkları” dersi ne kadar sürer?

Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.

Bu Kubernetes Basics dersinde kod yazıp çalıştırabilir miyim?

Evet. Her Kubernetes Basics dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.

Bu kursun tüm dersleri

  1. Yaygın Sorunları Tanılama
  2. Pod'larda ve Hizmetlerde Hata Ayıklama
  3. Üretim için En İyi Uygulamalar ve İpuçları
  4. Kaynak Kotaları ve Limit Aralıkları
← Kubernetes Basics Sayfasına Dön