Platform moden untuk pembangunan dan penggunaan perisian

Ini adalah yang pertama dalam siri siaran tentang perubahan, penambahbaikan dan penambahan dalam kemas kini platform Red Hat OpenShift 4.0 akan datang yang akan membantu anda bersedia untuk peralihan kepada versi baharu.

Platform moden untuk pembangunan dan penggunaan perisian

Dari saat komuniti Kubernetes yang masih muda mula-mula berkumpul di pejabat Google di Seattle pada musim luruh tahun 2014, adalah jelas bahawa projek Kubernetes telah ditakdirkan untuk merevolusikan cara perisian dibangunkan dan digunakan hari ini. Pada masa yang sama, penyedia perkhidmatan awan awam terus melabur secara aktif dalam pembangunan infrastruktur dan perkhidmatan, yang menjadikan kerja dengan IT dan mencipta perisian lebih mudah dan lebih mudah diakses, dan menjadikannya sangat mudah diakses, yang hanya dapat dibayangkan oleh segelintir orang pada permulaan dekad tersebut.

Sudah tentu, pengumuman setiap perkhidmatan awan baharu disertai dengan banyak perbincangan di kalangan pakar di Twitter, dan perbahasan telah dijalankan mengenai pelbagai topik - termasuk penghujung era sumber terbuka, penurunan IT di premis dan ketidakpastian. monopoli perisian baharu. dalam awan, dan cara paradigma baharu X akan menggantikan semua paradigma lain.

Tidak perlu dikatakan, semua pertikaian ini adalah sangat bodoh

Realitinya ialah tiada apa yang akan hilang, dan hari ini kita dapat melihat pertumbuhan eksponen dalam produk akhir dan cara ia dibangunkan, disebabkan oleh kemunculan berterusan perisian baharu dalam kehidupan kita. Dan walaupun fakta bahawa segala-galanya akan berubah, pada masa yang sama, pada dasarnya, semuanya akan kekal tidak berubah. Pembangun perisian masih akan menulis kod dengan ralat, jurutera operasi dan pakar kebolehpercayaan masih akan berjalan dengan alat kelui dan menerima makluman automatik dalam Slack, pengurus masih akan beroperasi dari segi OpEx dan CapEx, dan setiap kali kegagalan berlaku, senior pembangun akan mengeluh sedih dengan kata-kata: "Saya memberitahu anda begitu" ...

Oh sungguh patut dibincangkan, ialah alat yang boleh kita miliki untuk mencipta produk perisian yang lebih baik, dan cara ia boleh meningkatkan keselamatan dan menjadikan pembangunan lebih mudah dan lebih dipercayai. Apabila projek menjadi lebih kompleks, risiko baharu timbul, dan hari ini kehidupan orang ramai sangat bergantung kepada perisian sehingga pembangun hanya perlu cuba melakukan kerja mereka dengan lebih baik.

Kubernetes adalah salah satu alat sedemikian. Kerja sedang dijalankan untuk menggabungkan Red Hat OpenShift dengan alatan dan perkhidmatan lain ke dalam satu platform yang akan menjadikan perisian lebih dipercayai, lebih mudah diurus dan lebih selamat untuk pengguna.

Dengan itu, pasukan OpenShift bertanya satu soalan mudah:

Bagaimanakah anda boleh menjadikan bekerja dengan Kubernetes lebih mudah dan senang?

Jawapannya sangat jelas:

  • mengautomasikan aspek penggunaan yang kompleks pada awan atau di luar awan;
  • fokus pada kebolehpercayaan sambil menyembunyikan kerumitan;
  • terus berusaha untuk mengeluarkan kemas kini yang mudah dan selamat;
  • mencapai kebolehkawalan dan kebolehaudit;
  • berusaha untuk pada mulanya memastikan keselamatan yang tinggi, tetapi tidak dengan mengorbankan kebolehgunaan.

Keluaran OpenShift seterusnya harus mengambil kira pengalaman pencipta dan pengalaman pembangun lain yang melaksanakan perisian secara besar-besaran di syarikat terbesar di dunia. Di samping itu, ia mesti mengambil kira semua pengalaman terkumpul ekosistem terbuka yang mendasari dunia moden hari ini. Pada masa yang sama, adalah perlu untuk meninggalkan mentaliti lama pemaju amatur dan beralih kepada falsafah baharu masa depan automatik. Ia perlu merapatkan jurang antara cara lama dan baharu untuk menggunakan perisian, dan memanfaatkan sepenuhnya semua infrastruktur yang tersedia—sama ada ia dihoskan oleh penyedia awan terbesar atau berjalan pada sistem kecil di pinggir.

Bagaimana untuk mencapai keputusan ini?

