Proyek Kubernetes berusia 4 tahun



Kubernetes merayakan hari jadinya yang ke-4 minggu lalu: komitmen pertama dalam basis kode publiknya berlangsung pada 6 Juni 2014. Pada kesempatan ini, salah satu pendirinya, Joe Beda, berbagi di blog proyeknya kenangan tentang bagaimana semuanya dimulai.

Komit pertama


Dan itu semua dimulai, seperti yang Anda tahu, jauh sebelumnya - dengan "ide-ide yang telah diuji oleh Google selama 10 tahun dengan Borg" - sebuah sistem yang, pada gilirannya, "berutang keberadaannya untuk bekerja lebih awal di Google dan di luarnya." Inilah cara Joe sendiri menjelaskan asal-usul Kubernet yang mendahului komit pertama:

Secara khusus, Kubernetes dimulai dengan prototipe dari Brendan Burns dan karya saya yang sedang berjalan Craig McLuckie untuk menyelaraskan pengalaman internal Google dengan Google Cloud. Bersama dengan Brendan dan Craig, kami ingin orang-orang dapat mengambil keuntungan dari pekerjaan kami, jadi kami memutuskan untuk membuat prototipe dalam bentuk proyek Open Source yang akan membuka dunia dengan ide-ide terbaik dari Borg.


Joe Beda, Craig McLuckie dan Brendan Burns (dari kiri ke kanan) - penulis asli Kubernetes - dalam diskusi panel tentang sejarah proyek ( video 2018)

Kami mendapat lampu hijau dan mulai menciptakan sistem itu sendiri. Mengambil prototipe Brendan (di Jawa), kami menulis ulang di Go dan hanya mengumpulkan minimum yang diperlukan, yang memungkinkan kami untuk menunjukkan ide-ide utama. Pada saat ini, tim kami telah berkembang - ditambah oleh Ville Aikas, Tim Hockin, Brian Grant, Dawn Chen, dan Daniel Smith. Setelah menerima sesuatu yang berhasil, kami membutuhkan seorang pria yang akan membereskan segala sesuatunya, mempersiapkan segalanya untuk peluncuran publik. Saya menjadi orang ini. Tidak menyadari pentingnya saat ini, saya membuat repositori baru, meletakkan perkembangan di sana dan berkomitmen. Terlepas dari kenyataan bahwa saya memiliki komit publik pertama ke repositori, hingga saat ini banyak pekerjaan telah dilakukan.




Joe Beda memulai karirnya di Microsoft (1997), pindah dari sana ke Google (2004), dan kemudian menjadi penasihat CoreOS (2015) dan menciptakan perusahaannya sendiri Heptio (2016)

Tapi perkembangan pertama Kubernet sangat kasar:

Versi Kubernetes waktu itu hanyalah bayangan dari apa proyek itu nantinya. Konsep dasar hadir, tetapi dalam bentuk yang sangat kasar. Misalnya, pod disebut tugas. Kami mengubah itu hanya sehari sebelum publik berkomitmen. [..] Namun, meskipun lembab ini, bahkan permulaan seperti itu sudah cukup untuk membangkitkan minat masyarakat, yang dengan cepat bangkit, dan akhirnya menjadi lebih kuat.

Alasan yang jelas untuk lonjakan popularitas Kubernetes berikutnya adalah bahwa industri secara keseluruhan menghadapi masalah yang sama dan tidak memiliki solusi yang sesuai. Craig mengulangi kata-kata Joe:

Kami sudah lama berpikir tentang bagaimana membuat peluncuran aplikasi dalam produksi lebih progresif, "diatur". Hanya berdasarkan pengalaman kami dengan Google Compute Engine, kami melihat dari baris pertama masalah yang dihadapi perusahaan saat mentransfer beban kerja ke cloud. [..]

Jika Anda melihat sejarah, kami memutuskan untuk membuka kode Kubernetes dan menjadikannya proyek yang berorientasi komunitas jauh lebih awal daripada yang direkomendasikan oleh garis pemikiran, dan benar-benar fokus untuk menciptakan komunitas yang terbuka dan terlibat. Dan itu benar-benar terbayar: pengembangan Kubernetes dipercepat dan dengan cepat menjadi standar untuk orkestrasi wadah.

Pengumuman pertama


Pengumuman publik Kubernetes berlangsung beberapa hari setelah komitmen pertama - 10 Juni 2014 di konferensi DockerCon pertama. Ini dilakukan oleh Eric Brewer, wakil presiden infrastruktur Google, sebagai bagian dari laporan Robust Containers ( video , presentasi ) dengan kata-kata berikut:

Hari ini kami merilis kode Kubernetes. Ini adalah sistem orkestrasi lain ... [..] Saya tidak akan menunjukkannya, karena Saya hanya punya 25 menit untuk melaporkan. Craig dan Brendan akan melakukannya hari ini. [..] Alasan kami menerbitkan Kubernetes sebagai proyek Open Source sekarang adalah karena gagasan [yang ingin kami bagikan dengan komunitas].

... dan sebuah cerita pendek tentang arsitektur dasar Kubernetes dan konsep-konsep kunci dari proyek baru: label untuk perapian (istilah pod sudah digunakan oleh Google untuk merujuk ke grup wadah), set replika ("grup perapian dengan label yang sama"), layanan ("set replika dengan penyeimbangan beban) "), Model Rekonsiliator (" model konsiliator "; ide utama dari pendekatan ini adalah untuk menyatakan keadaan yang diinginkan sehingga di masa depan sistem akan secara otomatis memantau kepatuhan terhadapnya).


Pengumuman Kubernetes di Konferensi DockerCon'14

Nilai proyek


Apa selanjutnya dengan Kubernetes, kita tahu secara langsung ... Menyimpulkan ulang tahun ke-4, Joe mencatat bahwa "keberhasilan proyek ini sebagian besar bukan hanya karena kode dan teknologi, tetapi juga bagaimana sekelompok orang yang luar biasa berkumpul untuk melakukan sesuatu spesial. " Dan ilustrasi terbaik adalah nilai-nilai komunitas Kubernetes, yang disajikan dalam repositori proyek :

  1. Distribusi lebih baik daripada sentralisasi . Skala yang telah dicapai Kubernet hanya dimungkinkan melalui distribusi kekuasaan yang terbuka dan saling percaya atas manajemen, pengambilan keputusan, arsitektur, kepemilikan kode, dan dokumentasi.
  2. Komunitas di atas produk atau perusahaan . Komitmen terhadap pengembangan proyek untuk kepentingan semua peserta dan penggunanya. Ini dimanifestasikan dalam kerja bersama publik (baik penggemar individu dan perusahaan) yang bertujuan untuk mencapai tujuan bersama.
  3. Otomasi berada di atas proses . “Kepahlawanan itu tidak layak,” jadi pekerjaan rutin harus diotomatiskan sebanyak mungkin, dan jika tidak mungkin, dihargai.
  4. Menyerap lebih baik daripada mengecualikan . Keberhasilan luas dari teknologi ini membutuhkan pandangan dari sudut yang berbeda dan sejumlah besar keterampilan yang harus dipenuhi dalam suasana yang ramah dan saling menghormati.
  5. Evolusi lebih baik daripada stagnasi . Di jantung budaya proyek Kubernet adalah perbaikan terus-menerus, kepemimpinan pelayan (pendekatan pemimpin-pelayan), bimbingan dan rasa hormat. Tanggung jawab para pemimpin proyek termasuk menemukan dan mensponsori anggota masyarakat baru yang harus dapat bergabung, sementara para pemimpin itu sendiri harus siap untuk pergi.

Kutipan terkenal Peter Drucker merangkum nilai-nilai proyek: "Budaya makan strategi untuk sarapan."

PS


Baca juga di blog kami:

Source: https://habr.com/ru/post/id413827/


All Articles