0Pricing
DevOps Bootcamp · Pelajaran

Ingress dan Perutean Eksternal

Buka beberapa layanan ke dunia luar melalui satu titik masuk menggunakan resource Ingress, perutean berdasarkan host dan path, serta controller Ingress.

Ingress dan Perutean Eksternal adalah pelajaran DevOps Bootcamp gratis di CoddyKit. Ini adalah pelajaran 4 dari 4. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar DevOps Bootcamp, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus DevOps Bootcamp mencakup 4 pelajaran total.

Melampaui NodePort dan LoadBalancer

Sebuah Service dapat mengekspos aplikasi, tetapi memberikan alamat IP eksternal kepada setiap aplikasi akan mahal dan rumit. Ingress menyediakan satu titik masuk HTTP cerdas yang merutekan ke banyak Service.

Apa Itu Ingress?

Ingress adalah objek Kubernetes yang menjelaskan aturan perutean HTTP/HTTPS: nama host atau jalur URL mana yang dipetakan ke Service mana.

Anda Memerlukan Pengontrol

Objek Ingress hanyalah aturan. Pengontrol Ingress (nginx, Traefik, HAProxy) benar-benar mengawasi aturan tersebut dan melakukan perutean. Tanpa pengontrol, tidak ada efek.

kubectl get pods -n ingress-nginx

Ingress Dasar

Ingress ini mengirimkan semua lalu lintas ke satu Service tujuan pada port 80.

apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  name: web-ingress
spec:
  rules:
  - http:
      paths:
      - path: /
        pathType: Prefix
        backend:
          service:
            name: web
            port:
              number: 80

Perutean Berdasarkan Domain

Tambahkan host untuk merutekan berdasarkan nama domain—api.example.com ke satu Service, shop.example.com ke Service lain, semuanya pada IP yang sama.

rules:
- host: api.example.com
  http:
    paths:
    - path: /
      pathType: Prefix
      backend:
        service:
          name: api
          port:
            number: 8080

Perutean Berdasarkan Jalur

Atau, lakukan perutean berdasarkan jalur URL di bawah satu host: /api ke Service API, / ke antarmuka web.

paths:
- path: /api
  pathType: Prefix
  backend:
    service:
      name: api
      port:
        number: 8080
- path: /
  pathType: Prefix
  backend:
    service:
      name: web
      port:
        number: 80

Pengakhiran TLS

Ingress dapat mengakhiri HTTPS menggunakan rahasia TLS, sehingga Service Anda menerima HTTP biasa sementara pengguna memperoleh enkripsi.

spec:
  tls:
  - hosts:
    - shop.example.com
    secretName: shop-tls

Anotasi Menyesuaikan Perilaku

Anotasi khusus pengontrol mengonfigurasi penulisan ulang, batas waktu, batas laju, dan lainnya. Anotasi tersebut berada pada metadata Ingress.

metadata:
  annotations:
    nginx.ingress.kubernetes.io/rewrite-target: /

IngressClass

Saat terdapat beberapa pengontrol, ingressClassName memberi tahu Kubernetes pengontrol mana yang harus menangani Ingress ini.

spec:
  ingressClassName: nginx

Memeriksa Ingress

Periksa aturan dan alamat yang ditetapkan dengan kubectl get ingress, lalu gunakan describe untuk melihat peristiwa.

kubectl describe ingress web-ingress

Alternatif Modern: Gateway API

Kubernetes sedang berkembang menuju Gateway API, penerus Ingress yang lebih ekspresif. Ingress tetap banyak digunakan dan merupakan titik awal yang tepat.

Pemeriksaan Singkat

Mengapa pengontrol Ingress diperlukan?

Ringkasan

Anda kini dapat mengekspos aplikasi dengan rapi:

  • Ingress menentukan aturan perutean HTTP; pengontrol Ingress menerapkannya
  • Rutekan berdasarkan domain atau jalur melalui satu titik masuk
  • Akhiri TLS dan sesuaikan perilaku dengan anotasi
  • ingressClassName memilih pengontrol

Satu IP, banyak Service, perutean cerdas.

Pertanyaan yang Sering Diajukan

Apakah pelajaran “Ingress dan Perutean Eksternal” gratis?

Ya — teks lengkap “Ingress dan Perutean Eksternal” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus DevOps Bootcamp, upgrade ke CoddyKit PRO. Kursus DevOps Bootcamp mencakup 4 pelajaran total.

Apa yang akan aku pelajari di “Ingress dan Perutean Eksternal”?

Buka beberapa layanan ke dunia luar melalui satu titik masuk menggunakan resource Ingress, perutean berdasarkan host dan path, serta controller Ingress. Kamu berlatih DevOps Bootcamp dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.

Apakah aku perlu pengalaman untuk memulai DevOps Bootcamp?

Tidak diperlukan pengalaman sebelumnya. DevOps Bootcamp di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 4 dari 4.

Berapa lama pelajaran “Ingress dan Perutean Eksternal” memakan waktu?

Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.

Bisakah aku menulis dan menjalankan kode dalam pelajaran DevOps Bootcamp ini?

Ya. Setiap pelajaran DevOps Bootcamp menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.

Semua pelajaran dalam kursus ini

  1. Deployment untuk Aplikasi Tanpa Status
  2. Service untuk Akses Jaringan
  3. ConfigMaps & Secret
  4. Ingress dan Perutean Eksternal
← Kembali ke DevOps Bootcamp