Mengemudi Masa Depan: Bagaimana APISIX Ingress Controller Memberdayakan Horizon Robotics

Jing Yan

Jing Yan

October 10, 2022

Case Study

Ikhtisar

Tentang Horizon Robotics

Horizon Robotics adalah penyedia solusi komputasi hemat energi terkemuka untuk sistem bantuan pengemudi canggih (ADAS) dan pengemudian otomatis (AD) pada mobil biasa. Perusahaan ini berfokus pada peningkatan pengalaman berkendara untuk generasi berikutnya dengan menggabungkan perangkat keras dan perangkat lunak canggih, termasuk solusi komputasi perangkat keras berdaya rendah dan alat pengembangan perangkat lunak terbuka.

Tantangan

  • Kontroler ingress sebelumnya Horizon Robotics, Traefik 1.x, tidak dapat mendukung konfigurasi yang lebih granular.

  • Traefik 1.x tidak memiliki aturan spesifik untuk konfigurasi visual sehingga tidak dapat mengidentifikasi layanan tertentu.

  • File konfigurasi asli Horizon Robotics terbatas, memerlukan pencarian dokumentasi yang memakan waktu dan perawatan yang rumit.

Hasil

  • Dengan menyesuaikan parameter secara tepat, Horizon Robotics meningkatkan stabilitas transmisi data dan mengurangi kejadian masalah seperti kehabisan memori (OOM).

  • Horizon Robotics meningkatkan pemanfaatan sumber daya dan mendorong kolaborasi di berbagai platform cloud.

  • Dengan menggunakan plugin forward-auth APISIX untuk autentikasi eksternal, Horizon Robotics menyederhanakan pemanggilan gRPC dan meningkatkan efisiensi pemantauan.

  • Horizon Robotics meningkatkan efisiensi pemantauan dan operasional dengan mengaktifkan plugin prometheus dan menyesuaikannya untuk memenuhi kebutuhan bisnis tertentu.

Latar Belakang

Di era pengemudian otomatis dan teknologi energi baru, perusahaan seperti Horizon Robotics telah banyak berinvestasi dalam pengembangan dan pelatihan model pengemudian otomatis. Dengan keahlian dalam algoritma pembelajaran mendalam dan desain chip, Horizon Robotics berfokus pada platform komputasi otomotif inovatif. Mereka telah meluncurkan perangkat keras seperti Seri Horizon Journey untuk pengemudian cerdas, Seri Sunrise untuk robotika serbaguna, dan alat pengembangan AI lintas platform. "Pertumbuhan ini meningkatkan pentingnya gateway mereka," catat Xin Zhang, Insinyur Pengembangan Cloud-Native di Horizon Robotics.

Mengapa APISIX Ingress Controller

Sebelum menerapkan APISIX Ingress Controller, sistem bisnis Horizon Robotics menggunakan Traefik 1.x sebagai kontroler ingress, yang menimbulkan beberapa tantangan.

  • Traefik 1.x membatasi perusahaan untuk menggunakan plugin untuk semua aturan dalam kontroler ingress tanpa fleksibilitas untuk konfigurasi yang lebih detail.

  • Traefik 1.x tidak dapat langsung mengidentifikasi layanan berdasarkan URL permintaan di browser web.

  • File konfigurasi default Traefik 1.x (ConfigMap) memiliki set atribut yang terbatas, yang berarti sering merujuk ke dokumentasi resmi untuk pengaturan default. Masalah ini semakin rumit dengan perbedaan parameter dengan konfigurasi default NGINX, membuat perawatan lebih menantang.

"Menghadapi masalah tersebut, tim teknis kami memutuskan untuk mengganti kontroler ingress kami," kata Zhang. "Awalnya kami berpikir untuk meningkatkan Traefik ke versi 2.0 untuk memperbaiki masalah ini, tetapi peningkatan ini berarti mengadopsi CRD baru dan menghadapi biaya migrasi yang besar. Oleh karena itu, kami mencoba menjelajahi opsi kontroler ingress lainnya."

Horizon Robotics terutama mengevaluasi Apache APISIX, Kong, dan Envoy dalam fase seleksi awal. Namun, dengan berbagai tingkat, kecuali APISIX Ingress Controller, solusi alternatif ini tidak dapat sepenuhnya memenuhi persyaratan fungsional atau kinerja tertentu. Akibatnya, Horizon Robotics akhirnya memilih APISIX Ingress Controller. Di luar beberapa fitur standar gateway, Horizon Robotics sangat tertarik pada aspek-aspek berikut:

  • Dukungan Plugin yang Luas: APISIX memiliki ekosistem plugin yang kuat, yang dapat dengan mudah dikonfigurasi menggunakan apisix-ingress-controller. Plugin ini juga dapat disesuaikan untuk backend tertentu di bawah ApisixRoute.

  • Konfigurasi Visual yang Ramah Pengguna: APISIX Dashboard memberikan tampilan yang jelas untuk setiap route apisix. Dalam kasus di mana domain yang sama dikonfigurasi di beberapa namespaces atau file YAML, APISIX Dashboard yang terintegrasi memungkinkan Horizon Robotics untuk dengan cepat mengidentifikasi potensi konflik dengan mencari prefiks path.

  • Validasi yang Detail: APISIX Ingress Controller secara ketat memvalidasi sumber daya yang dideklarasikan dalam CRD yang dikelolanya. Jika layanan yang tidak valid ditentukan dalam CRD, pesan kesalahan dicatat dalam event ApisixRoute, mencegah perubahan tersebut berlaku. Validasi ini membantu mengurangi masalah yang timbul dari kesalahan konfigurasi.

  • Beragam Fitur: APISIX menawarkan banyak fitur, termasuk dukungan untuk pembaruan panas dan plugin, penulisan ulang permintaan, berbagai metode autentikasi, pengembangan plugin multi-bahasa, dll.

  • Keterlibatan Komunitas yang Aktif: Tidak seperti komunitas open-source lainnya, APISIX mendapat manfaat dari komunitas pemelihara dan kontributor yang aktif berpartisipasi di Slack, GitHub, dan milis.

  • Kinerja yang Mengesankan: Grafik di bawah ini dengan jelas menunjukkan bahwa APISIX mengungguli Envoy sekitar 20% dalam uji stres. Perbedaan kinerja ini semakin terlihat dengan peningkatan jumlah inti CPU.

Ingress Controller

Keberhasilan Apache APISIX Ingress Controller

Peningkatan Pusat Lalu Lintas Terpusat

Horizon Robotics telah mencapai prestasi yang signifikan dengan menggunakan APISIX Ingress Controller sebagai gateway pusat untuk lalu lintas masuk dari berbagai sumber, seperti alat baris perintah, aplikasi web, platform SaaS, dan OpenAPI. Perusahaan juga memastikan akses aman ke layanannya menggunakan plugin forward-auth untuk autentikasi eksternal.

Architecture1

Arsitektur inovatif ini secara efektif mengarahkan lalu lintas masuk melalui nama domain dalam lapisan gateway. Routing awal melalui Linux Virtual Server (LVS) menyederhanakan proses penerusan, mengarahkan lalu lintas ke node APISIX backend. Selanjutnya, APISIX secara efisien mendistribusikan lalu lintas ke pod yang sesuai, sesuai dengan aturan routing yang telah ditentukan. Perlu dicatat bahwa penyesuaian port default APISIX Ingress Controller dari 9180 ke 80 lebih menyederhanakan routing lalu lintas, meningkatkan efisiensi keseluruhan manajemen lalu lintas sistem.

Architecture2

Peningkatan Efisiensi yang Signifikan

