Catatan perev. : Kami bertemu penggemar Kubernetes dari proyek Garden di acara KubeCon Europe 2019 baru-baru ini, di mana mereka membuat kesan yang baik pada kami. Materi ini, yang ditulis pada topik teknis yang relevan dan dengan selera humor yang nyata, adalah konfirmasi yang jelas tentang hal ini, dan oleh karena itu kami memutuskan untuk menerjemahkannya.
Dia berbicara tentang produk utama (eponymous) perusahaan, yang idenya adalah untuk mengotomatisasi alur kerja dan menyederhanakan pengembangan aplikasi di Kubernetes. Untuk melakukan ini, utilitas memungkinkan Anda untuk dengan mudah (secara harfiah dengan satu perintah) menyebarkan perubahan baru yang dibuat ke kode di cluster dev, dan juga menyediakan sumber daya bersama / cache untuk mempercepat perakitan dan pengujian kode oleh tim. Dua minggu yang lalu, Garden memiliki rilis 0.10.0 , di mana menjadi mungkin untuk menggunakan tidak hanya kluster Kubernet lokal, tetapi juga yang jauh: artikel ini dikhususkan untuk acara ini.Paling tidak, saya suka bekerja dengan Kubernetes di laptop saya. "Pilot" menyerap prosesor dan baterainya, membuat pendingin berputar tanpa henti dan sulit dirawat.
Stok Foto dalam tema untuk meningkatkan efek Minikube, jenis, k3s, Docker Desktop, microk8s, dll. - Alat hebat yang dirancang untuk membuat Kubernetes senyaman mungkin, dan berterima kasih pada mereka untuk itu. Serius. Tapi dari sisi mana pun Anda melihatnya, satu hal yang jelas: Kubernetes tidak diadaptasi untuk dijalankan di laptop saya. Dan laptop itu sendiri tidak dirancang untuk bekerja dengan sekelompok kontainer yang tersebar di seluruh lapisan mesin virtual. Hal yang malang adalah mencoba yang terbaik, tetapi dia jelas tidak menyukai pekerjaan ini, menunjukkan ketidaksenangannya dengan lolongan pendingin dan berusaha membakar pinggulnya ketika saya dengan ceroboh meletakkannya di atas lutut saya.
Katakanlah: laptop adalah laptop.Garden adalah alat pengembang di ceruk yang sama dengan Skaffold dan Draft. Ini menyederhanakan dan mempercepat pengembangan dan pengujian aplikasi Kubernetes.
Dari awal bekerja di Taman, sekitar 18 bulan yang lalu, kami tahu bahwa pengembangan
lokal sistem terdistribusi adalah solusi sementara, jadi kami meletakkan fleksibilitas yang besar dan fondasi yang kuat di Taman.
Sekarang kami siap mendukung lingkungan Kubernetes lokal dan jarak jauh. Pekerjaan ini menjadi lebih sederhana: perakitan, penyebaran dan pengujian sekarang dapat dilakukan dalam cluster jarak jauh.
Singkatnya:
Dengan Garden v0.10, Anda benar-benar bisa melupakan cluster Kubernetes lokal dan masih mendapatkan respons cepat terhadap perubahan kode. Semua ini gratis dan open source.
Nikmati kenyamanan yang sama ketika bekerja dengan lingkungan lokal dan jarak jauhApakah Anda mendapat perhatian?
Dan saya senang karenanya, karena kami masih memiliki banyak chip menarik! Penggunaan umum cluster dev memiliki implikasi yang lebih luas, terutama untuk tim kolaboratif dan pipa CI.
Bagaimana bisa begitu?Pertama-tama, kolektor intra-
cluster - apakah itu Docker standar atau daemon Kaniko - serta registri intra-
cluster adalah umum
untuk seluruh cluster . Tim Anda dapat menggunakan cluster dev bersama-sama, dengan cache perakitan dan gambar tersedia untuk semua pengembang. Karena Garden tag gambar berdasarkan hash sumber, tag dan layer didefinisikan secara jelas dan konsisten.
Ini berarti bahwa segera setelah pengembang membuat gambar, ia
tersedia untuk seluruh tim . Hari demi hari, kami mengunduh gambar dasar yang sama dan membuat build yang sama di komputer. Penasaran berapa banyak lalu lintas dan listrik yang terbuang?
Hal yang sama dapat dikatakan tentang tes: hasilnya tersedia untuk seluruh cluster dan semua anggota tim. Jika salah satu pengembang menguji versi kode tertentu, tidak perlu mengulangi tes yang sama.
Dengan kata lain, intinya bukan hanya Anda tidak perlu menjalankan minikube. Lompatan ini membuka pintu bagi tim Anda terhadap
banyak peluang pengoptimalan - tidak ada lagi pengembangan tambahan dan uji coba!
Bagaimana dengan CI?
Sebagian besar dari kita terbiasa dengan fakta bahwa CI dan dev lokal adalah dua dunia terpisah yang perlu dikonfigurasi secara terpisah (dan mereka tidak menggunakan cache yang umum). Sekarang mereka dapat digabungkan dan menyingkirkan kelebihan:
Anda dapat menjalankan perintah yang sama dalam CI dan dalam proses pengembangan, serta menggunakan lingkungan tunggal, cache dan hasil pengujian.Pada dasarnya, CI Anda menjadi pengembang bot yang bekerja di lingkungan yang sama dengan Anda.
Elemen sistem; pengembangan dan pengujian tanpa hambatanAnda dapat sangat menyederhanakan konfigurasi pipa CI. Untuk melakukan ini, jalankan Garden dari CI untuk pembuatan, pengujian, dan penerapan. Karena Anda dan CI menggunakan lingkungan yang sama, kemungkinan bertemu masalah CI jauh lebih rendah.
Menggali barisan konfigurasi dan skrip yang tak terhitung jumlahnya, lalu push'i, menunggu, harapan, dan pengulangan tanpa akhir ... Semua ini ada di masa lalu.
Anda hanya melakukan pengembangan. Tidak ada gerakan yang tidak perlu.
Dan untuk akhirnya memperjelas situasinya:
ketika Anda atau perwakilan lain dari tim mengumpulkan atau menguji sesuatu menggunakan Garden, hal yang sama terjadi pada CI . Jika Anda belum mengubah apa pun setelah tes berjalan, maka Anda tidak perlu melakukan tes (atau bahkan rakitan) untuk CI. Garden melakukan semuanya dengan sendirinya, dan kemudian beralih ke tugas-tugas lain, seperti mengatur lingkungan pra-peluncuran, mendorong artefak, dll.
Kedengarannya menggoda. Bagaimana cara mencoba?
Selamat datang di
repositori GitHub kami ! Instal Taman dan mainkan dengan contoh. Bagi mereka yang sudah menggunakan Taman atau ingin mengenal mereka lebih baik, kami menawarkan
Panduan Remote Kubernetes . Bergabunglah dengan kami di saluran
#garden di Kubernetes Slack jika Anda memiliki pertanyaan, masalah, atau hanya ingin mengobrol. Kami selalu siap membantu dan menyambut umpan balik pengguna.
PS dari penerjemah
Segera kami juga akan menerbitkan ikhtisar tentang utilitas bermanfaat untuk pengembang aplikasi yang beroperasi di Kubernetes, yang, selain Garden, telah mendapatkan proyek menarik lainnya ... Sementara itu, baca juga di blog kami: