Apakah Kubernetes adalah Linux baru? Wawancara dengan Pavel Selivanov


Decoding:
Azat Khadiev: Halo. Nama saya Azat Khadiev. Saya seorang pengembang PaaS untuk Mail.ru Cloud Solutions. Bersama saya di sini adalah Pavel Selivanov dari Southbridge. Kami berada di konferensi DevOpsDays. Dia akan memberikan ceramah di sini tentang bagaimana Anda dapat membangun DevOps dengan Kubernetes, tetapi kemungkinan besar Anda tidak akan berhasil. Mengapa topiknya begitu kelam?

Pavel Selivanov: Sebenarnya tidak suram. Ini tentang fakta bahwa kami mencoba menyelesaikan banyak masalah di komunitas kami dengan bantuan teknologi. Dan kami mencoba menyelesaikan masalah dengan bantuan teknologi dengan cara yang sepihak. Kubenetes juga sama - ini adalah tanggung jawab mereka, bisa dikatakan Ops. Namun kami memiliki konsep hebat tentang insinyur DevOps. Seorang insinyur DevOps bertanggung jawab atas Kubernetes. Pada saat yang sama... Seperti Anda membuat Kubernetes, tetapi para pengembang sama sekali tidak mengetahui semua Kubernetes ini, mereka tidak mengetahui apa yang dapat Anda lakukan - dan semuanya berjalan persis sama bagi mereka. Dan ini terlepas dari kenyataan bahwa Kubernetes berisi solusi siap pakai, alat siap pakai untuk menggunakan teknologi ini guna memperluas pendekatan DevOps, komunikasi antara Dev dan Ops. Kami sangat sedikit menggunakan kesempatan ini. Karena fakta bahwa kami bahkan mentransfer struktur saat ini ke semua alat DevOps ini - Docker, Kubernetes, cloud, dan sebagainya - kami semakin memperburuk situasi ini. Dan kami mulai menggunakan alat tersebut secara berbeda dari yang dimaksudkan. Dan kruk yang buruk sedang dibangun berdasarkan semua teknologi ini.

Azat Khadiev: Begitu. Rasanya seperti topik yang luas. Menurut Anda, apa masalah paling umum yang dihadapi perusahaan saat ini? Dengan Kubernet.

Pavel Selivanov: Masalah paling umum pada Kubernetes adalah kurangnya kompetensi. Ini adalah masalah umum di bidang TI. Selalu ada kekurangan spesialis. Selalu ada kekurangan kompetensi. Dan sekarang dengan Kubernetes kompetensinya tidak mencukupi. Dan pada saat yang sama, masih ada XNUMX% solusi siap pakai di pasar yang memungkinkan Anda mendapatkan Kubernetes, tetapi pada saat yang sama tidak memiliki kompetensi yang diperlukan; sejujurnya hanya ada sedikit solusi tersebut di pasar. Dan yang ada, semuanya menimbulkan beberapa pertanyaan. Dengan Kubernetes, kami terus mencari orang yang memahami hal ini. Kami mencoba menyesuaikan perkembangan dengan hal ini.

Azat Khadiev: Dan mengingat kekurangan personel di bidang TI saat ini. Yang selalu ada di sana. Dan sekarang ada. Menurut Anda bagaimana cara hidup dalam kondisi seperti ini? Peretasan kehidupan apa yang ada di sana?

Pavel Selivanov: Peretasan Kehidupan. Pertama, dari sudut pandang awan, life hack terlihat seperti ini - mari beri kami beberapa kompetensi Anda. Dan kami akan mengambilnya untuk diri kami sendiri. Dan kami akan melakukan ini di dalam diri kami sendiri. Dan itu semua bagus. Kecuali penting untuk dipahami bagi mereka yang menggunakannya... Sebenarnya momen yang luar biasa... Namun penting untuk dipahami bahwa jika kita memberikan sebagian kompetensi kita di suatu tempat ke cloud atau penyedia, kita mendapatkan solusi universal sebagai imbalannya. . Secara kasar, kami memiliki database yang melakukan hal-hal yang sangat spesifik, dan telah dikonfigurasi dengan cara yang sangat spesifik. Dengan memberikan database ini ke cloud, tentu saja kita dapat memecat administrator yang biasa menangani cluster database - Amazon atau Google yang sama akan melakukan ini untuk kita. Namun pada saat yang sama, Amazon atau Google tidak mengizinkan kami mengonfigurasi database kami dengan jelas. Proyek besar, perusahaan besar - dalam hal apa pun, mereka sampai pada titik bahwa pada tahap tertentu dalam kehidupan mereka, mereka menggunakan solusi cloud, dan kemudian, dalam hal apa pun, mereka kembali mengambil kompetensi tersebut kembali ke diri mereka sendiri, karena diperlukan sesuatu yang lebih spesifik. .

