Kubernetes 1.17: ħarsa ġenerali lejn l-innovazzjonijiet ewlenin
Ilbieraħ, 9 ta’ Diċembru, seħħet rilaxx li jmiss ta 'Kubernetes - 1.17. Skont it-tradizzjoni li żviluppat għall-blog tagħna, nitkellmu dwar l-aktar bidliet sinifikanti fil-verżjoni l-ġdida.
L-informazzjoni użata biex jitħejja dan il-materjal hija meħuda mill-avviż uffiċjali, Kubernetes titjib tabelli ta 'traċċar, LOG TAL-BIDLA-1.17 u kwistjonijiet relatati, pull requests, u Kubernetes Enhancement Proposals (KEP). Allura, x'hemm ġdid?...
Rotot konxju tat-topoloġija
Il-komunità Kubernetes ilha tistenna din il-karatteristika għal żmien twil - Rotot tas-servizz konxju mit-topoloġija. Jekk KAP joriġina f'Ottubru 2018, u l-uffiċjal titjib — 2 snin ilu, il-kwistjonijiet tas-soltu (bħal ta 'dan) - u ftit snin aktar anzjani...
L-idea ġenerali hija li tipprovdi l-abbiltà li timplimenta r-rotot "lokali" għal servizzi li joqogħdu f'Kubernetes. "Lokalità" f'dan il-każ tfisser "l-istess livell topoloġiku" (livell ta' topoloġija), li jista' jkun:
nodu identiku għas-servizzi,
l-istess rack tas-server,
l-istess reġjun
l-istess fornitur tas-sħab,
...
Eżempji ta' kif tuża din il-karatteristika:
iffrankar fuq it-traffiku f'installazzjonijiet ta 'sħab b'żoni ta' disponibbiltà multipli (multi-AZ) - ara. illustrazzjoni friska bl-użu tal-eżempju tat-traffiku mill-istess reġjun, iżda AZs differenti fl-AWS;
latenza ta 'prestazzjoni aktar baxxa / throughput aħjar;
servizz sharded li għandu informazzjoni lokali dwar in-nodu f'kull shard;
tqegħid ta 'fluentd (jew analogi) fuq l-istess node ma' l-applikazzjonijiet li zkuk tagħhom huma miġbura;
Għal dettalji dwar kif taħdem il-karatteristika u kif diġà tista' tużaha, aqra Dan l-artikolu minn wieħed mill-awturi.
IPv4/IPv6 appoġġ dual stack
Progress sinifikanti fiss f'karatteristika oħra tan-netwerk: appoġġ simultanju għal żewġ stacks IP, li l-ewwel ġie introdott fi K8s 1.16. B'mod partikolari, ir-rilaxx il-ġdid ġabet il-bidliet li ġejjin:
f'kube-proxy implimentati possibbiltà ta' tħaddim simultanju fiż-żewġ modi (IPv4 u IPv6);
в Pod.Status.PodIPsdeher appoġġ għal API 'l isfel (fl-istess ħin bħal fil /etc/hosts issa jeħtieġu li l-host iżid indirizz IPv6);
appoġġ munzell doppju TIP (Kubernetes IN Docker) u kubeadm;
Inizjattiva għal migrazzjoni tal-plugins tal-volum għal CSI - CSI Migrazzjoni - milħuqa verżjoni beta. Din il-karatteristika hija kritika sabiex jiġu tradotti plugins tal-ħażna eżistenti (fil-siġra) għal interface modern (CSI, barra mis-siġra) inviżibbli għall-utenti finali ta' Kubernetes. L-amministraturi tal-cluster se jkollhom bżonn biss li jippermettu l-Migrazzjoni tas-CSI, u wara r-riżorsi u l-ammonti ta 'xogħol eżistenti eżistenti se jkomplu "jaħdmu biss"... iżda jużaw l-aħħar sewwieqa CSI minflok dawk skaduti inklużi fil-qalba ta' Kubernetes.
Bħalissa, il-migrazzjoni għas-sewwieqa AWS EBS hija lesta fil-verżjoni beta (kubernetes.io/aws-ebs) u GCE PD (kubernetes.io/gce-pd). It-tbassir għal faċilitajiet ta' ħażna oħra huma kif ġej:
Tkellimna dwar kif l-appoġġ tal-ħażna "tradizzjonali" fil-K8s wasal għal CSI fi Dan l-artikolu. U t-tranżizzjoni tal-migrazzjoni tas-CSI għal status beta hija ddedikata għaliha pubblikazzjoni separata fuq il-blog tal-proġett.
Barra minn hekk, funzjonalità sinifikanti oħra fil-kuntest tas-CSI, li toriġina (implimentazzjoni alfa) f'K1.17s 8, laħqet status beta (jiġifieri ppermettiet awtomatikament) fir-rilaxx Kubernetes 1.12 - ħolqien ta' snapshots u l-irkupru minnhom. Fost il-bidliet li saru lil Kubernetes Volume Snapshot fit-triq għar-rilaxx beta:
il-qsim tas-sidecar tal-isnapshotter estern CSI f'żewġ kontrolluri,
sigriet miżjud għat-tħassir (tħassir sigriet) bħala annotazzjoni għall-kontenut ta' snapshot tal-volum,
finalizzatur ġdid (finalizzatur) biex jipprevjeni li l-oġġett API snapshot jitħassar jekk ikun fadal konnessjonijiet.
Fiż-żmien tar-rilaxx 1.17, il-karatteristika hija appoġġjata minn tliet sewwieqa CSI: Driver CSI Disk Persistent GCE, Driver CSI Portworx u Driver CSI NetApp Trident. Aktar dettalji dwar l-implimentazzjoni u l-użu tiegħu jistgħu jinstabu fi din il-pubblikazzjoni fuq il-blog.
Tikketti tal-Fornitur tal-Cloud
Tikketti li awtomatikament assenjati għal nodi u volumi maħluqa skont il-fornitur tal-cloud użat, ilhom disponibbli f'Kubernetes bħala verżjoni beta għal żmien twil ħafna - mir-rilaxx ta 'K8s 1.2 (April 2016!). Minħabba l-użu mifrux tagħhom għal tant żmien, l-iżviluppaturi iddeċieda, li wasal iż-żmien li tiddikjara l-karatteristika stabbli (GA).
Għalhekk, kollha ngħataw isem ġdid kif xieraq (skond it-topoloġija):
... iżda għadhom disponibbli taħt l-ismijiet qodma tagħhom (għal kompatibilità b'lura). Madankollu, l-amministraturi kollha huma rakkomandati li jaqilbu għat-tikketti attwali. Dokumentazzjoni Relatata K8s ġie aġġornat.
Motivazzjoni għall-implimentazzjoni ta’ din il-karatteristika (skond KAP) hija:
Filwaqt li Kubernetes jista 'jiġi skjerat manwalment, l-istandard de facto (jekk mhux de jure) għal din l-operazzjoni huwa li tuża kubeadm. Għodod ta 'ġestjoni tas-sistemi popolari bħal Terraform jiddependu fuq kubeadm għall-iskjerament ta' Kubernetes. It-titjib ippjanat għall-API tal-Cluster jinkludi pakkett komponibbli għall-bootstrapping ta' Kubernetes b'kubeadm u cloud-init.
Mingħajr output strutturat, anke l-aktar bidliet innokwa mal-ewwel daqqa t'għajn jistgħu jkissru Terraform, Cluster API u softwer ieħor li juża r-riżultati ta 'kubeadm.
Il-pjanijiet immedjati tagħna jinkludu appoġġ (fil-forma ta’ output strutturat) għall-kmandi kubeadm li ġejjin:
alpha certs
config images list
init
token create
token list
upgrade plan
version
Illustrazzjoni ta' rispons JSON għal kmand kubeadm init -o json:
B'mod ġenerali, ir-rilaxx ta 'Kubernetes 1.17 sar taħt il-motto "Stabbiltà" Dan kien iffaċilitat mill-fatt li ħafna karatteristiċi fiha (in-numru totali tagħhom huwa 14) irċeviet status GA. Fosthom:
Watch Bookmarks - tip ġdid ta 'avvenimenti li għandhom tikketta li l-oġġetti kollha huma sa ċertu verżjoni (resourceVersion) diġà ġew ipproċessati bl-għassa;
"protezzjoni tal-finalizzatur" (Protezzjoni tal-Finalizzatur) għal load balancers (iċċekkja r-riżorsi tas-Servizz korrispondenti qabel ma tħassar ir-riżorsi LoadBalancer);
ottimizzazzjoni kube-apiserver fil-prestazzjoni meta taħdem ma 'arloġġi multipli monitoraġġ ta' settijiet identiċi ta 'oġġetti - miksub billi tiġi evitata serialization ripetut ta' l-istess oġġetti għal kull watcher.
Bidliet oħra
Il-lista sħiħa ta 'innovazzjonijiet f'Kubernetes 1.17, ovvjament, mhix limitata għal dawk elenkati hawn fuq. Hawn huma xi oħrajn (u għal lista aktar kompleta, ara LOG TAL-BIDLA):
bidla simili ġara EndpointSlice API (ukoll minn K8s 1.16), madankollu għalissa din is-soluzzjoni biex ittejjeb il-prestazzjoni/iskalabbiltà tal-API Endpoint mhix attivata b'mod awtomatiku;