Apa itu pengontrol Kubernetes Ingress?

Pemandangan ke atas dari bangunan melingkar

Penyusun

Stephanie Susnjara

Staff Writer

IBM Think

Ian Smalley

Staff Editor

IBM Think

Apa yang dimaksud dengan pengontrol Kubernetes Ingress?

Pengontrol Kubernetes Ingress adalah komponen perangkat lunak khusus yang mengelola lalu lintas masuk ke aplikasi yang berjalan di lingkungan Kubernetes, yang berfungsi sebagai jembatan antara pengguna eksternal dan layanan dalam kontainer.

Bisnis modern sangat bergantung pada aplikasi terdistribusi dan beban kerja yang dibangun dari puluhan atau ratusan layanan mikro. Tanpa orkestrasi lalu lintas yang tepat, setiap layanan akan membutuhkan titik akhir publiknya sendiri, yang akan menimbulkan masalah manajemen dan keamanan yang signifikan.

Misalnya, platform perawatan kesehatan mungkin memerlukan titik akses terpisah untuk portal pasien, dasbor penyedia, sistem penagihan, dan pelaporan kepatuhan—pendekatan yang menjadi mahal dan kompleks secara operasional.

Pengontrol Kubernetes Ingress mengatasi masalah ini dengan berfungsi sebagai penyeimbang beban dan router lalu lintas cerdas di titik masuk aplikasi. Ini menetapkan rute lalu lintas terpusat bagi pengguna eksternal untuk mengakses layanan internal.

Ekosistem Kubernetes menawarkan berbagai pengontrol Ingress, termasuk alat sumber terbuka (misalnya, NGINX, Traefik) yang tersedia pada platform seperti GitHub dan solusi eksklusif yang dirancang untuk memenuhi kebutuhan organisasi tertentu.

Berita teknologi terbaru, didukung oleh insight dari pakar

Tetap terinformasi tentang tren industri yang paling penting—dan menarik—tentang AI, otomatisasi, data, dan di luarnya dengan buletin Think. Lihat Pernyataan Privasi IBM®.

Terima kasih! Anda telah berlangganan.

Langganan Anda akan disediakan dalam bahasa Inggris. Anda akan menemukan tautan berhenti berlangganan di setiap buletin. Anda dapat mengelola langganan atau berhenti berlangganan di sini. Lihat Pernyataan Privasi IBM® kami untuk informasi lebih lanjut.

Apa itu Kubernetes?

Awalnya dikembangkan oleh Google dan disumbangkan ke Cloud Native Computing Foundation (CNCF) pada tahun 2015, Kubernetes sekarang mendukung infrastruktur TI penting bagi sebagian besar perusahaan Fortune 500, sehingga manajemen pengontrol Ingress sangat penting untuk operasi perusahaan. Menurut survei tahun 2022, 96% organisasi menggunakan Kubernetes atau mengevaluasi teknologi ini untuk lingkungan produksi.1

Sebelum Kubernetes, aplikasi biasanya berjalan pada server khusus atau mesin virtual (VM), yang membuat penskalaan menjadi mahal dan memakan waktu. Kubernetes memperkenalkan kontainer—unit ringan dan portabel yang mengemas aplikasi dengan semua dependensinya.

Kubernetes merevolusi alur kerja DevOps dan penerapan aplikasi dengan memperkenalkan orkestrasi kontainer dalam skala besar. Platform sumber terbuka ini mengotomatiskan penerapan, penskalaan, dan manajemen aplikasidalam kontainer di seluruh infrastruktur terdistribusi, memungkinkan kolaborasi tanpa batas antara tim pengembangan dan operasi.

Kubernetes mengatur aplikasi ke dalam pemalut—unit terkecil yang dapat diterapkan yang terdiri dari satu atau lebih kontainer (biasanya kontainer Docker). Pemalut ini berjalan melintasi node pekerja dalam klaster, sementara bidang kontrol mengoordinasikan semua operasi klaster. Layanan menyediakan identitas jaringan yang stabil untuk grup pemalut, memungkinkan pola komunikasi yang andal.

Pengontrol ingress biasanya diterapkan sebagai pod khusus yang memantau status klaster melalui API Kubernetes. Pengontrol ini melacak perubahan dalam sumber daya Ingress—objek konfigurasi yang menentukan aturan perutean lalu lintas—dan secara otomatis memperbarui tabel perutean mereka untuk mencerminkan penerapan aplikasi baru atau pembaruan konfigurasi.

IBM Cloud

Red Hat OpenShift AI di IBM Cloud: Menerapkan beban kerja AI

Gunakan kemampuan AI dengan Red Hat OpenShift on IBM Cloud. Video ini menjelajahi cara membangun, menerapkan, dan mengelola beban kerja AI secara efisien dengan platform operasi machine learning yang dapat diskalakan.

Apa yang dimaksud dengan Kubernetes Ingress?

Untuk memahami cara kerja pengontrol Ingress, penting untuk memahami Kubernetes Ingress— sumber daya API (atau objek Ingress) yang mendefinisikan aturan routing yang mengarahkan lalu lintas eksternal ke layanan dalam klaster Kubernetes.

Kubernetes Ingress berbeda dari istilah umum ingress, yang mengacu pada aliran lalu lintas jaringan masuk ke lingkungan aplikasi berbasis cloud native dan kontainer. Di Kubernetes, Ingress secara khusus mengacu pada seperangkat aturan dan konfigurasi yang mengelola bagaimana lalu lintas yang masuk dialihkan ke layanan yang berbeda. Sebaliknya, ingress dalam pengertian yang lebih luas hanya mengacu pada lalu lintas yang masuk ke dalam sebuah sistem (berlawanan dengan egress, yang mengacu pada lalu lintas yang keluar dari sistem).

Baca selengkapnya tentang Ingress versus Egress di Kubernetes.

Kubernetes Ingress menyediakan pendekatan deklaratif untuk mengelola akses eksternal ke layanan dalam klaster Kubernetes. Alih-alih mengekspos masing-masing layanan (misalnya, layanan NodePort, LoadBalancer) secara langsung ke internet, Ingress menciptakan lapisan akses terkontrol yang secara cerdas merutekan permintaan berdasarkan beberapa kriteria. Kemampuan ini memungkinkan pengelolaan lalu lintas eksternal yang efisien ke layanan, biasanya diekspos dengan menggunakan ClusterIP dalam klaster Kubernetes.

Kubernetes Ingress beroperasi melalui dua komponen yang saling melengkapi.

Sumber daya Ingress

Sumber daya ingress (juga disebut sebagai sumber daya Kubernetes atau objek API Kubernetes) menentukan aturan perutean. Mereka didefinisikan dalam YAML atau JSON, menentukan aturan masuk, sertifikat SSL, persyaratan autentikasi, dan kebijakan lalu lintas.

Misalnya, pengguna dapat menggunakan bidang ingressClassName untuk menentukan pengontrol Ingress mana yang harus mengelola sumber daya, memungkinkan arah lalu lintas ke pengontrol tertentu ketika beberapa pengontrol ada dalam klaster.

Pengontrol Ingress

Pengontrol Ingress adalah komponen perangkat lunak yang membaca dan menerapkan aturan konfigurasi, bertindak sebagai proxy terbalik dengan kemampuan manajemen lalu lintas tingkat lanjut.

Bagaimana cara kerja pengontrol Kubernetes Ingress?

Penyeimbang beban Layer 4 tradisional, seperti untuk rute TCP, UDP, dan HTTP/HTTPS, mendistribusikan lalu lintas hanya berdasarkan alamat IP dan port. Sebaliknya, pengontrol Kubernetes Ingress beroperasi pada Layer 7 (lapisan aplikasi), memungkinkan perutean yang lebih canggih.