Azat Khadiev: Apakah solusi universal buruk atau dapatkah solusi lain dibangun berdasarkan solusi tersebut?

Pavel Selivanov: Tidak, solusi universal jelas tidak buruk. Solusi universal itu bagus. Hanya solusi universal... universal. Penting untuk dipahami di sini. Ini seperti mengambil skrip umum... Jika Anda dapat membangun seluruh logika kerja perusahaan berdasarkan skrip umum ini, aplikasi umum, maka itu bagus. Dan jika logika kerjanya berbeda, tetapi Anda mengambil solusi universal ini, skrip universal - dan mulai, seperti burung hantu, menarik bola dunia, ini buruk. Dan tidak ada yang salah dengan universalisme itu sendiri.

Azat Khadiev: Jika admin ini sudah bekerja untuk Anda, intinya bukan pemecatannya. Dia akan bisa berbuat lebih banyak.

Pavel Selivanov: Ya, hilangkan rutinitas darinya dan berikan di suatu tempat kepada seseorang untuk dibuat di suatu tempat di sana. Ini jelas merupakan pendekatan yang bagus. Poin pentingnya di sini adalah apakah solusi standar ini cocok untuk kasus tertentu.

Azat Khadiev: Berdasarkan pengalaman saya, saya melihat banyak perusahaan melakukan hal yang sama. Mereka sedang menyiapkan cluster Kubernetes dan mempertimbangkan untuk memperluasnya. Dan semua operasi ini sangat bisa diulang.

Pavel Selivanov: Ya, tentu saja. Terlebih lagi, jika kita mengambil Kubernetes secara spesifik, ada sedikit sekali pengetahuan yang mendalam dan baik tentang Kubernetes di pasaran saat ini. Dan Kubernetes adalah konstruktor yang sangat besar sehingga jika Anda menyewanya untuk sebuah perusahaan, bersiaplah untuk membawa serta seorang insinyur yang akan melakukan semua ini secara penuh waktu. Dan itu mahal. Dan coba temukan insinyur seperti itu lagi. Jika saya berbicara tentang diri saya sendiri, saya tidak terlalu menyukai solusi cloud apa pun, karena saya memiliki pemahaman yang cukup baik dan mendalam tentang cara kerja Kubernetes. Dan sering kali di cloud saya kekurangan beberapa fungsi yang saya minta - namun mereka memberi tahu saya “Tidak, Anda tidak bisa.” Kalau begitu, aku minta maaf, tapi aku bisa melakukan yang lebih baik daripada Cloud. Namun pada saat yang sama, jika Anda tidak memiliki insinyur penuh waktu, Anda tidak ingin membayar insinyur yang menjalankan Kubernetes, dan Anda terus-menerus membayarnya dengan banyak uang hanya untuk bereksperimen, maka cloud hanyalah solusinya. solusi yang bagus dan bagus. Karena setidaknya ada orang-orang yang duduk di sana yang sudah direkrut oleh penyedia. Dan mereka tahu apa yang mereka lakukan. Dan hal-hal dasar yang Anda perlukan sehari-hari ada di sana.

Azat Khadiev: Apa pendapat Anda tentang kondisi Kubernetes saat ini? Apa yang akan terjadi padanya dalam lima dan sepuluh tahun?

