Rilis Kubernetes 1.18, sebuah sistem untuk mengelola sekelompok container yang terisolasi

diterbitkan rilis platform orkestrasi kontainer Kubernet 1.18, yang memungkinkan Anda mengelola sekelompok kontainer terisolasi secara keseluruhan dan menyediakan mekanisme untuk menerapkan, memelihara, dan menskalakan aplikasi yang berjalan dalam kontainer. Proyek ini awalnya dibuat oleh Google, tetapi kemudian ditransfer ke situs independen yang diawasi oleh Linux Foundation. Platform ini diposisikan sebagai solusi universal yang dikembangkan oleh komunitas, tidak terikat pada sistem individual dan mampu bekerja dengan aplikasi apa pun di lingkungan cloud apa pun. Kode Kubernetes ditulis dalam Go dan didistribusikan oleh berlisensi di bawah Apache 2.0.

Menyediakan fungsi untuk menyebarkan dan mengelola infrastruktur, seperti pemeliharaan basis data DNS, penyeimbangan beban,
distribusi kontainer di antara node cluster (migrasi kontainer tergantung pada perubahan beban dan kebutuhan layanan), pemeriksaan kesehatan di tingkat aplikasi, manajemen akun, pembaruan dan penskalaan dinamis dari cluster yang sedang berjalan, tanpa menghentikannya. Dimungkinkan untuk menyebarkan grup kontainer dengan memperbarui dan membatalkan operasi untuk seluruh grup sekaligus, serta pembagian logis cluster menjadi beberapa bagian dengan pembagian sumber daya. Terdapat dukungan untuk migrasi aplikasi yang dinamis, untuk penyimpanan data yang dapat menggunakan sistem penyimpanan lokal dan penyimpanan jaringan.

Rilis Kubernetes 1.18 mencakup 38 perubahan dan peningkatan, 15 di antaranya telah dipindahkan ke status stabil dan 11 ke status beta. 12 perubahan baru diusulkan dalam status alfa. Saat mempersiapkan versi baru, upaya yang sama ditujukan untuk menyempurnakan berbagai fungsi dan menstabilkan kemampuan eksperimental, serta menambahkan pengembangan baru. Perubahan utama:

  • kubectl
    • Ditambahkan Versi alfa dari perintah "kubectl debug", yang memungkinkan Anda menyederhanakan proses debug di pod dengan meluncurkan container sementara dengan alat debugging.
    • Dinyatakan stabil perintah “kubectl diff”, yang memungkinkan Anda melihat apa yang akan berubah di cluster jika Anda menerapkan manifes.
    • DIHAPUS semua generator dari perintah "kubectl run", kecuali generator untuk menjalankan satu pod.
    • Berubah tandai “--dry-run”, tergantung pada nilainya (klien, server, dan tidak ada), eksekusi percobaan perintah dilakukan di sisi klien atau server.
    • kode kubectl disorot ke repositori terpisah. Hal ini memungkinkan kubectl untuk dipisahkan dari dependensi internal kubernetes dan membuatnya lebih mudah untuk mengimpor kode ke proyek pihak ketiga.
  • Jalan masuk
    • Dimulai mengubah grup API untuk Ingress ke networking.v1beta1.
    • Ditambahkan bidang baru:
      • pathType, yang memungkinkan Anda menentukan bagaimana jalur dalam permintaan akan dibandingkan
      • IngressClassName merupakan pengganti anotasi kubernetes.io/ingress.class, yang dinyatakan tidak digunakan lagi. Bidang ini menentukan nama objek khusus InressClass
    • Ditambahkan objek IngressClass, yang menunjukkan nama pengontrol ingress, parameter tambahannya, dan tanda penggunaannya secara default
  • Pelayanan
    • Ditambahkan bidang AppProtocol, di mana Anda dapat menentukan protokol mana yang digunakan aplikasi
    • Diterjemahkan dalam status beta dan diaktifkan secara default EndpointSlicesAPI, yang merupakan pengganti Endpoint reguler yang lebih fungsional.
  • Сеть
    • Dukungan IPv6 telah dipindahkan ke status beta.
  • Disk permanen. Fungsi berikut telah dinyatakan stabil:
  • Konfigurasi aplikasi
    • Ke objek ConfigMap dan Rahasia ditambahkan bidang baru "tidak dapat diubah". Menetapkan nilai bidang ke true mencegah modifikasi objek.
  • Penjadwal
    • Ditambahkan kemampuan untuk membuat profil tambahan untuk kube-scheduler. Jika sebelumnya penjadwal terpisah tambahan perlu dijalankan untuk mengimplementasikan algoritme distribusi pod non-standar, kini dimungkinkan untuk membuat kumpulan pengaturan tambahan untuk penjadwal standar dan menentukan namanya di kolom pod yang sama “.spec.schedulerName”. Status - alfa.
    • Penggusuran Berbasis Noda dinyatakan stabil
  • penskalaan
    • Ditambahkan kemampuan untuk menentukan dalam HPA memanifestasikan tingkat agresivitas ketika mengubah jumlah pod yang berjalan, yaitu, ketika beban meningkat, meluncurkan N kali lebih banyak instance sekaligus.
  • kubelet
    • Manajer Topologi menerima status beta. Fitur ini memungkinkan alokasi NUMA, yang menghindari penurunan kinerja pada sistem multi-soket.
    • Status beta diterima Fungsi PodOverhead, yang memungkinkan Anda menentukan di RuntimeClass jumlah sumber daya tambahan yang diperlukan untuk menjalankan pod.
    • Diperluas dukungan untuk HugePages, dalam status alfa menambahkan isolasi tingkat kontainer dan dukungan untuk beberapa ukuran halaman besar.
    • Dihapus titik akhir untuk metrik /metrics/resource/v1alpha1, /metrics/resource digunakan sebagai gantinya
  • API
    • Akhirnya Menghapus kemampuan untuk menggunakan grup API apps/v1beta1 dan extensions/v1beta1 yang sudah ketinggalan zaman.
    • Berlaku Sisi Server ditingkatkan ke status beta2. Peningkatan ini memindahkan manipulasi objek dari kubectl ke server API. Penulis perbaikan mengklaim bahwa ini akan memperbaiki banyak kesalahan yang ada yang tidak dapat diperbaiki dalam situasi saat ini. Mereka juga menambahkan bagian “.metadata.managedFields”, di mana mereka mengusulkan untuk menyimpan riwayat perubahan objek, menunjukkan siapa, kapan dan apa yang sebenarnya berubah.
    • Diumumkan API CertificateSigningRequest yang stabil.
  • Dukungan platform Windows.

Sumber: opennet.ru

Tambah komentar