Dengan memanfaatkan API Kubernetes Ingress dan fitur-fitur seperti HTTPRoute, pengontrol Ingress membuat keputusan perutean berdasarkan atribut khusus HTTP yang mendetail, seperti:

  • Jalur URL dan nama host
  • Header dan metode HTTP
  • Minta konten dan cookie
  • Token autentikasi dan konteks pengguna

Keputusan ini didasarkan pada aturan konfigurasi yang menentukan kebijakan routing dan persyaratan lainnya. Pengontrol akses masuk terus memantau perubahan dalam konfigurasi ini, secara otomatis memperbarui perilaku perutean tanpa intervensi manual, memastikan distribusi lalu lintas yang mulus dan manajemen keamanan.

Kubernetes klaster dapat menjalankan beberapa pengontrol Ingress secara bersamaan, masing-masing menangani jenis lalu lintas atau aplikasi yang berbeda. Setiap pengontrol beroperasi dengan cara yang digerakkan oleh peristiwa, merespons perubahan sumber daya Ingress dengan membaca spesifikasi, anotasi, dan metadata, kemudian mengubahnya menjadi instruksi perutean yang dapat dieksekusi.

Fungsi utama pengontrol Kubernetes Ingress

Pemrosesan permintaan

Pengontrol Kubernetes Ingress memeriksa permintaan masuk dan membuat keputusan routing berdasarkan aturan yang telah ditentukan, seperti nama host dan nama DNS. Mereka menangani lalu lintas HTTP dan HTTPS, melakukan penghentian SSL, dan membuat keputusan penyeimbangan beban yang cerdas di berbagai contoh layanan.

Manajemen konfigurasi

Pengontrol Kubernetes Ingress terus memantau API Kubernetes untuk mengetahui perubahan pada sumber daya Ingress di seluruh ruang nama. Baik perubahan ini diterapkan melalui kubectl, pipeline CI/CD, atau alat lain (misalnya, Helm, Terraform), pengontrol secara otomatis memperbarui aturan perutean tanpa intervensi manual atau layanan dimulai ulang.

Penyeimbangan beban

Dibangun pada sebagian besar pengontrol Kubernetes Ingress, fungsionalitas penyeimbangan beban mendistribusikan permintaan yang masuk ke beberapa instance dari layanan yang sama, memastikan kinerja optimal dan mencegah satu instance pun menjadi kewalahan.

Manajemen TLS

Pengontrol Kubernetes Ingress modern menyertakan kemampuan manajemen SSL/TLS yang canggih, seperti penghentian TLS, penyediaan sertifikat otomatis, pembaruan, dan penegakan komunikasi yang aman.

Pemeriksaan kesehatan

Pengontrol Ingress tingkat Advanced terus memantau kesehatan layanan backend dan secara otomatis mengarahkan lalu lintas dari instans yang gagal untuk memastikan ketersediaan tinggi dan pengalaman pengguna yang lebih baik.

Contoh penggunaan pengontrol Ingress Kubernetes

Konsolidasi aplikasi

Organisasi besar menggunakan pengontrol Ingress untuk mengkonsolidasikan ratusan aplikasi internal di belakang titik akses terpadu. Pendekatan ini mengurangi biaya infrastruktur sekaligus meningkatkan keamanan melalui penegakan kebijakan terpusat. Perusahaan manufaktur global mungkin mengarahkan permintaan ke sistem ERP regional yang berbeda, aplikasi rantai pasokan dan portal pelanggan melalui penerapan pengontrol Ingress tunggal.

Lingkungan pengembangan dan penahapan

Tim pengembangan menggunakan pengontrol Ingress untuk membuat lingkungan terpisah untuk menguji fitur baru. Tim dapat secara otomatis menyiapkan lingkungan pengujian baru dan mengarahkan lalu lintas yang tepat ke masing-masing lingkungan berdasarkan fitur yang sedang dikembangkan.

Integrasi mitra dan vendor