Pavel Selivanov: Pertanyaan bagus. Saya hanya tahu apa yang terjadi di komunitas kita tentang hal ini. Beberapa orang percaya bahwa tidak akan ada yang tersisa kecuali Kubernetes. Situasi yang terjadi dengan Linux sudah lama sekali. Artinya, di luar Linux ada orang yang tinggal di BSD, kemungkinan besar mereka memiliki tugas yang sangat spesifik. Ada orang yang bekerja di bawah Windows - server Windows - kemungkinan besar, mereka juga memiliki tugas khusus, atau mereka hanya memiliki kompetensi dalam hal ini dan mereka belum siap untuk meninggalkannya. Bagaimanapun, standar di bidang kami adalah Linux. Ada pendapat bahwa Kubernetes akan menjadi standar de facto yang sama, dan tidak akan ada apa pun selain Kubernetes. Kubernetes tidak hanya akan mengelola aplikasi, penerapan, penerapan, dan penskalaannya. Secara umum, kelola semuanya. Sekarang mereka sudah bertanya: “Apakah mungkin untuk memasukkan database ke Kubernetes?” Saya biasanya mengatakan bahwa masalahnya di sini bukan di Kubernetes, tetapi di Docker. Jika Anda siap menjalankan database Anda dalam container, beginilah cara kerjanya. Mereka menjawab saya: “Tidak, tidak, tidak, tunggu. Tidak perlu wadah. Butuh Kubernet. Kami akan mencangkokkannya ke simpul. Artinya, semuanya akan seperti yang kita miliki sekarang, hanya Kubernetes yang akan mengatur semuanya.” Dan ini sebenarnya ide yang bagus. Artinya, Kubernetes adalah suatu hal ketika Anda dapat datang ke sebuah perusahaan, jika perusahaan tersebut memiliki Kubernetes dan proses yang dibangun di atasnya, maka orang yang memahami hal ini - dia hanya perlu melihatnya selama beberapa hari untuk mengatakan: “ Saya siap mendukung Anda. Sepenuhnya. Sepenuhnya. Saya memahami cara kerja Anda.” Berbeda dengan pendekatan tanpa Kubernetes - di sini beberapa kruk dimasukkan, di sini kruk lainnya. Mungkin di sini, Terraform di sini. Seseorang menulis semua ini, dan butuh enam bulan untuk mengetahuinya. Di Sini. Jadi apakah Kubernetes akan menjadi standar de facto, saya tidak tahu. Saat ini, dia terlihat jauh lebih ambisius dan percaya diri dibandingkan solusi yang ada di sekitarnya.

Azat Khadiev: Perbandingannya dengan Linux cukup berani. Ia bekerja pada satu mesin - itu saja. Dan Kubernetes berfungsi di banyak mesin. Sejuta variasi dan alasan langsung bermunculan. Ya, itu berani. Mengingat ada pesaing dalam paradigma ini. Misalnya, Tanpa Server. Apakah Kubernetes berada dalam bahaya dengan pesaing seperti itu?

Pavel Selivanov: Dari Tanpa Server... (tertawa) Tanpa Server - kami masih memahami bahwa memang ada server. Saya baru-baru ini mendengar laporan tentang masalah ini. Di sana orang tersebut mengatakan bahwa masih ada server - dan ini adalah cloud. Namun kita harus selalu memahami bahwa cloud juga memiliki server. Ada server perangkat keras nyata, rak, dan dipasang di suatu tempat. Ini adalah awannya. Selain itu ada Serverless, di mana tidak ada server. Jadi pertanyaannya adalah: apakah Serverless akan menang atas Kubernetes? Menurut saya, Tanpa Server akan pindah ke Kubernetes. Bagi penyedia yang menyediakan Serverless, Kubernetes adalah platform yang sangat nyaman untuk menyediakan hal tersebut. Ya, mungkin suatu saat kita akan berhenti membicarakan Kubernetes secara prinsip, sebagai pengembangan aplikasi bisnis biasa. Namun secara mendalam, penyedia dan teknisi akan memiliki Kubernetes, tempat semua ini akan diimplementasikan.

Azat Khadiev: Topik yang sedikit berbeda. Ada yang namanya full-stack engineer. Apa yang kamu pikirkan tentang mereka? Apakah mereka ada?

Pavel Selivanov: Um... Fullstack engineer... Baiklah, menurut saya ada baiknya membedakan antara hal-hal ini... Anda tahu, ada yang namanya orang berbentuk T. Apakah orang-orang seperti itu dibutuhkan dalam industri saat ini? Ya, kita pasti membutuhkannya. Kita membutuhkan orang-orang yang berwawasan luas, namun pada saat yang sama mereka ahli dalam bidang yang sempit. Dan di sini insinyur Fullstack juga sama - orang yang melakukan segalanya. Mulai dari pengembangan front-end, pengujian, back-end, server dan lainnya. Saya tidak percaya bahwa di perusahaan besar, satu orang dapat melakukan ini tanpa memiliki spesialisasi yang sempit di setiap parameter. Tetapi pada saat yang sama, hanya memiliki spesialisasi yang sempit, seperti apa yang terjadi di sekitar ini, saya tidak tahu apa-apa - ini juga tidak berlaku di dunia modern. Artinya, di sini saya akan mengatakan... Saya akan membuang kata Fullstack. Kami sangat membutuhkan insinyur. Kami membutuhkan DevOps. Saya merasa kami akan mempertimbangkan kembali momen ini segera. Dan mereka tidak diperlukan.

