Disebalik tabir. Bagaimanakah kursus dibuat?

Seorang peserta datang ke kursus atau kursus intensif. Dia melihat barisan sokongan teknikal yang teratur, kabel kuasa yang disalurkan dengan kemas, susun atur papan dam dewan kuliah, gambar terang dan gambar rajah slaid. Penceramah dengan jenaka dan senyuman memberikan maklumat dengan cara yang anda hanya mempunyai masa untuk memahaminya. Tempat duduk disediakan, tugas latihan hanya perlu dilakukan, kecuali kadangkala anda memerlukan bantuan kakitangan teknikal. sokongan.

Dan juga rehat kopi dengan orang yang berfikiran sama, suasana yang ceria dan bertenaga, pertukaran pengalaman, soalan yang paling tidak dijangka untuk penceramah. Kedua-dua jawapan dan maklumat yang anda tidak akan dapati dalam manual, tetapi hanya dalam amalan.

Berapa banyak masa, usaha dan keberanian yang anda fikirkan diperlukan untuk menjadikannya kelihatan seperti ini?

Disebalik tabir. Bagaimanakah kursus dibuat?

Terima kasih kepada Volodya Guryanov, pentadbir Kubernetes bertauliah dan ketua jurutera/pasukan di Southbridge, yang telah menyaksikan dan mengambil bahagian secara aktif dalam penciptaan banyak kursus Slurm sejak awal lagi.

Dia melihat perut yang sudah tentu penciptaan-kerumitan dan rake berduri, pandangan dan penyelesaian yang tidak dijangka. Dan intensif Kubernetes yang sudah biasa, seperti Slurm Basic dan Slurm Mega. Dan kursus baharu yang kebanyakannya disemak semula Slurm DevOps:Tools&Cheats, yang semakin hampir dan akan bermula pada 19 Ogos.

Disebalik tabir. Bagaimanakah kursus dibuat?

Tetapi, mungkin, cukup liriknya, mari kita beralih kepada cerita itu sendiri. Bagaimana daripada beberapa topik intensif sepenuhnya berdikari dan pelbagai rupa Kursus Docker. Jadi saya akan memulakan cerita tentang cara kursus dicipta dan dibangunkan - sama seperti "Dahulu kala di galaksi yang jauh, jauh sekali..."

Apa yang ada di sebalik tabir?

Jika anda bertanya bagaimana kami membuat kursus dan di mana semuanya bermula, saya hanya akan menjawab "Semuanya bermula dengan idea."

Biasanya idea itu datang dari suatu tempat - kami tidak duduk bergari di ruang bawah tanah sehingga kami datang dengan: "Topik apakah yang harus kami buat kursus?" Idea datang dari suatu tempat sendiri dari sumber luar. Kadang-kadang orang mula bertanya secara aktif: "Apa yang anda tahu tentang teknologi khusus ini dan sedemikian?" Atau bagaimana dengan Docker bahawa adalah mustahil untuk menyesuaikannya dengan masa untuk kursus intensif - dia jelas terpaksa dibawa keluar untuk mempunyai masa untuk memberitahu sesuatu semasa kursus intensif.

Disebalik tabir. Bagaimanakah kursus dibuat?

Ini adalah bagaimana idea muncul.

Selepas diumumkan, pada pendapat saya, detik yang paling sukar bermula - untuk memahami secara umum apa yang perlu disertakan dalam kursus ini - ini sangat setanding dengan cara penceramah disediakan untuk mana-mana persidangan.

Terdapat satu kesakitan utama apabila anda nampaknya telah memilih topik dan berfikir: "Apa yang boleh saya ceritakan mengenainya? Ini terlalu mudah, ini jelas, semua orang tahu ini juga.”

Tetapi sebenarnya ini tidak berlaku sama sekali. Dan saya secara peribadi mengatakan di banyak tempat bahawa apa yang kelihatan jelas kepada anda, kepada mereka yang datang untuk mendengar anda atau mengikuti kursus, sama sekali tidak jelas. Dan di sini lapisan kerja yang besar dan konflik dalaman timbul, tentang apa yang perlu disertakan dalam kursus. Akibatnya, kami mendapat senarai bab dengan pukulan besar yang begitu hebat, tentang kursus itu.

Dan kemudian kerja rutin mudah bermula:

  • Pemilihan bahan
  • Baca dengan teliti dokumentasi untuk versi semasa, memandangkan dunia IT kini berkembang pada beberapa jenis kelajuan kosmik. Walaupun anda bekerja dengan sesuatu dan membuat kursus mengenainya, anda perlu pergi ke dokumentasi dan melihat perkara baharu di sana, perkara yang menarik untuk dibincangkan, perkara yang mungkin berguna untuk disebut.
  • Dan rangka kursus tertentu muncul, di mana kebanyakan topik, secara umum, sudah diliputi dan nampaknya apa sahaja yang ada - rakam video dan lancarkannya ke dalam pengeluaran.
  • Tetapi sebenarnya, tidak, maka kerja keras bermula, tetapi bukan untuk pengarang kursus, tetapi untuk mereka yang menguji. Biasanya penguji alfa kami ialah sokongan teknikal, yang, pertama sekali, menyemak semula kursus untuk sebarang kesilapan sintaksis dan tatabahasa. Kedua, mereka memukul kami dengan kayu dan menyumpah-nyumpah apabila terdapat beberapa tempat yang tidak jelas dan tidak dapat difahami. Apabila beberapa ayat bawahan yang disusun secara rumit yang berlangsung beberapa halaman atau karut yang jelas muncul dalam teks. Mereka membaca semuanya, perhatikan.
  • Kemudian peringkat ujian amalan bermula, di mana beberapa perkara yang jelas tidak berfungsi juga ditangkap dan beberapa detik ditunjukkan yang boleh menjadi lebih sukar, kerana ia menjadi tidak begitu menarik - hanya duduk dan menyalin - dan tempat dikenal pasti di mana ia sangat sukar dan banyak perkara yang kami mahukan daripada orang yang akan mengambil kursus ini. Dan kemudian cadangan datang: "Kawan-kawan, permudahkan di sini, ia akan lebih mudah untuk dilihat dan akan ada lebih banyak faedah daripadanya."
  • Selepas jumlah kerja ini selesai, bahagian yang berkaitan dengan video ditulis, semuanya kelihatan baik-baik saja. Dan anda sudah boleh menderma untuk pengeluaran, untuk pengiklanan kursus ini. Tetapi sekali lagi, tidak, masih terlalu awal - kerana baru-baru ini kami telah berhenti mempercayai diri sendiri sedikit dan, pada dasarnya, telah mula bekerja lebih dengan maklum balas. Terdapat perkara seperti ujian beta - ini adalah apabila orang dijemput daripada orang luar, tidak berhubung dengan syarikat kami dalam apa cara sekalipun, dan untuk beberapa kebaikan mereka ditunjukkan semua bahagian kursus, video, teks, tugasan praktikal, supaya mereka menilai kualiti bahan, kebolehcapaian bahan dan membantu kami membuat kursus sebaik mungkin.
  • Dan apabila beberapa lelaran sedemikian dilalui, pembesar suara, ujian alfa dalam bentuk sokongan teknikal, ujian beta, penambahbaikan. Dan kemudian semuanya bermula sekali lagi - sokongan teknikal, ujian beta, penambahbaikan.
  • Dan pada satu ketika tertentu, pemahaman datang bahawa sama ada kita telah selesai dengan pengubahsuaian, kerana adalah tidak realistik untuk memastikan semua orang menyukainya, atau beberapa keputusan drastik dibuat. Apabila banyak ulasan di tempat tertentu adalah kritikal, buat semula ulasan itu secara global, kerana ada masalah.
  • Kemudian tiba masanya untuk suntingan kecil - di suatu tempat ayat itu tidak dirumuskan dengan baik, di suatu tempat seseorang tidak menyukai fon, 14,5, tetapi ingin 15,7.
  • Apabila ulasan jenis ini kekal, maka itu sahaja, kursus lebih kurang dibuka, jualan rasmi bermula.

Dan pada pandangan pertama, tugas pendek dan mudah untuk mencipta kursus ternyata tidak mudah sama sekali dan mengambil masa yang sangat lama.

Dan terdapat satu lagi perkara penting yang bekerja dengan kursus tidak berakhir apabila kursus dikeluarkan. Pertama, kami membaca dengan teliti komen yang ditinggalkan pada bahagian tertentu. Dan walaupun semua usaha telah kami lakukan, beberapa kelemahan masih dikenal pasti, beberapa kesilapan sedang diperbetulkan dan diperbaiki sepanjang perjalanan, dalam masa nyata, supaya setiap pengguna seterusnya menerima perkhidmatan yang lebih baik.

Disebalik tabir. Bagaimanakah kursus dibuat?

Setiap kursus mempunyai pemilik produk sendiri, yang, sebagai tambahan kepada mentakrifkan konsep umum, menyemak tarikh akhir, dia membuat nota di margin bahawa apabila tiba masanya untuk menulis semula kursus sepenuhnya, dan ia pasti akan datang, kerana dalam dua tahun, atau bahkan setahun kemudian, sebahagian daripada apa yang kita ceritakan akan menjadi tidak relevan hanya kerana ia akan menjadi usang dari segi moral. Pemilik produk membuat nota dalam jidar yang selalunya orang bertanya perkara apa yang tidak jelas, tugas apa yang kelihatan sangat sukar, dan yang kelihatan, sebaliknya, sangat mudah. Dan semua ini diambil kira semasa merakam semula kursus, semasa beberapa jenis pemfaktoran semula, supaya setiap lelaran kursus global menjadi lebih baik, lebih mudah dan selesa.

Beginilah rupa kursus.

Bagaimana kursus Docker dilahirkan

Ini adalah topik yang berasingan malah luar biasa bagi kami. Kerana di satu pihak, kami tidak merancang untuk melakukannya, kerana banyak sekolah dalam talian menawarkannya. Sebaliknya, dia sendiri meminta kebebasan dan mendapat tempat yang logik dalam konsep kami melatih pakar IT di Kubernetes.

Bercakap secara global, pada mulanya semuanya bermula dengan kursus Kubernetes, apabila ia baru bermula, pada pendapat saya, selepas Slurm pertama. Kami mengumpul maklum balas dan melihat bahawa ramai orang ingin membaca sesuatu tambahan tentang Docker di tempat lain, dan secara amnya ramai yang datang ke kursus asas Kubernetes tanpa mengetahui apa itu buruh pelabuhan.

Oleh itu, untuk Slurm kedua mereka membuat kursus - atau sebaliknya, bukan kursus, tetapi membuat beberapa bab tentang Dockers. Di mana mereka memberitahu beberapa perkara yang paling asas, supaya orang yang datang ke intensif tidak akan merasa kekurangan dan secara amnya akan memahami apa yang berlaku.

Disebalik tabir. Bagaimanakah kursus dibuat?

Dan kemudian peristiwa berkembang kira-kira seperti ini. Jumlah bahan bertambah dan berhenti dipasang dalam masa 3 hari. Dan idea yang logik dan jelas muncul: mengapa tidak menukar perkara yang kami bincangkan di Slurm Basic menjadi sejenis kursus kecil yang anda boleh hantar kepada orang yang ingin menonton sesuatu tentang Docker sebelum mengikuti kursus intensif tentang Kubernetes.

Slurm Junior, sebenarnya, gabungan beberapa kursus asas tersebut. Akibatnya, kursus Docker menjadi sebahagian daripada Slurm Junior. Iaitu, ini adalah langkah sifar sebelum ini asas ΠΈ Mega. Dan kemudian terdapat hanya abstraksi yang sangat asas.

Disebalik tabir. Bagaimanakah kursus dibuat?

Pada satu ketika, orang mula bertanya: "Kawan-kawan, ini semua hebat, ini sudah cukup untuk memahami apa yang anda bercakap tentang kursus intensif. Di manakah saya boleh membaca dengan lebih terperinci tentang perkara yang boleh dilakukan oleh docker dan bagaimana untuk bekerja dengannya, dan apakah itu?" Maka tercetuslah idea untuk meluruskannya kursus penuh di Docker, supaya, pertama sekali, orang yang datang ke Slurm menggunakan Kubernetes masih boleh dihantar kepadanya, dan sebaliknya, bagi mereka yang tidak berminat dengan Kubernetes pada peringkat pembangunan ini. Supaya pakar IT boleh datang menonton kursus kami di Docker dan memulakan laluan evolusinya hanya dengan Docker tulen. Supaya kami mempunyai kursus yang lengkap dan lengkap - dan kemudian ramai, setelah menonton kursus ini, telah bekerja untuk beberapa lama dengan Docker tulen, telah berkembang ke tahap di mana mereka memerlukan Kubernetes atau beberapa sistem orkestrasi lain. Dan mereka datang kepada kami khususnya.

Kadang-kadang soalan ditanya: "Apakah jenis orang sekarang yang mungkin tidak memerlukan Kubernetes?" Tetapi soalan ini bukan tentang orang, ia lebih kepada soalan tentang syarikat. Di sini anda perlu memahami bahawa Kubernetes mempunyai kes tertentu di mana ia sangat sesuai dan tugas yang diselesaikan dengan baik, tetapi sebaliknya, terdapat beberapa senario untuk menggunakan Kubernetes apabila ia menyebabkan kesakitan tambahan dan penderitaan tambahan. Oleh itu, ia tidak bergantung pada orang, tetapi pada syarikat apa yang telah dibangunkan dan untuk berapa lama.

Sebagai contoh, beberapa monolit Legacy yang dahsyat - anda mungkin tidak sepatutnya memasukkannya ke dalam Kubernetes, kerana ia akan menyebabkan lebih banyak masalah daripada faedah. Atau, sebagai contoh, jika ini adalah projek kecil, ia mempunyai beban yang kecil atau, pada dasarnya, tidak banyak wang dan sumber. Tidak ada gunanya menyeretnya ke Kubernetes.

Dan secara umum, mungkin, secara umum, seperti yang telah dikatakan oleh ramai orang, jika anda bertanya soalan: "Adakah saya memerlukan Kubernetes?", maka kemungkinan besar anda tidak memerlukannya. Saya tidak ingat siapa yang pertama kali menciptanya, pada pendapat saya, Pasha Selivanov. Saya bersetuju dengan ini 100%. Dan anda perlu membesar kepada Kubernetes - dan apabila sudah jelas bahawa saya memerlukan Kubernetes dan syarikat kami memerlukannya, dan ia akan membantu menyelesaikan isu tersebut dan itu, maka mungkin masuk akal untuk pergi belajar dan memikirkan dengan tepat cara untuk menetapkan ia selesai dengan baik, supaya proses beralih kepada Kubernetes tidak begitu menyakitkan.

Sesetengah penyakit kanak-kanak dan beberapa perkara yang mudah, malah yang tidak begitu mudah, boleh didapati khususnya daripada kami, dan tidak melalui rake dan kesakitan anda sendiri.

Banyak syarikat telah mengikut cara yang pada mulanya hanya terdapat beberapa jenis infrastruktur tanpa kontena. Kemudian mereka sampai ke tahap di mana ia menjadi sukar untuk menguruskan semuanya, mereka beralih kepada Docker dan pada satu ketika mereka berkembang ke tahap di mana ia menjadi sempit dalam rangka kerja Docker dan apa yang ditawarkannya. Dan mereka mula melihat apa yang ada di sekeliling, sistem apa yang menyelesaikan masalah ini, dan khususnya Kubernetes - ini adalah salah satu sistem yang membolehkan anda menyelesaikan masalah apabila Docker tulen menjadi sesak dan tidak mempunyai fungsi, ini adalah kes yang sangat baik apabila orang ramai. Mereka pergi selangkah demi selangkah dari bawah ke atas, memahami bahawa teknologi ini tidak mencukupi dan bergerak ke peringkat seterusnya. Mereka menggunakan sesuatu, ia menjadi jarang sekali lagi, dan mereka meneruskan.

Ini adalah pilihan yang sedar - dan ia sangat keren.

Secara umum, saya melihat bahawa sistem kami dibina dengan sangat cantik, contohnya, kursus buruh pelabuhan, walaupun melalui kursus video. Kemudian selepas buruh pelabuhan ia pergi asas Kuberneteskemudian Mega Kuberneteskemudian Ceph. Semuanya berbaris secara logik - seseorang lulus dan profesion yang kukuh muncul.

Pada dasarnya, set kursus membolehkan anda merangkumi banyak kes, malah yang moden. Masih terdapat kawasan yang kekal sebagai kawasan kelabu, saya harap kami akan segera membuat beberapa kursus yang akan membolehkan kami menutup kawasan kelabu ini, khususnya, kami akan datang dengan sesuatu tentang keselamatan. Kerana ini menjadi sangat relevan.

Ringkasnya, kami mempunyai beberapa kawasan kelabu yang sangat bagus untuk ditutup, supaya ia menjadi gambaran yang lengkap dan lengkap - dan orang ramai boleh datang, dan sama seperti Kubernetes sendiri adalah seperti pembina Lego, anda boleh membuat perkara yang berbeza daripada ia mengumpul, jika masih tidak mencukupi - tambahan, sama dengan kursus kami, supaya orang ramai dapat memahami apa yang mereka perlukan daripada ini, mereka perlu memasang sejenis teka-teki, sejenis set pembinaan dari kursus kami.

Disebalik tabir. Bagaimanakah kursus dibuat?

Jika anda bertanya kepada diri sendiri soalan yang secara amnya betul dan jujur: "Siapa yang boleh menggunakan kursus Docker aktif sekarang?", maka:

  • Bagi pelajar yang baru mula menceburinya.
  • Menguji pekerja jabatan.
  • Malah, terdapat banyak syarikat yang masih, bukan sahaja tidak menggunakan Docker, tetapi tiada siapa yang pernah mendengar tentang teknologi sedemikian dan, pada dasarnya, tidak tahu cara menggunakannya. Dan saya tahu beberapa syarikat besar di St. Petersburg yang telah membangun selama bertahun-tahun, dan mereka menggunakan beberapa teknologi lama, mereka bergerak ke arah ini. Khususnya, untuk syarikat sedemikian, untuk jurutera dalam syarikat sedemikian, kursus ini boleh menjadi sangat menarik, kerana, pertama, ia akan membolehkan anda dengan cepat melibatkan diri dalam teknologi ini, dan kedua, sebaik sahaja beberapa jurutera muncul yang memahami bagaimana semuanya. berfungsi, mereka boleh membawanya kepada syarikat dan membangunkan budaya ini serta hala tuju ini dalam syarikat.
  • Pada pendapat saya, kursus ini mungkin masih berguna kepada mereka yang telah bekerja dengan buruh pelabuhan, tetapi sangat sedikit dan lebih banyak dalam gaya "buat sekali, buat dua kali" - dan kini mereka akan berinteraksi dengan Kubernetes yang sama, dan ini mengenakan kewajipan tertentu kepada mereka, jika anda mempunyai pengetahuan yang sangat cetek tentang apa itu docker, bagaimana untuk menjalankannya, tetapi pada masa yang sama anda tidak tahu bagaimana ia berfungsi dari dalam, anda tidak tahu apa yang terbaik untuk dilakukan dengan itu dan apa yang lebih baik tidak dilakukan, Maka kursus ini amat sesuai untuk mensistematisasi dan mendalami ilmu.

Tetapi jika anda mempunyai pengetahuan pada tahap: "Saya tidak tahu cara menulis fail Docker yang sama dengan betul, saya boleh bayangkan apakah ruang nama, cara bekas berfungsi, bagaimana ia sebenarnya dilaksanakan pada peringkat sistem pengendalian" - maka terdapat pasti tiada gunanya pergi kepada kami, anda tidak akan belajar sesuatu yang baru dan anda akan berasa sedikit sedih untuk wang dan masa yang dihabiskan.

Jika kita merumuskan apakah kelebihan kursus kita, maka:

  • Kami cuba membuat kursus ini dengan bilangan kes praktikal yang mencukupi yang membolehkan anda bukan sahaja memahami bahagian teori yang wujud, tetapi juga memahami mengapa anda memerlukannya dan bagaimana anda akan menggunakannya pada masa hadapan;
  • terdapat beberapa bahagian yang sangat jarang ditemui di mana-mana - dan secara amnya tidak banyak bahan padanya. Mereka berkaitan dengan interaksi Docker dengan sistem pengendalian, walaupun sedikit berbeza. Apakah mekanisme yang diambil oleh Docker daripada sistem pengendalian untuk melaksanakan sistem kontena - dan ini memberikan pemahaman yang lebih mendalam tentang keseluruhan isu menjalankan kontena dalam sistem pengendalian Linux. Bagaimana ia berfungsi, cara ia berinteraksi antara satu sama lain di dalam sistem pengendalian, di luar, dan sebagainya.

Ini adalah pandangan yang sangat mendalam sehingga jarang berlaku, dan pada masa yang sama, pada pendapat saya, ia sangat penting. Jika anda ingin memahami mana-mana teknologi dengan baik dan memahami apa yang diharapkan daripadanya, anda perlu sekurang-kurangnya mempunyai idea umum tentang cara ia berfungsi pada tahap yang rendah.

Kursus kami menunjukkan dan memberitahu cara ini berfungsi dari sudut pandangan sistem pengendalian. Di satu pihak, semua sistem kontena menggunakan mekanisme sistem pengendalian yang sama. Sebaliknya, mereka mengambil apa yang ada dalam sistem pengendalian Linux, seperti docker. Sistem kontena lain tidak menghasilkan apa-apa yang baharu - mereka mengambil apa yang sudah ada di Linux dan menulis hanya pembungkus yang mudah yang membolehkan anda memanggilnya dengan pantas, menjalankannya atau berinteraksi dengannya. Docker yang sama bukanlah lapisan yang sangat besar antara sistem pengendalian dan baris arahan, ia adalah sejenis utiliti yang membolehkan anda tidak menulis kiloton arahan atau beberapa jenis kod C untuk membuat bekas, tetapi untuk melakukan ini dengan memasukkan beberapa baris di terminal.

Dan satu lagi, jika kita bercakap secara khusus tentang Docker, apa yang Docker benar-benar bawa ke dunia IT adalah standard. Bagaimana aplikasi harus dilancarkan, bagaimana ia harus berfungsi, apakah keperluan untuk log, apakah keperluan untuk penskalaan, mengkonfigurasi aplikasi itu sendiri.

Dalam banyak cara, buruh pelabuhan adalah mengenai piawaian.

Piawaian juga beralih ke Kubernetes - dan terdapat piawaian yang sama; jika anda tahu cara menjalankan aplikasi anda dengan baik di Docker, maka 99% masa ia akan berfungsi dengan baik dalam Kubernetes.

Jika anda mendapati diri anda berminat bukan sahaja tentang cara kursus Docker dicipta, tetapi juga dalam kursus lain, tetapi juga berminat dengan kursus itu sendiri dari sudut pandangan praktikal, maka Masih ada masa untuk membelinya pada diskaun pra-pesanan sebanyak 5000 rubel sehingga 30 Julai.

Kami akan gembira melihat anda!

Sumber: www.habr.com

Tambah komen