Išleistas Kubernetes 1.18 – sistema, skirta valdyti izoliuotų konteinerių grupę

paskelbta konteinerių orkestravimo platformos išleidimas Kubernetas 1.18, kuri leidžia valdyti atskirų konteinerių grupę kaip visumą ir pateikia konteineriuose veikiančių programų diegimo, priežiūros ir mastelio keitimo mechanizmus. Projektą iš pradžių sukūrė „Google“, bet vėliau jis buvo perkeltas į nepriklausomą svetainę, kurią prižiūri „Linux Foundation“. Platforma išdėstyta kaip universalus bendruomenės sukurtas sprendimas, nesusietas su atskiromis sistemomis ir galintis dirbti su bet kokia programa bet kurioje debesų aplinkoje. Kubernetes kodas parašytas Go ir išplatino licencijuota pagal Apache 2.0.

Teikia infrastruktūros diegimo ir valdymo funkcijas, tokias kaip DNS duomenų bazės priežiūra, apkrovos balansavimas,
konteinerių paskirstymas tarp klasterio mazgų (konteinerių perkėlimas priklausomai nuo apkrovos ir paslaugų poreikių pokyčių), būklės patikrinimai programos lygiu, paskyros valdymas, atnaujinimas ir dinaminis veikiančio klasterio mastelio keitimas, jo nestabdant. Galima dislokuoti konteinerių grupes su atnaujinimo ir atšaukimo operacijomis visai grupei iš karto, taip pat logiškai padalinti klasterį į dalis su išteklių padalijimu. Yra parama dinaminei programų migracijai, kurių duomenims saugoti gali būti naudojamos tiek vietinės, tiek tinklo saugojimo sistemos.

„Kubernetes 1.18“ leidime yra 38 pakeitimai ir patobulinimai, iš kurių 15 buvo perkelti į stabilią būseną, o 11 – į beta būseną. Siūloma 12 naujų alfa būsenos pakeitimų. Rengiant naują versiją, lygiai taip pat buvo stengiamasi tiek patobulinti įvairias funkcijas, tiek stabilizuoti eksperimentines galimybes, tiek papildyti naujovėmis. Pagrindiniai pakeitimai:

  • Kubectl
    • Pridėta Alfa komandos „kubectl debug“ versija, leidžianti supaprastinti derinimą grupėse, paleidžiant trumpalaikius konteinerius su derinimo įrankiais.
    • Paskelbtas stabilus komanda „kubectl diff“, kuri leidžia pamatyti, kas pasikeis klasteryje, jei pritaikysite manifestą.
    • Pašalinta visi komandos „kubectl run“ generatoriai, išskyrus generatorių, skirtą paleisti vieną bloką.
    • Pasikeitė vėliavėlė „--dry-run“, priklausomai nuo jos reikšmės (klientas, serveris ir jokio), bandomasis komandos vykdymas atliekamas kliento arba serverio pusėje.
    • kubectl kodas paryškintas į atskirą saugyklą. Tai leido kubectl atsieti nuo vidinių kubernetes priklausomybių ir palengvino kodo importavimą į trečiųjų šalių projektus.
  • Įėjimas
    • Prasidėjo Keičiant Ingress API grupę į networking.v1beta1.
    • Pridėta nauji laukai:
      • pathType, kuris leidžia nurodyti, kaip bus lyginamas užklausos kelias
      • IngressClassName yra kubernetes.io/ingress.class anotacijos pakaitalas, kuris paskelbtas nebenaudojamas. Šiame lauke nurodomas specialaus objekto InressClass pavadinimas
    • Pridėta IngressClass objektas, nurodantis įėjimo valdiklio pavadinimą, papildomus jo parametrus ir naudojimo pagal nutylėjimą ženklą
  • tarnyba
    • Pridėta lauką AppProtocol, kuriame galite nurodyti, kurį protokolą programa naudoja
    • Išversta beta būsenoje ir pagal numatytuosius nustatymus įgalinta EndpointSlicesAPI, kuri yra funkcionalesnis įprastų galinių taškų pakaitalas.
  • Tinklas
    • Remti IPv6 buvo perkelta į beta būseną.
  • Nuolatiniai diskai. Paskelbta, kad šios funkcijos stabilios:
  • Programos konfigūracija
    • Į ConfigMap ir Secret objektus pridėta naujas laukas „nekintamas“. Lauko reikšmės nustatymas į „true“ neleidžia keisti objekto.
  • Tvarkaraštis
    • Pridėta galimybė kurti papildomus kube planuoklio profilius. Jei anksčiau reikėjo paleisti papildomus atskirus planuoklius nestandartiniams pod paskirstymo algoritmams įgyvendinti, tai dabar galima sukurti papildomus standartinio planuotojo nustatymų rinkinius ir nurodyti jo pavadinimą tame pačiame pod laukelyje „.spec.schedulerName“. Būsena – alfa.
    • Sutepimu pagrįstas iškeldinimas paskelbta stabilia
  • Mastelio keitimas
    • Pridėta galimybė HPA manifeste nurodyti agresyvumo laipsnį keičiant veikiančių ankščių skaičių, tai yra, padidėjus apkrovai, vienu metu paleiskite N kartų daugiau egzempliorių.
  • kubelet
    • Topologijos vadybininkas gavo beta būseną. Ši funkcija įgalina NUMA paskirstymą, kuris leidžia išvengti kelių lizdų sistemų našumo pablogėjimo.
    • Beta būsena gavo PodOverhead funkcija, kuri leidžia RuntimeClass nurodyti papildomą išteklių kiekį, reikalingą pod paleidimui.
    • Išplėstas „HugePages“ palaikymas, alfa būsenoje pridėtas konteinerio lygio izoliavimas ir kelių didžiulių puslapių dydžių palaikymas.
    • Ištrinta metrikos galutinis taškas /metrics/resource/v1alpha1, vietoj to naudojamas /metrics/resource
  • API
    • Pagaliau Pašalinta galimybė naudoti pasenusias API grupės programas/v1beta1 ir plėtinius/v1beta1.
    • Taikyti serverio pusėje atnaujinta į beta2 būseną. Šis patobulinimas perkelia objekto manipuliavimą iš kubectl į API serverį. Patobulinimo autoriai teigia, kad taip bus ištaisyta daug esamų klaidų, kurių dabartinėje situacijoje ištaisyti nepavyks. Jie taip pat pridėjo skyrių „.metadata.managedFields“, kuriame siūlo saugoti objektų pakeitimų istoriją, nurodant, kas, kada ir kas tiksliai pasikeitė.
    • Paskelbta stabili CertificateSigningRequest API.
  • Windows platformos palaikymas.

Šaltinis: opennet.ru

Добавить комментарий