Azat Khadiev: Bisakah Anda mengungkapkannya?

Pavel Selivanov: Bagi saya, kami di industri ini akan sampai pada kesimpulan bahwa peran Dev dan Ops ini akan segera hilang. Jika kita membutuhkan spesialis dan kita sedang berburu... Kita membutuhkan pengembang ini dan itu, kita membutuhkan administrator ini dan itu, kita membutuhkan insinyur DevOps - sekarang kita memilikinya, sekarang kita juga akan memiliki insinyur produksi, insinyur SRE. Padahal sebenarnya yang kami butuhkan adalah engineer yang ingin kami pekerjakan. Latar belakang pada umumnya tidak penting. Karena... Misalnya, SRE mengatakan bahwa masalah infrastruktur selalu merupakan masalah perangkat lunak. Jadi... Mari kita ambil contoh pengembang - dari sudut pandang bahwa pengembang adalah seorang insinyur - tempatkan mereka di departemen pemeliharaan dan mereka akan menyelesaikan masalah ini dengan cara yang sama seperti mereka menyelesaikan masalah bisnis dengan bantuan kode, dengan bantuan rekayasa seperti itu.

Azat Khadiev: Dan dari sudut pandang ini... Bagaimana cara mewawancarai insinyur seperti itu?

Pavel Selivanov: Oh, pertanyaan bagus. Dia mungkin sudah melampaui apa yang saya pahami dalam hidup ini. Tapi saya hanya akan memberi contoh saja. Itu tidak ada hubungannya dengan wawancara. Ini tentang sistem pendidikan kita di Rusia. Di bidang IT, kita tahu bahwa sistem pendidikan kita di Rusia sudah sangat ketinggalan jaman bagi dunia IT, tidak seperti yang seharusnya. Rata-rata yang saya bicarakan adalah Rusia yang luas dan apa yang terjadi di sana. Orang-orang yang lulus belum siap untuk terjun ke dunia pengembangan web atau perusahaan teknologi keesokan harinya setelah lulus. Dan itu agak buruk. Kami mengajari mereka beberapa hal aneh, meskipun kami seharusnya mengajari mereka cara mengembangkan Android, iOS, cara menggunakan Git, dan sebagainya. Faktanya, sepertinya tidak. Perguruan tinggi adalah masa ketika orang tuamu paling banyak membiayaimu. Sepanjang hidupmu. Dan Anda dapat mengabdikan lima tahun hidup Anda untuk belajar secara mendalam. Dan pelajari semua ini berbentuk T. Ketika Anda bisa belajar di institut apa itu sistem kontrol versi, pola pengembangan apa yang ada, cara menguji semuanya, jenis database dan penyeimbang apa yang ada. Dan ketika Anda mulai bekerja, Anda mulai mempelajari lebih dalam bidang tertentu. Dan inilah cara kami mendapatkan insinyur. Dan sistem pendidikan kita di Rusia lebih mendekati kebenaran ini daripada yang kita kira. Kami diberikan pelatihan matematika yang baik, kami diberikan pelatihan algoritmik yang baik, kami diberikan pemahaman tentang bahasa pemrograman. Dan tentang wawancara, menurut saya sesuatu yang mirip dengan ini. Kita perlu mewawancarai para insinyur. Kita membutuhkan bagian atas huruf T untuk berbentuk T. Karena akan diperoleh garis vertikal huruf T.

Azat Khadiev: Ya, menarik. Lima tahun setelah kuliah, saya merasa pendidikan saya aneh dan tidak memadai. Dan kemudian, seiring kemajuan pekerjaan, ketika tugas menjadi lebih dalam, proyek menjadi lebih besar, saya menyadari bahwa tidak, saya diajari hal-hal yang sangat penting. Pavel, terima kasih. Sangat menarik mendengarkan jawaban Anda. Mari kita dengarkan laporan Anda.

Pavel Selivanov: Terima kasih.

Sumber: www.habr.com

Tambah komentar