Perusahaan menggunakan pengontrol Ingress untuk berbagi API internal dengan mitra dan vendor secara aman. Setiap organisasi dapat memiliki izin akses dan batas penggunaan yang berbeda, semuanya dikelola melalui satu sistem tanpa membangun infrastruktur terpisah.

Distribusi lalu lintas global

Organisasi multinasional menerapkan pengontrol Ingress sebagai bagian dari strategi manajemen lalu lintas global, merutekan pengguna ke pusat data yang optimal secara geografis sambil mempertahankan kebijakan keamanan dan pemantauan yang konsisten.

Persyaratan kepatuhan dan audit

Industri yang diatur menggunakan pengontrol Ingress untuk menerapkan pencatatan yang diperlukan, kontrol akses (ditambahkan saat halaman dibuat) dan kebijakan tata kelola data. Semua akses eksternal dapat dipantau dan diaudit secara terpusat melalui lapisan Ingress.

Manfaat pengontrol Kubernetes Ingress

  • Konsolidasi infrastruktur: Arsitektur tradisional sering kali memerlukan penyeimbang beban khusus untuk setiap aplikasi, sehingga menimbulkan biaya perangkat keras dan operasional yang signifikan. Pengontrol Ingress memungkinkan organisasi untuk menggabungkan beberapa aplikasi di belakang infrastruktur bersama, mengurangi biaya penyeimbangan beban dan meningkatkan pemanfaatan sumber daya.
  • Siklus pengembangan yang dipercepat: Tim pengembangan dapat menerapkan dan menguji fitur baru tanpa melibatkan administrator jaringan atau mengonfigurasi penyeimbang beban eksternal. Pengontrol Ingress mendukung alur kerja GitOps di mana perubahan routing dikelola melalui kontrol versi dan pipeline penerapan otomatis.
  • Kemampuan pengamatan yang ditingkatkan: Untuk memberikan kemampuan pengamatan yang lebih baik, pengontrol Ingress modern memberikan analisis terperinci tentang pola penggunaan aplikasi, perilaku pengguna, dan hambatan kinerja. Visibilitas ini memungkinkan keputusan berbasis data tentang perencanaan kapasitas, adopsi fitur, dan pengoptimalan pengalaman pengguna.
  • Penegakan keamanan otomatis: Daripada mengonfigurasi kebijakan keamanan di beberapa sistem, organisasi dapat menegakkan autentikasi, otorisasi, pembatasan kecepatan, aturan WAF (firewall aplikasi web), dan perlindungan DDoS melalui kebijakan pengontrol Ingress. Pembaruan keamanan dapat diterapkan secara instan di semua aplikasi.
  • Portabilitas cloud: Tidak seperti layanan penyeimbangan beban khusus cloud, pengontrol Ingress menyediakan fungsionalitas yang konsisten di berbagai penyedia cloud dan infrastruktur lokal. Aplikasi dapat dimigrasikan antar lingkungan tanpa perubahan arsitektur.
  • Kemampuan penskalaan dinamis: Pengontrol Ingress dapat secara otomatis menyesuaikan pola perutean berdasarkan kondisi lalu lintas waktu nyata, kapasitas back end, dan kebijakan yang dikonfigurasi. Fitur ini memungkinkan pembentukan lalu lintas canggih yang beradaptasi dengan perubahan kondisi bisnis.

Tantangan pengontrol Ingress

  • Pertimbangan kinerja: Semua lalu lintas eksternal mengalir melalui pengontrol Ingress, sehingga berpotensi menimbulkan kemacetan di lingkungan produksi. Organisasi harus merencanakan kapasitas dengan hati-hati, menerapkan pemantauan yang tepat, dan merancang strategi redundansi untuk memastikan ketersediaan yang tinggi.
  • Kurva pembelajaran dan biaya operasional: Tim perlu mengembangkan keahlian dalam konsep jaringan Kubernetes, manajemen konfigurasi YAML, dan pemecahan masalah sistem terdistribusi, yang dapat memerlukan pelatihan dan penyesuaian operasional yang signifikan.