Perusahaan yang terlibat dalam pelatihan model AI sering menghadapi skenario yang memerlukan pengunggahan file berukuran besar. "Dalam sistem pelatihan model Horizon Robotics, tim R&D mengunggah data yang dikumpulkan ke sistem melalui jaringan, dan ukuran data biasanya beberapa ratus GB atau lebih," kata Zhang. Untuk mengatasi tantangan ini, Horizon Robotics menerapkan APISIX 2.13 dengan parameter yang disesuaikan dan mengaktifkan pengunggahan streaming APISIX untuk file-file tersebut. Langkah ini memastikan pengunggahan file besar yang lancar dan mengurangi masalah terkait memori. Hasilnya, proyek pelatihan model AI Horizon Robotics mengalami peningkatan efisiensi yang signifikan, memungkinkan kemajuan teknologi yang lebih lancar.

Oversized

Optimasi Multi-Cloud Strategis

Dalam interaksi layanan multi-cloud, beberapa lalu lintas bisnis awalnya mendarat di IDC lokal Horizon Robotics. Dari sana, lalu lintas melewati APISIX Ingress Controller sebelum mencapai Pod. Di dalam Pod, beberapa layanan perlu mengakses layanan Acloud menggunakan nama domain. Langkah ini memungkinkan layanan ini untuk dengan lancar menavigasi di berbagai penyedia cloud yang digunakan oleh Horizon Robotics, memberikan akses ke sumber daya penting sambil mengoptimalkan pemanfaatan sumber daya. Selain itu, beberapa skenario di mana layanan memanggil layanan lain juga ada, terutama untuk pelatihan multi-cloud, memungkinkan layanan yang berbeda untuk berkolaborasi dalam membantu Horizon Robotics dengan tugas yang lebih kompleks. Juga, Horizon Robotics dapat memilih cluster yang sesuai dan mengirimkan tugas ke cluster cloud yang sesuai melalui titik masuk IDC lokal mereka. Kemampuan ini memberdayakan mereka untuk mengelola dan mendistribusikan tugas dengan efisien, memanfaatkan sepenuhnya sumber daya komputasi di lingkungan multi-cloud mereka.

Multi-cloud

Integrasi Plugin yang Disederhanakan

Setelah APISIX dengan cermat mengintegrasikan dukungan untuk plugin forward-auth, Horizon Robotics membuat keputusan strategis untuk beralih dari plugin kustom mereka ke plugin resmi APISIX. Pergeseran ini menghilangkan kebutuhan akan lapisan tambahan panggilan gRPC dan secara signifikan menyederhanakan proses pemantauan perusahaan. Akibatnya, peningkatan ini sangat meningkatkan fleksibilitas integrasi dan meningkatkan langkah-langkah keamanan, yang pada akhirnya memperkuat posisi Horizon Robotics dalam teknologi robotika.

forward-auth

Pemantauan Aplikasi yang Canggih

Untuk memanfaatkan fitur kuat APISIX, Horizon Robotics telah mengaktifkan plugin prometheus untuk pemantauan aplikasi. Horizon Robotics telah melakukan penyesuaian dan optimasi khusus untuk memenuhi kebutuhan bisnisnya, termasuk meningkatkan konkurensi real-time, QPS, tingkat keberhasilan API real-time APISIX, dan bandwidth real-time APISIX. Perubahan ini memberikan Horizon Robotics pemantauan yang lebih detail terhadap APISIX.

Application Monitoring

Ringkasan

Horizon Robotics telah secara efektif memanfaatkan Apache APISIX Ingress Controller dalam skenario bisnis kritis, meningkatkan efisiensi dan adaptabilitas. Mereka menyederhanakan pengunggahan file besar untuk pelatihan model AI, mengoptimalkan interaksi layanan multi-cloud, menyederhanakan autentikasi eksternal, dan menerapkan pemantauan aplikasi yang disesuaikan. Peningkatan ini telah secara signifikan memajukan teknologi dan operasi Horizon Robotics.

Karena semakin banyak pengguna yang menggabungkan Apache APISIX Ingress Controller ke dalam lingkungan produksi mereka, kami mendorong mereka yang menggunakan Apache APISIX Ingress Controller untuk berbagi kasus penggunaan mereka dalam komunitas.

Tags: