‫Baiklah. Beberapa kuliah terakhir ini Anda
‫sudah mulai melihat semua area berbeda di Kubernet yang
‫sedang meluas, benar. Jika Anda
‫menganggapnya sebagai pusat bola dunia kecil ini hanya
‫dari binari dan infrastruktur
‫dasar Kubernetes, cincinnya terus bertambah besar dan besar,
‫benar. Dengan Ingress,
‫dan pola Operator, dan definisi sumber daya khusus.
‫Itu terus bertambah besar.
‫Sekarang, saya ingin berbicara dengan Anda tentang bagaimana
‫ini menjadi lebih besar. Bahkan, ini mungkin satu-satunya area di mana
‫itu sedikit gila.
‫Itu ada di area pendapat tentang
‫bagaimana menggunakan YAML untuk sumber daya ini, benar.
‫Sejauh ini, Anda telah melihat kubectl berlaku.
‫Nah, itu akan membantu Anda memulai dan itu mungkin akan
‫membantu Anda melalui penyebaran orkestra kontainer pertama Anda,
‫benar. Anda akan ... apakah
‫Anda menggunakan Swarm atau Kubernetes, Anda akan mendapatkan YAML itu,
‫dan Anda akan memiliki repo, dan Anda akan menyimpannya di sana,
‫dan itu masuk akal.
‫Setelah Anda mulai memperluas ini, dan Anda memiliki tim,
‫dan Anda memiliki izin,
‫dan berbagai jenis izin, dan orang-orang
‫yang harus mengatur atau menyetujui sesuatu, semuanya menjadi lebih rumit.
‫Apa yang terjadi di dunia ini tentang
‫cara menyebarkan aplikasi Anda di
‫Kubernetes, dan itulah dasarnya tentang ini. Kita akan berbicara tentang fakta
‫bahwa sekarang ada lebih dari 60, well sungguh, ada seperti
‫80, tetapi banyak dari mereka tidak lagi proyek nyata atau
‫mereka mati atau diarsipkan.
‫Tetapi setidaknya ada 60
‫cara untuk menambahkan alat di atas Kubernetes
‫hanya untuk menyebarkan aplikasi Anda di Kubernetes.
‫Ada banyak pendapat, benar.
‫Di sinilah pendapat mulai keluar tentang bagaimana
‫Anda seharusnya melakukan ini. Semuanya dari Jenkins X hingga Helm
‫dan seterusnya. Ada semua
‫hal dan pendapat berbeda tentang ini,
‫yah, Kubernetes bukan infrastruktur yang memiliki pendapat sehingga kami membutuhkan
‫pendapat untuk memandu orang melalui
‫proses penggelaran dan pembaruan aplikasi mereka.
‫Jadi, semua orang punya satu. Jika Anda pernah
‫membaca tentang cara melakukan ini di Kubernetes,
‫Anda mungkin pernah mendengar tentang Helm. Helm to Kubernetes pada
‫dasarnya adalah Kubernetes to container. Helm adalah cara de facto
‫yang digunakan setiap
‫orang untuk membuat template dan menggunakan standar templating
‫untuk menggunakan aplikasi pihak ketiga atau membuat
‫grafik Helm kustom mereka sendiri.
‫Itulah yang disebut grafik.
‫Ini pada dasarnya adalah YAML templated, tetapi memungkinkan Helm
‫untuk membuat atau memuntahkan YAML
‫yang kemudian akan masuk ke cluster Kubernetes Anda
‫untuk Anda. Tapi, itu bukan satu-satunya pendapat, kan.
‫Saya mengatakan ada lebih dari 60 setidaknya terakhir kali saya melihat.
‫Sebenarnya ada Google Sheet yang saya taruh di
‫tautan referensi. Agak ketinggalan jaman, tetapi ini adalah
‫daftar terakhir dari semua tempat yang bisa Anda
‫temukan cara-cara berbeda untuk digunakan. Docker sendiri memiliki pendapat mereka sendiri
‫yang sangat menarik, terutama jika Anda ingin menjadi bagian
‫dari ekosistem Docker. Itu
‫adalah Menulis di Kubernetes.
‫Jika Anda memiliki Docker Desktop, hari
‫ini Anda dapat mengaktifkan Kubernetes, yang mungkin sudah Anda lakukan
‫untuk bagian kursus ini. Anda dapat menggunakan docker
‫stack deploy dan alih-alih pergi ke Swarm, Anda dapat
‫mengirimnya ke Kubernetes.
‫Jika Anda melihat perintah menyebarkan tumpukan buruh pelabuhan dan
‫melihat bantuan untuk itu, Anda akan melihat bahwa
‫ada opsi di sana untuk menentukan orkestrator yang
‫ingin Anda gunakan. Bahkan, dalam pengaturan
‫Docker Desktop, Anda dapat mengatakannya untuk memilih atau default
‫ke Kubernetes untuk perintah penumpukan stack.
‫Itu cukup menarik karena saya berpikir bahwa Menulis YAML
‫berbeda dari Kubernetes YAML.
‫Nah, itulah yang dilakukan Compose di Kubernetes sekarang.
‫Ini alat pihak ketiga pada dasarnya.
‫Ini adalah cara yang disarankan, dari Docker, cara menggunakan,
‫atau menafsirkan, atau menerjemahkan secara teknis, YAML
‫Compose, format Compose, ke dalam YAML
‫dari format Kubernetes.
‫Jadi, saya telah memasang tautan di sini agar
‫Anda dapat memeriksanya jika Anda seseorang yang akan mempertimbangkan
‫Docker Enterprise sebagai perkakas perusahaan Anda untuk Kubernetes, Swarm,
‫dan Docker secara umum.
‫Maka, Anda harus memeriksa ini karena itu keluar
‫dari kotak. Salah satu hal yang
‫menyenangkan tentang fitur itu adalah alur kerjanya tetap
‫sangat sederhana. Pada dasarnya, Anda
‫menggunakan Compose YAML Anda di seluruh jalur pipa, dan Anda dapat
‫menggunakannya di Ops dan Dev. Itu tidak memaksa Anda
‫untuk mengatakan, OK untuk pengembang, Anda harus memiliki YAML
‫untuk Menulis dan untuk produksi dan server, Anda harus memiliki YAML
‫Kubernet ini, dan mereka tidak kompatibel, benar.
‫Gagasan dengan Docker adalah mereka pikir ini terlalu
‫rumit. Mari sederhanakan.
‫Mari kita gunakan satu standar YAML untuk seluruh
‫pipa kontrol.
‫Dan saya menyukainya. Masalahnya adalah itu
‫tidak mendukung semua yang ada di bawah matahari
‫yang dapat dilakukan Kubernet, benar. Maksud saya jelas,
‫kami memiliki satu halaman di Docker Docs untuk mencantumkan
‫semua fitur file Compose. Tapi, YAML Kubernet
‫begitu rumit sehingga kita harus menggali banyak perintah, dan
‫referensi API dan semua itu, benar.
‫Jadi jelas, itu tidak mungkin melakukan semuanya.
‫Yang menyenangkan ada di situs Compose for
‫Kubernetes, mereka berbicara di GitHub tentang berbagai fitur
‫yang didukungnya.
‫Itu aturan 80/20 di sana.
‫Dengan kata lain, ini mendukung 20 persen
‫fitur Kubernet yang mungkin dibutuhkan 80 persen dari kita.
‫Jadi, Anda bisa mulai dengan itu dan melihat apakah alur kerja
‫itu akan bekerja untuk Anda. Hal lain yang
‫menyenangkan adalah pada akhir 2018, mereka open source yang
‫Menulis di Kubernetes sehingga Anda sekarang dapat menggunakannya pada infrastruktur
‫Kubernet yang Anda miliki, dan itu hanya berfungsi
‫sebagai semacam juru bahasa. Ini menerjemahkan kapan pun
‫Anda menggunakan file Tulis dari Docker dan menggunakan perintah
‫Docker, itu akan menghubungkan kluster Kubernet Anda untuk
‫Anda, menerjemahkannya secara otomatis ke dalam Kubernet YAML
‫dan pergi. Anda sebenarnya
‫dapat, pada saat itu, mengabaikan banyak Kubernet YAML
‫untuk aplikasi Anda. Anda tahu, mungkin
‫Anda menggunakan Kubernetes YAML untuk hal-hal infrastruktur yang
‫tidak Anda gunakan setiap hari. Tapi, mungkin bagi pengembang
‫Anda untuk membuatnya lebih mudah untuk menulis Compose YAML dan
‫untuk membuat produksi menjadi lebih cepat, Anda memilih untuk menggunakan
‫Compose di Kubernetes sebagai alur kerja.
‫Lalu, mungkin Anda menggunakan grafik Helm,
‫yang merupakan semacam standar bersaing untuk infrastruktur
‫utama Anda. Karena hal tentang
‫Helm adalah bahwa ia keluar dari kotak dengan banyak
‫templat bagan ini sehingga Anda dapat menggunakan Prometheus
‫atau logging Elasticsearch dengan ELK, atau sesuatu seperti itu.
‫Itu akan datang dengan template-template yang tepat out-of-the-box yang
‫memungkinkan Anda untuk memulai lebih cepat.
‫Juga, ingatlah bahwa ini semua opsional, benar.
‫Anda dapat melakukan Kubernet dengan standar YAML yang telah Anda
‫mainkan sejauh ini, dan itu tidak masalah.
‫Tidak memerlukan hal-hal lain ini.
‫Itu hanya alat pihak ketiga opsional.
‫Secara tradisional, seiring pertumbuhan tim, ketika Anda mendapatkan
‫beberapa kluster produksi Kubernetes dan ada banyak tim
‫yang terlibat, maka semuanya menjadi lebih sulit, dan
‫Anda mungkin akan berakhir dengan lebih dari
‫satu solusi. Anda mungkin berakhir dengan Helm pada kelompok tertentu.
‫Anda mungkin berakhir dengan Tulis di Kubernetes untuk pengembang Anda,
‫atau sesuatu seperti itu.
‫Atau, salah satu dari 60 alat plus lainnya
‫dalam ekosistem.
‫Poin terakhir adalah bahwa sejak Helm benar-benar pemimpin di ruang
‫ini sekarang, hampir setiap distribusi
‫menggunakannya, atau mendukungnya, atau bahkan datang dengan itu
‫di luar kotak. Pertimbangkan saja ketika
‫Anda melihat alat-alat ini yang mungkin tidak dapat Anda hindari
‫dari Helm di lingkungan yang besar.
‫Anda hanya harus menggunakannya.
‫Yang menyenangkan saat ini adalah pada 3. 0 dan ada banyak
‫opsi penempatan yang lebih sederhana untuk itu
‫di 3. 0 versus 1. 0 dan
‫2. 0. Jadi, segala sesuatunya menjadi lebih
‫baik dan lebih mudah dengan itu sepanjang waktu. Banyak alat penyebaran ini
‫benar-benar hanya membantu Anda template YAML Anda dengan berbagai
‫cara. Kubernetes sendiri
‫tidak memiliki apa pun untuk waktu yang lama.
‫Dalam rilis terbaru, sekarang keluar dengan sesuatu yang
‫disebut Kustomize with a K.
‫Ketika Anda mulai melihat kata itu dengan huruf K, Anda tahu
‫itu adalah fitur khusus.
‫Hal ini memungkinkan Anda untuk melakukan hal-hal yang mirip
‫dengan Helm dan solusi penyebaran lainnya, tetapi
‫itu tidak benar-benar sekuat
‫Helm, kan.
‫Jadi, Helm masih pemimpin.
‫Kustomize adalah semacam anak baru di blok, tetapi ia keluar dari kotak
‫dengan semua yang Anda lakukan di Kubernetes.
‫Perintah kubectl mendukungnya.
‫Benar-benar apa itu hanya mengambil, alih-alih
‫YAML templated, itu hanya mengambil YAML yang sudah Anda miliki
‫yang merupakan standar Kubernet YAML, dan Anda kemudian dapat
‫mengambil file itu dan kemudian menjalankan sesuatu yang
‫lain di atasnya dan mengubahnya dengan menimpa macam.
‫Agak mirip dengan yang kita lakukan di Swarm.
‫Kami sebenarnya memiliki di Swarm dan Compose, kami memiliki
‫menimpa file dan hal-hal seperti itu.
‫Mereka sekarang memiliki ini dibangun di luar kotak.
‫Ada banyak fitur untuk itu.
‫Saya pikir, kurang lebih, itu tidak ada cukup dalam hal set
‫fitur apa yang dimiliki Helm, tapi setidaknya itu
‫keluar dari kotak.
‫Ingat, jika Anda memiliki Docker, rilis
‫terbaru, 19. 03 atau yang lebih
‫baru dari Docker, sekarang memiliki aplikasi sub aplikasi docker,
‫yang melakukan templating sendiri dari Tuliskan YAML
‫dan benar-benar sangat sebanding dengan opsi yang disesuaikan untuk
‫Kubernetes ini. Sekali lagi, jika
‫Anda akan tetap menggunakan track Docker dan Anda
‫akan mempertimbangkan Docker Enterprise atau Anda benar-benar menyukai bagaimana Docker berfokus pada
‫alur kerja pengembang, lihat ke dalam sub perintah
‫aplikasi buruh pelabuhan dan juga repo aplikasi buruh pelabuhan, yang Saya akan
‫memasukkan sumber daya di sini.
‫Karena mereka memiliki dokumentasi tentang bagaimana Anda
‫dapat menggunakan Compose YAML, ekstrak hal-hal seperti variabel lingkungan
‫dan hal-hal lain. Kemas semuanya menjadi satu
‫gambar dan kemudian kirim YAML Anda sebagai gambar.
‫Yang berarti Anda sekarang dapat versi YAML Anda dan
‫menyebarkannya dengan satu baris tanpa harus melakukan
‫seperti menarik turun dari YAML dan kemudian mengetikkan perintah panjang.
‫Ini cara yang cukup menarik untuk melakukannya.
‫Itu menggunakan sesuatu yang baru yang disebut standar CNAB, yang tidak
‫akan kita bahas di sini, tapi itu
‫C N A B.
‫Itu adalah pengumuman yang dibuat Docker dan Microsoft
‫pada 2018.
‫Anda dapat memeriksa semua itu di situs web
‫aplikasi Docker di sumber daya. Sekali lagi, semua hal
‫ini adalah tentang cara pihak ketiga opsional untuk menyesuaikan dan
‫memperluas YAML default untuk membuatnya lebih mudah bagi tim Anda
‫saat Anda tumbuh.