Opsi pengontrol Kubernetes Ingress

Memilih pengontrol Kubernetes Ingress yang tepat bergantung pada kebutuhan organisasi, infrastruktur yang ada, dan kemampuan tim. Setiap implementasi menawarkan keuntungan yang berbeda untuk contoh penggunaan tertentu:

  • NGINX Pengontrol Ingress: Opsi yang paling banyak diadopsi, pengontrol Ingress NGINX (ingress-nginx), menawarkan kinerja kelas enterprise dan kemampuan penyesuaian yang luas. Ekosistem NGINX yang matang menyediakan dokumentasi komprehensif, opsi dukungan komersial, dan skalabilitas yang terbukti.
  • Pengontrol Traefik Ingress: Traefik dirancang untuk lingkungan cloud-native modern, dengan penekanan pada penemuan layanan otomatis dan kemudahan penggunaan. Traefik unggul dalam lingkungan dinamis tempat Kubernetes Service sering berubah, menawarkan Integrasi bawaan dengan service meshes dan Container Registry.
  • Pengontrol Ingress HAProxy: Dibangun di atas penyeimbang beban HAProxy standar industri, pengontrol HAProxy Ingress memberikan kinerja yang kuat untuk skenario lalu lintas tinggi. Pengontrol ini memungkinkan algoritma penyeimbangan beban tingkat lanjut, statistik terperinci, dan kontrol lalu lintas yang halus.
  • Istio Gateway: Sebagai bagian dari platform mesh layanan Istio yang komprehensif, Istio Gateway memiliki fitur manajemen lalu lintas, keamanan, dan kemampuan pengamatan yang canggih. Istio Gateway juga mendukung kemampuan yang canggih, seperti pemisahan lalu lintas, injeksi kesalahan, dan penelusuran terdistribusi.
  • Solusi penyedia cloud: Penyedia cloud utama menawarkan pengontrol Ingress yang dioptimalkan yang terintegrasi secara mendalam dengan platform mereka. Pengontrol AWS Load Balancer, Google Cloud Load Balancer, pengontrol Azure Application Gateway Ingress, dan IBM Cloud Application Load Balancer menyediakan Integrasi dengan layanan cloud-native, penskalaan otomatis, dan penagihan yang disederhanakan.
  • Pengontrol berbasis Envoy: Ingress controllers yang dibangun di atas proxy Envoy, termasuk Ambassador dan Emissary-Ingress, menghadirkan manajemen lalu lintas berkinerja tinggi dengan fitur-fitur pengamatan lanjutan. Solusi ini sering menyertakan autentikasi bawaan, pembatasan kecepatan, dan fungsionalitas API gateway, membuatnya cocok untuk organisasi yang membangun strategi API management yang komprehensif.
Solusi terkait
IBM Red Hat OpenShift

Red Hat OpenShift on IBM Cloud adalah OpenShift Container Platform (OCP) yang dikelola sepenuhnya.

Jelajahi Red Hat OpenShift
Solusi Kontainer

Solusi kontainer menjalankan dan meningkatkan beban kerja dalam kontainer dengan keamanan, inovasi sumber terbuka, dan penerapan yang sangat cepat.

Jelajahi kontainer
Layanan Konsultasi Cloud 

Dapatkan kemampuan baru dan dorong ketangkasan bisnis dengan layanan konsultasi cloud IBM. Temukan cara berkolaborasi dalam menciptakan solusi, mempercepat transformasi digital, dan mengoptimalkan kinerja melalui strategi hybrid cloud dan kemitraan pakar.

Layanan cloud
Ambil langkah selanjutnya

Mulai gunakan platform Red Hat OpenShift yang dikelola sepenuhnya atau jelajahi fleksibilitas ekosistem IBM Cloud Kubernetes. Percepat proses pengembangan dan penerapan Anda dengan solusi yang dapat diskalakan dan aman sesuai kebutuhan Anda.

Jelajahi Red Hat OpenShift Jelajahi Kubernet