Di Red Hat, adalah kebiasaan untuk melakukan kerja yang membosankan dan tidak berterima kasih untuk masa yang lama untuk memelihara komuniti yang mapan dan menghalang penutupan projek di mana syarikat itu terlibat. Komuniti sumber terbuka mengandungi sejumlah besar pembangun berbakat yang mencipta perkara yang paling luar biasa - menghiburkan, mendidik, membuka peluang baharu dan hanya cantik, tetapi, sudah tentu, tiada siapa menjangka semua peserta bergerak ke arah yang sama atau mengejar perkara biasa matlamat. Memanfaatkan tenaga ini dan mengubah halanya ke arah yang betul kadangkala diperlukan untuk membangunkan kawasan yang memberi manfaat kepada pengguna kami, tetapi pada masa yang sama kami mesti memantau pembangunan komuniti kami dan belajar daripada mereka.

Pada awal tahun 2018, Red Hat memperoleh projek CoreOS, yang mempunyai pandangan yang sama tentang masa depan - lebih selamat dan boleh dipercayai, dibuat berdasarkan prinsip sumber terbuka. Syarikat telah berusaha untuk mengembangkan lagi idea ini dan melaksanakannya, mempraktikkan falsafah kami - cuba memastikan semua perisian berjalan dengan selamat. Semua kerja ini dibina pada Kubernetes, Linux, awan awam, awan peribadi dan beribu-ribu projek lain yang menyokong ekosistem digital moden kami.

Keluaran baharu OpenShift 4 akan menjadi jelas, automatik dan lebih semula jadi

Platform OpenShift akan berfungsi dengan sistem pengendalian Linux yang terbaik dan paling boleh dipercayai, dengan sokongan perkakasan tanpa logam, virtualisasi yang mudah, pengaturcaraan infrastruktur automatik dan, sudah tentu, bekas (yang pada asasnya hanyalah imej Linux).

Platform ini mesti selamat dari awal, tetapi masih membenarkan pembangun untuk mudah berulang—iaitu, fleksibel dan cukup selamat sambil masih membenarkan pentadbir mengaudit dan mengurusnya dengan mudah.

Ia sepatutnya membenarkan perisian dijalankan "sebagai perkhidmatan" dan tidak membawa kepada pertumbuhan infrastruktur yang tidak terurus untuk pengendali.

Ia akan membolehkan pembangun menumpukan pada mencipta produk sebenar untuk pengguna dan pelanggan. Anda tidak perlu mengharungi hutan tetapan perkakasan dan perisian, dan semua komplikasi yang tidak disengajakan akan menjadi perkara yang telah berlalu.

OpenShift 4: Platform NoOps yang tidak memerlukan penyelenggaraan

В penerbitan ini menerangkan tugas-tugas tersebut yang membantu membentuk visi syarikat untuk OpenShift 4. Matlamat pasukan adalah untuk memudahkan tugas harian mengendalikan dan menyelenggara perisian sebanyak mungkin, untuk menjadikan proses ini mudah dan santai - baik untuk pakar yang terlibat dalam pelaksanaan dan untuk pembangun. Tetapi bagaimana anda boleh mendekati matlamat ini? Bagaimana untuk mencipta platform untuk menjalankan perisian yang memerlukan campur tangan yang minimum? Apakah maksud NoOps dalam konteks ini?

Jika anda cuba abstrak, maka bagi pembangun konsep "tanpa pelayan" atau "NoOps" bermaksud alat dan perkhidmatan yang membolehkan anda menyembunyikan komponen "operasi" atau meminimumkan beban ini untuk pembangun.

  • Bekerja bukan dengan sistem, tetapi dengan antara muka aplikasi (API).
  • Jangan bersusah payah melaksanakan perisian - biarkan pembekal melakukannya untuk anda.
  • Anda tidak sepatutnya membuat rangka kerja yang besar dengan segera - mulakan dengan menulis kepingan kecil yang akan bertindak sebagai "blok binaan", cuba buat kod ini berfungsi dengan data dan acara, dan bukan dengan cakera dan pangkalan data.

Matlamatnya, seperti sebelum ini, adalah untuk mempercepatkan lelaran dalam pembangunan perisian, memberi peluang untuk mencipta produk yang lebih baik, dan supaya pembangun tidak perlu risau tentang sistem yang perisiannya berjalan. Pembangun yang berpengalaman amat menyedari bahawa memfokuskan pada pengguna boleh menukar gambar dengan cepat, jadi anda tidak perlu berusaha terlalu banyak untuk menulis perisian melainkan anda benar-benar pasti ia diperlukan.

Untuk profesional penyelenggaraan dan operasi, perkataan "NoOps" mungkin kedengaran sedikit menakutkan. Tetapi apabila berkomunikasi dengan jurutera lapangan, menjadi jelas bahawa corak dan teknik yang mereka gunakan bertujuan untuk memastikan kebolehpercayaan dan kebolehpercayaan (Site Reliability Engineering, SRE) mempunyai banyak persamaan dengan corak yang diterangkan di atas:

  • Jangan urus sistem - automasi proses pengurusan mereka.
  • Jangan laksana perisian - buat saluran paip untuk menggunakan perisian tersebut.
  • Elakkan menggabungkan semua perkhidmatan anda bersama-sama dan membiarkan kegagalan satu menyebabkan keseluruhan sistem gagal—menyebarkannya ke seluruh infrastruktur anda menggunakan alat automasi dan sambungkannya dengan cara yang boleh dipantau dan dipantau.

