{"id":30272,"date":"2019-10-31T21:34:36","date_gmt":"2019-10-31T18:34:36","guid":{"rendered":"https:\/\/prohoster.info\/blog\/kubernetes-1-14-obzor-osnovnyh-novshestv\/"},"modified":"2019-10-31T21:34:36","modified_gmt":"2019-10-31T18:34:36","slug":"kubernetes-1-14-obzor-osnovnyh-novshestv","status":"publish","type":"post","link":"https:\/\/prohoster.info\/et\/blog\/kubernetes-1-14-obzor-osnovnyh-novshestv","title":{"rendered":"Kubernetes 1.14: \u00fclevaade peamistest uuendustest","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><img decoding=\"async\" alt=\"Kubernetes 1.14: \u00fclevaade peamistest uuendustest\" src=\"\/wp-content\/uploads\/2019\/03\/8fb5be29668f55ec42d31eb47200b639.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nSellel \u00f6\u00f6l <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/kubernetes\/sig-release\/tree\/master\/releases\/release-1.14#timeline\">toimub<\/a><\/noindex> j\u00e4rgmine Kubernetes'i v\u00e4ljaanne \u2014 <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/kubernetes\/sig-release\/tree\/master\/releases\/release-1.14\">1.14<\/a><\/noindex>. Nagu meie blogi tavaks on, r\u00e4\u00e4gime uusversiooni peamistest muudatustest selles suurep\u00e4rases avatud l\u00e4htekoodiga tootes.<\/p>\n<p>Selle materjali koostamiseks kasutatud teave on saadud <noindex><a rel=\"nofollow\" href=\"https:\/\/docs.google.com\/spreadsheets\/u\/1\/d\/116X6E-lmDJG5UZPlqDAFw8hN9vS6SNY4qRNZ9fKtsMU\/edit#gid=0\">Kubernetes'i t\u00e4iustuste j\u00e4lgimise tabelist<\/a><\/noindex>, <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/kubernetes\/kubernetes\/blob\/release-1.14\/CHANGELOG-1.14.md\">CHANGELOG-1.14<\/a><\/noindex> ja vastavatest probleemidest, t\u00f5mbenumbrist, Kubernetes'i t\u00e4iustuste ettepanekutest (KEP).<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<p>Alustame olulise sissejuhatusega SIG cluster-lifecycle'ilt: <b>d\u00fcnaamilised t\u00f5rkeotsimise klastrid<\/b> Kuberneteses (v\u00f5i \u00f5igemini, self-hosted HA paigutustes) saab n\u00fc\u00fcd <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/kubernetes\/enhancements\/issues\/357\">luua<\/a><\/noindex> tavap\u00e4raste (\u00fche s\u00f5lme klastrite kontekstis) k\u00e4skudega <code>kubeadm<\/code> (<code>\u2014 algne ettevalmistus enne juurutamist, siin v\u00f5ib olla k\u00f5ike: s\u00f5ltuvuste allalaadimist, saladuste lahtipakkimist ja muud.<\/code> ja <code>join<\/code>). \u00dches\u00f5naga, selleks:<\/p>\n<ul>\n<li> kasutatud klastri sertifikaadid kantakse \u00fcle saladustesse;<\/li>\n<li> klastri etcd kasutamiseks K8s-klastris (st v\u00e4lisest s\u00f5ltuvusest vabanemiseks) on kaasatud <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/coreos\/etcd-operator\">etcd-operator<\/a><\/noindex>;<\/li>\n<li> dokumenteeritakse soovitatud seadistused v\u00e4liseks koormuse tasakaalustajaks, mis tagab t\u00f5rkekindla konfiguratsiooni (edasi on plaanis vabaneda ka neist s\u00f5ltuvustest, kuid mitte praegu).<\/li>\n<\/ul>\n<p>\n<img decoding=\"async\" alt=\"Kubernetes 1.14: \u00fclevaade peamistest uuendustest\" src=\"\/wp-content\/uploads\/2019\/03\/0e82b7e8db1ad117dc87f68fa4669431.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<i>Kubeadm'iga loodud HA-klastri arhitektuur<\/i><\/p>\n<p>Rakenduse \u00fcksikasjadega saab tutvuda <noindex><a rel=\"nofollow\" href=\"https:\/\/docs.google.com\/document\/d\/1P3oUJ_kdaRSTlGONujadGBpYegjn4RjBNZLHZ4zU7lI\/edit#\">disaini ettepanekus<\/a><\/noindex>. See funktsioon oli t\u00f5eliselt oodatud: alfa-versiooni oodati juba K8s 1.9, kuid see ilmus alles n\u00fc\u00fcd.<\/p>\n<h2>API<\/h2>\n<p>\nMeeskond <code>apply<\/code> ja \u00fcldiselt <b>deklaratiivne haldamine objektide<\/b> <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/kubernetes\/enhancements\/issues\/555\">v\u00e4ljat\u00f5stetud<\/a><\/noindex> API-s <code>kubectl<\/code> apiserverisse. Arendajad seletavad oma otsust l\u00fchidalt, et <code>kubectl apply<\/code> \u2014 p\u00f5hiosa Kubernetes'i konfiguratsioonidega t\u00f6\u00f6tamisest, kuid siiski \u00abt\u00e4is vigu ja keeruline parandamiseks\u00bb, mist\u00f5ttu tuleb see funktsionaalsus viia normi ja \u00fcle kanda juhtimiskihti. Lihtsad ja ilmne probleemide n\u00e4ited:<\/p>\n<p><img decoding=\"async\" alt=\"Kubernetes 1.14: \u00fclevaade peamistest uuendustest\" src=\"\/wp-content\/uploads\/2019\/03\/379b0d830491bbb0e7ac3c3ccfff71c4.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nT\u00e4psemad rakenduse \u00fcksikasjad \u2014 <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/kubernetes\/enhancements\/blob\/master\/keps\/sig-api-machinery\/0006-apply.md\">KEP-is<\/a><\/noindex>. Aktuaalne olek \u2014 alfa-versioon (edasi liikumine beeta on planeeritud j\u00e4rgmise Kubernetes'i v\u00e4ljaande jaoks).<\/p>\n<p>Alfa-versioonis sai k\u00e4tte <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/kubernetes\/enhancements\/issues\/692\">v\u00f5imaluse<\/a><\/noindex> kasutada OpenAPI v3 skeemi <b>CustomResources'i OpenAPI-dokumentatsiooni loomisel ja avaldamisel<\/b> (CR), mida kasutatakse K8s'i kasutaja m\u00e4\u00e4ratud ressursside valideerimiseks (CustomResourceDefinition, CRD). CRD OpenAPI avaldamine v\u00f5imaldab klientidel (n\u00e4iteks <code>kubectl<\/code>) teha valideerimist oma poolse (kubectl create'i l\u00f5petamisel <code>) ja v\u00e4lja anda skeemi dokumentatsiooni (<\/code> ja <code>kubectl apply<\/code>kubectl selgitada<code>)<\/code>). \u00dcksikasjad \u2014 <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/kubernetes\/enhancements\/blob\/master\/keps\/sig-api-machinery\/00xx-publish-crd-openapi.md\">KEP-is<\/a><\/noindex>.<\/p>\n<p>Varasemad logid <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/kubernetes\/kubernetes\/pull\/74837\">on n\u00fc\u00fcd avatud<\/a><\/noindex> lipuga <code>O_APPEND<\/code> (mitte <code>O_TRUNC<\/code>) logide kadumise v\u00e4ltimiseks teatud olukordades ning mugavuse huvides logide k\u00e4rpimise v\u00e4listingimustes t\u00f6\u00f6riistade abil.<\/p>\n<p>Samuti Kubernetes API kontekstis v\u00f5ib m\u00e4rkida, et <code>PodSandbox<\/code> ja <code>PodSandboxStatus<\/code> <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/kubernetes\/kubernetes\/pull\/73833\">on lisatud<\/a><\/noindex> v\u00e4lja <code>runtime_handler<\/code> info arvestamiseks <code>RuntimeClass<\/code> pod&#8217;is (lisainfot leiate selle kohta tekstist, mis k\u00e4sitleb <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/flant\/blog\/424331\/\">v\u00e4ljaandest, kus see klass ilmus alfa-versioonina), samuti Admissions Webhooks<\/a><\/noindex>v\u00f5imaluse m\u00e4\u00e4rata, millised versioonid <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/kubernetes\/kubernetes\/pull\/74998\">rakendatud<\/a><\/noindex> AdmissionReview <code>nad toetavad. L\u00f5puks, Admissions Webhookide reeglites<\/code> on n\u00fc\u00fcd v\u00f5imalik piirata <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/kubernetes\/kubernetes\/pull\/74477\">rakenduste ulatust nimedega ja klastri piire.<\/a><\/noindex> nii nende kasutusm\u00f5\u00f5tmete kui ka klastriraamide kohta.<\/p>\n<h2>, mis olid beetaversioonis alates<\/h2>\n<p>\n<noindex><a rel=\"nofollow\" href=\"https:\/\/kubernetes.io\/docs\/concepts\/storage\/volumes\/#local\"><code><b>P\u00fcsivad Kohalikud Mahutid<\/b><\/code><\/a><\/noindex>K8s 1.10 <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/flant\/blog\/353114\/\">on kuulutatud<\/a><\/noindex>, <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/kubernetes\/kubernetes\/pull\/74769\">stabiilseteks (GA): see funktsioon on n\u00fc\u00fcd alati sisse l\u00fclitatud ja eemaldatakse Kubernetes 1.17.<\/a><\/noindex> keskkonnamuutujate kasutamisega, mida tuntakse kui<\/p>\n<p><noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/kubernetes\/enhancements\/issues\/559\">V\u00f5imalus<\/a><\/noindex> Downward API <noindex><a rel=\"nofollow\" href=\"https:\/\/kubernetes.io\/docs\/tasks\/inject-data-application\/downward-api-volume-expose-pod-information\/#capabilities-of-the-downward-api\">(nt podi nime jaoks) kaustade nimede jaoks, mis on mountitud kui<\/a><\/noindex> (n\u00e4iteks pod&#8217;i nime) kataloogide nimede jaoks, mis on monteeritud nagu <noindex><a rel=\"nofollow\" href=\"https:\/\/kubernetes.io\/docs\/concepts\/storage\/volumes\/#using-subpath\"><code>, said edasiarendust \u2014 uue v\u00e4lja<\/code><\/a><\/noindex>subPathExpr <code>, mille abil m\u00e4\u00e4ratakse n\u00fc\u00fcd sobiv kausta nimi. See funktsioon ilmus algselt Kubernetes 1.11, kuid j\u00e4i ka 1.14 alfa-versiooniks.<\/code>Nagu ka eelmises Kubernetes v\u00e4ljaandes, on aktiivselt arenevale CSI (Container Storage Interface) esitatud palju olulisi muudatusi:<\/p>\n<p>CSI<\/p>\n<h3>on n\u00fc\u00fcd saadaval (alfa-versioonis)<\/h3>\n<p>\nCSI-mahuttonide suuruse muutmine <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/kubernetes\/enhancements\/issues\/556\">toetamine<\/a><\/noindex> <b>. Selle kasutamiseks peab olema lubatud funktsiooniga<\/b>ExpandCSIVolumes <code>, samuti peab vastav CSI-juht tooma selle toimingu toe.<\/code>Veel \u00fcks alfa-versiooni funktsioon CSI jaoks \u2014<\/p>\n<p>viidata otse (st ilma PV\/PVC kasutamata) CSI-mahuttonidele podide spetsifikatsioonis. See <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/kubernetes\/enhancements\/issues\/596\">v\u00f5imaluse<\/a><\/noindex> otseselt viidatud (st PV\/PVC kasutamata) CSI-mahtudele pod&#8217;ide spetsifikatsiooni raames. See <b>kohalikesse ajutistesse mahtudesse.<\/b>Kasutamiseks ( <noindex><a rel=\"nofollow\" href=\"https:\/\/kubernetes-csi.github.io\/docs\/ephemeral-local-volumes.html\">n\u00e4idis dokumentatsioonist<\/a><\/noindex>) peab olema lubatud<noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/vladimirvivien\/kubernetes.github.io\/blob\/b78107abfdb2b5877973b84062d93cdf98ef1b9c\/content\/en\/docs\/concepts\/storage\/volumes.md#csi-ephemeral-volumes\">CSIInlineVolume<\/a><\/noindex>funktsioon. <code>Kubernetes \u201esisemustes\u201c, mis on seotud CSI-ga, on edusamme, mis tasapisi ei paista l\u00f5ppkasutajatele (s\u00fcsteemiadministraatoritele)... Praegu peavad arendajad toetama iga salvestusploki kahte versiooni: \u00fcks \u2014 \u201evana stiiliga\u201c K8si koodibaasis (in-tree), ja teine \u2014 uue CSI raames.<\/code> (lisainfot leiate n\u00e4iteks)<\/p>\n<p>Kubernetes'i CSI ga seotud \"sisek\u00fcljed\" on teinud edusamme, mis ei pruugi l\u00f5ppkasutajatele (s\u00fcsteemiadministraatoritele) kohe silma paista... Praeguseks peavad arendajad toetama iga salvestusplugina kahte versiooni: \u00fche \u2014 \"vana,\" K8s'i koodibaasis (in-tree) ja teise \u2014 uue CSI raames. <i>(rohkem selle kohta loe n\u00e4iteks siin, <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/flant\/blog\/424211\/\">siin<\/a><\/noindex>)<\/i>. See, et tekitab arusaadavaid ebamugavusi, mida tuleb k\u00f5rvaldatud, kui CSI stabiliseerub. Sisemiste pluginade deklareerimine vananenuks ei ole lihtsalt v\u00f5imalik. <noindex><a rel=\"nofollow\" href=\"https:\/\/kubernetes.io\/docs\/reference\/using-api\/deprecation-policy\/#deprecating-parts-of-the-api\">vastava Kubernetes'i poliitika t\u00f5ttu.<\/a><\/noindex>.<\/p>\n<p>K\u00f5ik see viis selleni, et alfa-versioonid on saavutanud <b><noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/kubernetes\/enhancements\/issues\/625\">migratsiooni protsess<\/a><\/noindex> sisemiste pluginade koodi<\/b>, mis on rakendatud kui in-tree, CSI pluginad, mille t\u00f5ttu arendajate mured v\u00e4henevad \u00fche versiooni oma pluginade toetamisega, samas kui \u00fchilduvus vanade API-dega s\u00e4ilib ja need saab deklareerida vananenuks tavap\u00e4rase stsenaariumi kohaselt. Oodatakse, et j\u00e4rgmise Kubernetes'i versiooni (1.15) puhul toimub k\u00f5ikide pilveteenuse pakkujate pluginade migratsioon, rakendamine saab beetaversiooni staatuse ja see aktiveeritakse K8si installides vaikimisi. Lisainfot leiate <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/kubernetes\/community\/blob\/master\/contributors\/design-proposals\/storage\/csi-migration.md\">disaini ettepanekus<\/a><\/noindex>. Selle migratsiooni tulemuseks on ka <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/kubernetes\/kubernetes\/pull\/74544\">keeldumine<\/a><\/noindex> piirangutest, mis on m\u00e4\u00e4ratletud konkreetsete pilveteenuse pakkujate (AWS, Azure, GCE, Cinder) poolt.<\/p>\n<p>Lisaks sellele on toetatud blokiseadmeid CSI-ga (<code>CSIBlockVolume<\/code>) <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/kubernetes\/kubernetes\/pull\/74909\">viidud<\/a><\/noindex> beetaversiooniks.<\/p>\n<h2>S\u00f5lmed \/ Kubelet<\/h2>\n<p>\nAlfa-versioon uue endpoint'i kohta <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/kubernetes\/enhancements\/issues\/727\">Kubeletis, mis on m\u00f5eldud<\/a><\/noindex> peamiste ressursside statistikate edastamiseks. <b>. \u00dcldiselt, kui varem Kubelet sai konteinerite kasutusstatistikat cAdvisor'ist, siis n\u00fc\u00fcd tulevad andmed konteineri t\u00e4itmiselt CRI (Container Runtime Interface) kaudu, kuid s\u00e4ilib ka \u00fchilduvus vanade Docker'i versioonidega. Varem Kubeleti kogutud statistika anti v\u00e4lja l\u00e4bi REST API, n\u00fc\u00fcd kasutatakse selleks endpointi, mis asub aadressil<\/b>. Pikemaajaline strateegia arendajate jaoks <code>\/metrics\/resource\/v1alpha1<\/code>on v\u00e4hendada Kubelet'i pakutavate statistikate hulka. <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/kubernetes\/kubernetes\/issues\/68522\">on<\/a><\/noindex> selle eesm\u00e4rk. <i>Muide, neid statistikaid <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/kubernetes\/enhancements\/pull\/726\">hakati n\u00fc\u00fcd nimetama<\/a><\/noindex> mitte \"core metrics\", vaid \"resource metrics\", ja need kirjeldavad kui \"first-class resources, such as cpu and memory\".<\/i><\/p>\n<p>V\u00e4ga huvitav n\u00fcanss: hoolimata gRPC endpoint'i selgest j\u00f5udlusest v\u00f5rreldes erinevate Prometheuse vormingu kasutusjuhtumitega, <i>(\u00fche benchmark&#8217;i tulemus, vt allpool)<\/i>, eelistasid autorid tekstivormingut Prometheus, kuna see s\u00fcsteem on j\u00e4lgimise kogukonnas selgelt juhtpositsioonil.<\/p>\n<blockquote><p><i>gRPC ei \u00fchildu peamiste j\u00e4lgimisprotsessidega. Endpoint on kasulik ainult meetrite edastamiseks Metrics Serverisse v\u00f5i j\u00e4lgimiskomponentidesse, mis integreeruvad otse selle sisse. Caching'i kasutamisel Metrics Serveris on Prometheuse tekstivormingu j\u00f5udlus <b>piisavalt hea<\/b> meie jaoks, et eelistada Prometheust gRPC-le, arvestades Prometheuse laialdast kasutust kogukonnas. Kui OpenMetricsi formaat muutub stabiilsemaks, saame saavutada gRPC j\u00f5udluse proto-p\u00f5hise formaadiga.<\/i><\/p><\/blockquote>\n<p>\n<img decoding=\"async\" alt=\"Kubernetes 1.14: \u00fclevaade peamistest uuendustest\" src=\"\/wp-content\/uploads\/2019\/03\/ad7e45b61fc4676a2df3c2d33d5688b5.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<i>\u00dcks v\u00f5rdlevate tulemusm\u00f5\u00f5tude test, mis k\u00e4sitleb gRPC ja Prometheuse formaatide kasutamist uues Kubeleti l\u00f5pp-punktis meetmete jaoks. Rohkem graafikuid ja muid \u00fcksikasju leiate <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/kubernetes\/enhancements\/blob\/master\/keps\/sig-node\/kubelet-resource-metrics-endpoint.md\">KEP-is<\/a><\/noindex>.<\/i><\/p>\n<p>Muude muudatuste seas:<\/p>\n<ul>\n<li> Kubelet proovib n\u00fc\u00fcd (\u00fche korra) <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/kubernetes\/kubernetes\/pull\/73802\">peatada<\/a><\/noindex> tunmatutes (unknown) olekutes konteinerid enne taask\u00e4ivitamise ja kustutamise operatsioone.<\/li>\n<li> Kasutades <noindex><a rel=\"nofollow\" href=\"https:\/\/kubernetes.io\/docs\/concepts\/workloads\/pods\/podpreset\/\"><code>PodPresets<\/code><\/a><\/noindex> lisatakse n\u00fc\u00fcd init-konteinerile <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/kubernetes\/kubernetes\/pull\/71479\">sama teave, mis tavalisele konteinerile.<\/a><\/noindex> Kubelet<\/li>\n<li> on hakanud kasutama <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/kubernetes\/kubernetes\/pull\/73659\">usageNanoCores<\/a><\/noindex> <code>CRI statistikapakkujast, ja Windowsis node'ide ning konteinerite jaoks<\/code> v\u00f5rgustatistika. <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/kubernetes\/kubernetes\/pull\/74788\">lisatud<\/a><\/noindex> Operatsioonis\u00fcsteemi ja arhitektuuri teave salvestatakse n\u00fc\u00fcd siltidesse<\/li>\n<li> kubernetes.io\/os <code>kubernetes.io\/arch<\/code> ja <code>Node'i objektidesse (\u00fcmber t\u00f5lgitud beetast GA-ks).<\/code> V\u00f5imalus m\u00e4\u00e4rata konkreetne kasutajagrupp konteineritele pod'is (<\/li>\n<li> V\u00f5imalus m\u00e4\u00e4rata konkreetne s\u00fcsteemne kasutajate r\u00fchm konteinerite jaoks pod&#8217;is (<code>, on saanud k\u00e4ttesaadavaks<\/code>K8s 1.11 <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/flant\/blog\/415349\/\">on edenenud<\/a><\/noindex>) <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/kubernetes\/kubernetes\/pull\/73007\">beetaversiooniks (sisse l\u00fclitatud vaikimisi).<\/a><\/noindex> du ja find, mida kasutatakse cAdvisoris,<\/li>\n<li> asendatakse <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/kubernetes\/kubernetes\/pull\/74675\">Go-implementatsioonidega.<\/a><\/noindex> CLI<\/li>\n<\/ul>\n<p><\/p>\n<h2>cli-runtime'is ja kubectl'is<\/h2>\n<p>\nlipp -k integreerimiseks <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/kubernetes\/kubernetes\/pull\/74140\">on lisatud<\/a><\/noindex> (muide, selle arendamine k\u00e4ib n\u00fc\u00fcd eraldi repos), st spetsiaalsetest kustomizatsiooni kataloogidest lisainfos YAML-failide t\u00f6\u00f6tlemiseks (kasutamise \u00fcksikasjad leiate <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/kubernetes-sigs\/kustomize\"><b>kustomize<\/b><\/a><\/noindex> N\u00e4ide lihtsast kustomization faili kasutamisest <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/kubernetes\/enhancements\/blob\/master\/keps\/sig-cli\/kustomize-file-processing-integration.md\">KEP-is<\/a><\/noindex>):<\/p>\n<p><img decoding=\"async\" alt=\"Kubernetes 1.14: \u00fclevaade peamistest uuendustest\" src=\"\/wp-content\/uploads\/2019\/03\/e38550cfb642d81237aad4d87b9b3386.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<i>(v\u00f5imalik, et ka keerukam kustomize rakendamine overlays raames. <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/kubernetes-sigs\/kustomize\/blob\/master\/docs\/glossary.md#kustomization\">Lisaks:<\/a><\/noindex> uus k\u00e4sk <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/kubernetes-sigs\/kustomize\/blob\/master\/docs\/glossary.md#overlay\">kubectl create cronjob<\/a><\/noindex>)<\/i><\/p>\n<p>, mille nimi r\u00e4\u00e4gib enda eest.<\/p>\n<ul>\n<li> <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/kubernetes\/kubernetes\/pull\/71651\">Lisatud<\/a><\/noindex> kubectl logs <code>on n\u00fc\u00fcd v\u00f5imalik<\/code>\u00fchendada<\/li>\n<li> Uues <code>lipud<\/code> --follow <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/kubernetes\/kubernetes\/pull\/67573\">logide edastamiseks) ja<\/a><\/noindex> -l <code>-f<\/code> (<code>--selector<\/code> label query jaoks). <code>\u00f5pivad<\/code> (<code>kopeerima faile, mis valitakse wild card'i abil.<\/code> K\u00e4sk<\/li>\n<li> kubectl <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/kubernetes\/kubernetes\/pull\/72641\">kubectl wait<\/a><\/noindex> lipp<\/li>\n<li> --all <code>k\u00f5igi m\u00e4\u00e4ratud ressursit\u00fc\u00fcbiga ressursside valimiseks nimedesse.<\/code> <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/kubernetes\/kubernetes\/pull\/70599\">lisanud<\/a><\/noindex> Teised <code>Stabiilne (GA) staatus saadud j\u00e4rgmised v\u00f5imalused:<\/code> ReadinessGate<\/li>\n<\/ul>\n<p><\/p>\n<h2>Teised<\/h2>\n<p>\nStabiilne (GA) staatus on saanud j\u00e4rgmised v\u00f5imalused:<\/p>\n<ul>\n<li> <noindex><a rel=\"nofollow\" href=\"https:\/\/kubernetes.io\/docs\/concepts\/workloads\/pods\/pod-lifecycle\/#pod-readiness-gate\"><code>ReadinessGate<\/code><\/a><\/noindex>, mida kasutatakse pod&#8217;i spetsifikatsioonis lisatingimuste m\u00e4\u00e4ratlemiseks, mis arvestatakse pod&#8217;i valmisolekuga;<\/li>\n<li> Suurte lehtede tugi (funktsioonigate nimega <noindex><a rel=\"nofollow\" href=\"https:\/\/kubernetes.io\/docs\/tasks\/manage-hugepages\/scheduling-hugepages\/\"><code>HugePages<\/code><\/a><\/noindex>);<\/li>\n<li> <noindex><a rel=\"nofollow\" href=\"https:\/\/kubernetes.io\/docs\/concepts\/services-networking\/dns-pod-service\/#pod-s-dns-config\">CustomPodDNS<\/a><\/noindex>;<\/li>\n<li> PriorityClass API, <noindex><a rel=\"nofollow\" href=\"https:\/\/kubernetes.io\/docs\/concepts\/configuration\/pod-priority-preemption\/\">Pod Priority &amp; Preemption<\/a><\/noindex>.<\/li>\n<\/ul>\n<p>\nTeised muudatused, mis on esitatud Kubernetes 1.14-s:<\/p>\n<ul>\n<li> Vaikimisi RBAC poliitika ei paku enam juurdep\u00e4\u00e4su API-le <code>discovery<\/code> ja <code>access-review<\/code> kasutajatele, kellel ei ole autentimist <i>(unauthenticated)<\/i>.<\/li>\n<li> CoreDNS ametlik tugi <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/kubernetes\/kubernetes\/pull\/69940\">on tagatud<\/a><\/noindex> ainult Linuxile, seega peab kubeadm-i kasutamisel selle (CoreDNS) juurutamiseks klastris t\u00f6\u00f6tama ainult Linux (selle piirangu jaoks kasutatakse nodeSelectors).<\/li>\n<li> CoreDNS vaikimisi konfiguratsioon on n\u00fc\u00fcd <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/kubernetes\/kubernetes\/pull\/73267\">kasutab<\/a><\/noindex> <noindex><a rel=\"nofollow\" href=\"https:\/\/coredns.io\/plugins\/forward\/\">plugin forward<\/a><\/noindex> asetamine proxy. Lisaks, CoreDNS-i <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/kubernetes\/kubernetes\/pull\/74137\">lisatud<\/a><\/noindex> readinessProbe, mis takistab koormuse tasakaalustamist vastavates (teenindamiseks mittevalmis) pod&#8217;ides.<\/li>\n<li> Kubeadm-is, etappidel <code>\u2014 algne ettevalmistus enne juurutamist, siin v\u00f5ib olla k\u00f5ike: s\u00f5ltuvuste allalaadimist, saladuste lahtipakkimist ja muud.<\/code> v\u00f5i <code>upload-certs<\/code>, <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/kubernetes\/kubernetes\/pull\/73907\">on n\u00fc\u00fcd v\u00f5imalik<\/a><\/noindex> laadida sertifikaadid, mida on vaja uue control-plane'i \u00fchendamiseks kubeadm-certs saladusega (kasutatakse lippu <code>--experimental-upload-certs<\/code>).<\/li>\n<li> Windowsi installatsioonide jaoks on saadaval alfa-versioon <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/kubernetes\/enhancements\/issues\/689\">toetuseks<\/a><\/noindex> gMSA (Group Managed Service Account) \u2014 spetsiaalsed kontod Active Directory-s, mida saavad kasutada ka konteinerid.<\/li>\n<li> GCE jaoks <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/kubernetes\/kubernetes\/pull\/70144\">aktiveeriti<\/a><\/noindex> mTLS-kr\u00fcpteerimine etcd ja kube-apiserveri vahel.<\/li>\n<li> Uuendused kasutatavates\/s\u00f5ltuvates tarkvarades: Go 1.12.1, CSI 1.1, CoreDNS 1.3.1, Docker 18.09 tugi kubeadm-is, ning minimaalne toetatud Docker API versioon on n\u00fc\u00fcd 1.26.<\/li>\n<\/ul>\n<p><\/p>\n<h2>P.S.<\/h2>\n<p>\nLugege ka meie blogist:<\/p>\n<ul>\n<li> \u00ab<noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/company\/flant\/blog\/432208\/\">Kubernetes 1.13: oluliste uuenduste \u00fclevaade<\/a><\/noindex>\u00bb;<\/li>\n<li> \u00ab<noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/company\/flant\/blog\/424331\/\">Kubernetes 1.12: oluliste uuenduste \u00fclevaade<\/a><\/noindex>\u00bb;<\/li>\n<li> \u00ab<noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/company\/flant\/blog\/415349\/\">Kubernetes 1.11: oluliste uuenduste \u00fclevaade<\/a><\/noindex>\u00bb;<\/li>\n<li> \u00ab<noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/company\/flant\/blog\/353114\/\">Kubernetes 1.10: oluliste uuenduste \u00fclevaade<\/a><\/noindex>\u00bb.<\/li>\n<\/ul>\n<p>Allikas: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/flant\/blog\/445196\/\">habr.com<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u042d\u0442\u043e\u0439 \u043d\u043e\u0447\u044c\u044e \u0441\u043e\u0441\u0442\u043e\u0438\u0442\u0441\u044f \u043e\u0447\u0435\u0440\u0435\u0434\u043d\u043e\u0439 \u0440\u0435\u043b\u0438\u0437 Kubernetes \u2014 1.14. \u041f\u043e \u0441\u043b\u043e\u0436\u0438\u0432\u0448\u0435\u0439\u0441\u044f \u0434\u043b\u044f \u043d\u0430\u0448\u0435\u0433\u043e \u0431\u043b\u043e\u0433\u0430 \u0442\u0440\u0430\u0434\u0438\u0446\u0438\u0438, \u0440\u0430\u0441\u0441\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u043c \u043e \u043a\u043b\u044e\u0447\u0435\u0432\u044b\u0445 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f\u0445 \u0432 \u043d\u043e\u0432\u043e\u0439 \u0432\u0435\u0440\u0441\u0438\u0438 \u044d\u0442\u043e\u0433\u043e \u0437\u0430\u043c\u0435\u0447\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0433\u043e Open Source-\u043f\u0440\u043e\u0434\u0443\u043a\u0442\u0430. \u0418\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044f, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u043d\u0430\u044f \u0434\u043b\u044f \u043f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u043a\u0438 \u044d\u0442\u043e\u0433\u043e \u043c\u0430\u0442\u0435\u0440\u0438\u0430\u043b\u0430, \u0432\u0437\u044f\u0442\u0430 \u0438\u0437 \u0442\u0430\u0431\u043b\u0438\u0446\u044b Kubernetes enhancements tracking, CHANGELOG-1.14 \u0438 \u0441\u043e\u043e\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u044e\u0449\u0438\u0445 issues, pull requests, Kubernetes Enhancement Proposals (KEP). \u041d\u0430\u0447\u043d\u0451\u043c \u0441 \u0432\u0430\u0436\u043d\u043e\u0433\u043e \u0432\u0432\u0435\u0434\u0435\u043d\u0438\u044f \u043e\u0442 SIG cluster-lifecycle: \u0434\u0438\u043d\u0430\u043c\u0438\u0447\u0435\u0441\u043a\u0438\u0435 [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[],"tags":[],"class_list":["post-30272","post","type-post","status-publish","format-standard","hentry"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.1.1 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u042d\u0442\u043e\u0439 \u043d\u043e\u0447\u044c\u044e\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/et\/blog\/kubernetes-1-14-obzor-osnovnyh-novshestv\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.1.1\" \/>\n\t\t<meta property=\"og:locale\" content=\"et_EE\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47Kubernetes 1.14: \u043e\u0431\u0437\u043e\u0440 \u043e\u0441\u043d\u043e\u0432\u043d\u044b\u0445 \u043d\u043e\u0432\u0448\u0435\u0441\u0442\u0432 | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u042d\u0442\u043e\u0439 \u043d\u043e\u0447\u044c\u044e\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/et\/blog\/kubernetes-1-14-obzor-osnovnyh-novshestv\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2019-10-31T18:34:36+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2019-10-31T18:34:36+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Kubernetes 1.14: oluliste uuenduste \u00fclevaade | ProHoster","description":"Sellel \u00f6\u00f6l","canonical_url":"https:\/\/prohoster.info\/et\/blog\/kubernetes-1-14-obzor-osnovnyh-novshestv","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"et_EE","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47Kubernetes 1.14: \u043e\u0431\u0437\u043e\u0440 \u043e\u0441\u043d\u043e\u0432\u043d\u044b\u0445 \u043d\u043e\u0432\u0448\u0435\u0441\u0442\u0432 | ProHoster","og:description":"\u042d\u0442\u043e\u0439 \u043d\u043e\u0447\u044c\u044e","og:url":"https:\/\/prohoster.info\/et\/blog\/kubernetes-1-14-obzor-osnovnyh-novshestv","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2019-10-31T18:34:36+00:00","article:modified_time":"2019-10-31T18:34:36+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"30272","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"Article","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":"2026-01-21 00:28:09","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-03-01 03:37:28","updated":"2026-01-21 00:28:09","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/posts\/30272","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/comments?post=30272"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/posts\/30272\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/media?parent=30272"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/categories?post=30272"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/tags?post=30272"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}