Peta dunia

 

EN: Read in English

Dunia K3: Kaunter & Pintu

NodePort, LoadBalancer dan headless

Anda akan belajar: empat jenis Service, dan bila guna setiap satu.

Teks BM belum disemak oleh penutur asli.

Disemak dengan Kubernetes 1.37 pada 31 Okt 2026

Masalahnya

Anda di sini: kluster kind-dev namespace default
Dua Service: kubernetes dan shop. Kedua-duanya ClusterIP, tiada EXTERNAL-IP. Output terminal: $ kubectl get services NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE kubernetes ClusterIP 10.96.0.1 <none> 443/TCP 5m21s shop ClusterIP 10.96.245.76 <none> 80/TCP 21s

Nombor pesanan kedai ialah ClusterIP. Ia hanya berfungsi di dalam medan selera. Pelanggan di jalan tak boleh guna. Macam mana mereka nak masuk?

Tengok

Ketik setiap titik pada garis masa.

Service ada jenis. Setiap jenis buka satu pintu lagi berbanding yang sebelumnya. Ketik keempat-empatnya.

Cuba

NodePort: Tingkap tepi di setiap gerai: port yang sama (30000–32767) dibuka pada setiap node. buka port yang sama di setiap gerai. Apply nodeport.yaml. Kemudian panggil alamat satu gerai dari laptop anda.

Anda di sini: kluster kind-dev namespace default
Gerai: 3. Dulang: 3 (3 sedia). Menunggu gerai: 0.
  • shop3/3 sedia
dev-control-planeBukaPengurus

Tiada dulang di sini.

dev-workerBuka
  • shop·dxxm9
  • shop·v9wlp
dev-worker2Buka
  • shop·sb74g
Masa: +0s (dipercepat)

Tengok

Anda di sini: kluster kind-dev namespace default
Service LoadBalancer bernama shop-lb. Lajur EXTERNAL-IP tertulis pending. Output terminal: $ kubectl expose deployment shop --type=LoadBalancer --port=80 --name=shop-lb service/shop-lb exposed $ kubectl get service shop-lb NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE shop-lb LoadBalancer 10.96.245.214 <pending> 80:30080/TCP 0s

LoadBalancer: Papan tanda jalan daripada cloud: satu alamat luar untuk sebuah Service. minta alamat jalan daripada cloud. Kluster kind biasa tiada cloud, jadi ia menunggu: <pending>.

Semak

Satu huruf tersilap. Baca jawapan kubectl, kemudian baiki fail itu.

Baiki manifest ini, kemudian tekan Apply.

lb.yaml11 baris

Maksudnya: Kubernetes kenal empat jenis, dan Loadbalancer bukan salah satunya.

Teka

Pangkalan data berjalan sebagai StatefulSet. Setiap dulang mesti dipanggil ikut namanya sendiri. Service mana yang sesuai?

Pilih satu jawapan.

Semak

Jenis mana sesuai untuk setiap kerja?

Seret kad ke dalam kotak. Atau ketik kad, kemudian ketik kotak.

        Anda berjaya!

        Kini anda boleh pilih ClusterIP, NodePort, LoadBalancer atau headless.

        Nak tahu lebih (pilihan)

        Di kind, alamat LoadBalancer datang daripada alat tambahan cloud-provider-kind. Panggilan NodePort dari laptop berfungsi di Linux. Di Mac dan Windows, node kind tersembunyi dalam VM kecil Docker. Ada jenis kelima, ExternalName: nama lain untuk nama DNS luar.

        Latihan sebenar (pilihan), di kluster kind untuk dibuang:

        Misi sebenar

        1. kubectl expose deployment shop --type=NodePort --port=80 --name=shop-np
        2. kubectl get service shop-np
        3. kubectl expose deployment shop --type=LoadBalancer --port=80 --name=shop-lb

        0 daripada 3 langkah siap · Tanda anda disimpan.