SRE tahu bahawa sesuatu boleh berlaku dan mereka perlu menjejaki dan membetulkan masalah itu—supaya mereka mengautomasikan kerja rutin dan menetapkan belanjawan ralat terlebih dahulu supaya mereka bersedia untuk memberi keutamaan dan membuat keputusan apabila masalah timbul .

Kubernetes dalam OpenShift ialah platform yang direka untuk menyelesaikan dua masalah utama: daripada memaksa anda memahami mesin maya atau API pengimbang beban, ia berfungsi dengan abstraksi tertib tinggi - proses dan perkhidmatan penggunaan. Daripada memasang ejen perisian, anda boleh menjalankan bekas, dan bukannya menulis timbunan pemantauan anda sendiri, gunakan alat yang sudah tersedia dalam platform. Jadi, sos rahsia OpenShift 4 sebenarnya bukan rahsia - ia hanya perlu mengambil prinsip SRE dan konsep tanpa pelayan dan membawanya ke kesimpulan logiknya untuk membantu pembangun dan jurutera operasi:

  • Mengautomasikan dan menyeragamkan infrastruktur yang digunakan oleh aplikasi
  • Pautkan proses penempatan dan pembangunan bersama-sama tanpa menyekat pembangun sendiri
  • Memastikan bahawa melancarkan, mengaudit dan menjamin perkhidmatan, ciri, aplikasi atau keseluruhan timbunan ke-XNUMX tidak lebih sukar daripada yang pertama.

Tetapi apakah perbezaan antara platform OpenShift 4 dan pendahulunya dan dari pendekatan "standard" untuk menyelesaikan masalah sedemikian? Apakah yang mendorong skala untuk pasukan pelaksanaan dan operasi? Kerana hakikat bahawa raja dalam keadaan ini adalah kelompok. Jadi,

  • Kami memastikan bahawa tujuan kluster adalah jelas (Awan yang dihormati, saya mengambil kluster ini kerana saya boleh)
  • Mesin dan sistem pengendalian wujud untuk melayani kluster (Yang Mulia)
  • Uruskan keadaan hos daripada kluster, kurangkan pembinaan semula mereka (hanyut).
  • Bagi setiap elemen penting sistem, pengasuh (mekanisme) diperlukan yang akan memantau dan menghapuskan masalah
  • Kegagalan *setiap* aspek atau elemen sistem dan mekanisme pemulihan yang berkaitan adalah bahagian normal dalam kehidupan
  • Keseluruhan infrastruktur mesti dikonfigurasikan melalui API.
  • Gunakan Kubernetes untuk menjalankan Kubernetes. (Ya, ya, itu bukan kesilapan menaip)
  • Kemas kini haruslah mudah dan tidak menyusahkan untuk dipasang. Jika memerlukan lebih daripada satu klik untuk memasang kemas kini, jelas sekali kami melakukan sesuatu yang salah.
  • Memantau dan menyahpepijat mana-mana komponen seharusnya tidak menjadi masalah, dan oleh itu penjejakan dan pelaporan merentas keseluruhan infrastruktur juga harus mudah dan mudah.

Ingin melihat keupayaan platform dalam tindakan?

Versi pratonton OpenShift 4 telah tersedia untuk pembangun. Dengan pemasang yang mudah digunakan, anda boleh menjalankan kluster pada AWS di atas Red Had CoreOS. Untuk menggunakan pratonton, anda hanya memerlukan akaun AWS untuk menyediakan infrastruktur dan satu set akaun untuk mengakses imej pratonton.

  1. Untuk bermula, pergi ke try.openshift.com dan klik "Bermula".
  2. Log masuk ke akaun Red Hat anda (atau buat yang baharu) dan ikut arahan untuk menyediakan kluster pertama anda.

Selepas pemasangan berjaya, lihat tutorial kami Latihan OpenShiftuntuk mendapatkan pemahaman yang lebih mendalam tentang sistem dan konsep yang menjadikan platform OpenShift 4 sebagai cara yang mudah dan mudah untuk menjalankan Kubernetes.

Cuba keluaran OpenShift baharu dan kongsi pendapat anda. Kami komited untuk menjadikan kerja dengan Kumbernetes boleh diakses dan semudah mungkin—masa depan NoOps bermula hari ini.

Dan sekarang perhatian!
Pada persidangan itu DevOpsForum 2019 Pada 20 April, salah seorang pembangun OpenShift, Vadim Rutkovsky, akan mengadakan kelas induk - dia akan memecahkan sepuluh kelompok dan memaksa mereka untuk membetulkannya. Persidangan ini dibayar, tetapi dengan kod promosi #RedHat anda mendapat diskaun 37%.

Kelas induk pada 17:15 - 18:15, dan gerai dibuka sepanjang hari. T-shirt, topi, pelekat - biasa!

Dewan #2
"Di sini keseluruhan sistem perlu diubah: kami membaiki kluster k8 yang rosak bersama mekanik yang diperakui."


Sumber: www.habr.com

Tambah komen