Имрӯз, чоршанбе,
Маълумоте, ки барои тайёр кардани ин мавод истифода мешавад, аз он гирифта шудааст
Гиреҳҳо
Дар паҳлӯи гиреҳҳои кластери K8s (Kubelet) шумораи воқеан зиёди навовариҳои назаррас (дар ҳолати версияи алфа) пешниҳод карда мешаванд.
Аввалан, ба ном «kubectl debug
, аз чихати мохият ба он монанд аст kubectl exec
: танҳо ба ҷои иҷро кардани раванд дар контейнер (ба монанди дар exec
) он контейнерро дар як падлу ба кор меандозад. Масалан, ин фармон як контейнери навро ба pod пайваст мекунад:
kubectl debug -c debug-shell --image=debian target-pod -- bash
Тафсилот дар бораи контейнерҳои эфемерӣ (ва мисолҳои истифодаи онҳо) мумкин аст дар
NB: Дар моҳият ва ҳатто номи худ, хусусият ба плагини аллакай мавҷудбуда шабоҳат дорад
Навоварии дигар - PodOverhead
PodSpec
майдон илова карда шуд Overhead *ResourceList
(бо маълумоти дар RuntimeClass
, агар яке истифода шавад).
Боз як навоварии назаррас ин аст мудири топологияи гиреҳ (Менеҷери топологияи гиреҳ), ки барои ягона кардани равиш ба танзими дақиқи тақсимоти захираҳои сахтафзор барои ҷузъҳои гуногун дар Kubernetes пешбинӣ шудааст. Ин ташаббус бо эҳтиёҷоти афзояндаи системаҳои гуногуни муосир (аз соҳаи телекоммуникатсия, омӯзиши мошинсозӣ, хидматрасонии молиявӣ ва ғайра) ба ҳисоббарории параллелӣ ва кам кардани таъхирҳо дар иҷрои амалиётҳо, ки барои онҳо CPU ва компютерҳои пешрафтаро истифода мебаранд, ба вуҷуд омадааст. имкониятҳои суръатбахшии сахтафзор. Чунин оптимизатсияҳо дар Кубернетес то ба ҳол ба шарофати ҷузъҳои ҷудогона (менеҷери CPU, мудири дастгоҳ, CNI) ба даст оварда шудаанд ва ҳоло ба онҳо интерфейси ягонаи дохилӣ илова карда мешавад, ки равишро муттаҳид мекунад ва пайвасти нави шабеҳ - ба истилоҳ топологияро осон мекунад. огоҳ - ҷузъҳои дар тарафи Kubelet. Тафсилот - дар
Диаграммаи ҷузъҳои Менеҷери топология
Хусусияти навбатӣ - тафтиш кардани контейнерҳо ҳангоми кор кардан (StartupProbeEnabled
) бекор мекунад - ё дурусттараш, ба таъхир меандозад - таъсири ҳама гуна санҷишҳои дигарро то лаҳзаи ба итмом расидани кор. Аз ин сабаб, хусусият дар аввал номида шуд
Илова бар ин, такмилдиҳии RuntimeClass фавран дар ҳолати бета дастрас аст ва дастгирии "кластерҳои гетерогениро" илова мекунад. C
Шабака
Ду хусусияти муҳими шабакавӣ, ки бори аввал (дар версияи алфа) дар Kubernetes 1.16 пайдо шуданд, инҳоянд:
-
таъмин стек шабакаи дугона - IPv4/IPv6 - ва "фаҳмиши" мувофиқи он дар сатҳи поддонҳо, гиреҳҳо, хидматҳо. Он дорои ҳамоҳангсозии IPv4-to-IPv4 ва IPv6-to-IPv6 байни подкҳо, аз подкҳо то хидматҳои беруна, татбиқи истинодҳо (дар дохили Bridge CNI, PTP CNI ва плагинҳои IPAM Host-Local), инчунин баръакс бо кластерҳои Kubernetes коркунанда мувофиқ аст. Танҳо IPv4 ё IPv6. Тафсилоти татбиқ дарКИП .Намунаи намоиши суроғаҳои IP-и ду намуд (IPv4 ва IPv6) дар рӯйхати подкҳо:
kube-master# kubectl get pods -o wide NAME READY STATUS RESTARTS AGE IP NODE nginx-controller 1/1 Running 0 20m fd00:db8:1::2,192.168.1.3 kube-minion-1 kube-master#
- API-и нав барои Endpoint -
API EndpointSlice . Он масъалаҳои иҷроиш/миқёспазирии мавҷудаи Endpoint API-ро, ки ба ҷузъҳои гуногуни ҳавопаймои идоракунӣ таъсир мерасонанд (apiserver, etcd, endpoints-controller, kube-proxy) ҳал мекунад. API-и нав ба гурӯҳи Discovery API илова карда мешавад ва метавонад ба даҳҳо ҳазор нуқтаи ниҳоии пуштибонӣ дар ҳар як хидмат дар кластере, ки аз ҳазорҳо гиреҳҳо иборат аст, хидмат расонад. Барои ин, ҳар як Хидмат ба N объект харита карда мешавадEndpointSlice
, ки ҳар яки онҳо ба таври пешфарз на бештар аз 100 нуқтаи ниҳоӣ доранд (арзиш танзимшаванда аст). EndpointSlice API инчунин барои рушди ояндаи он имконият фароҳам меорад: дастгирии суроғаҳои IP-и сершумор барои ҳар як подк, ҳолати нав барои нуқтаҳои ниҳоӣ (на танҳоReady
иNotReady
), зербанди динамикӣ барои нуқтаҳои ниҳоӣ.
Оне, ки дар версияи охирин пешниҳод шудааст, ба версияи бета расидааст service.kubernetes.io/load-balancer-cleanup
ва ба ҳар як хидмат бо навъи замима карда мешавад LoadBalancer
. Ҳангоми нест кардани чунин хадамот, он ҳазфи воқеии захираро то анҷоми «тозакунии» тамоми захираҳои дахлдори мувозинат пешгирӣ мекунад.
API Machinery
Марҳилаи воқеии субот дар соҳаи сервери API Kubernetes ва ҳамкорӣ бо он аст. Ин асосан ба шарофати рӯй дод ба статуей муътадил гузарондани онхое, ки ба чорй намудани махсус эхтиёч надоранд
-
"сарчашмаҳо" бо/status
и/scale
барои CustomResources; -
табдил версияҳо барои CRD, ки дар асоси webhook беруна; -
ба наздикй пешниход карда шуд (дар K8s 1.15) арзишҳои пешфарз (пешфарз) ва ба таври автоматӣ бартараф кардани майдонҳо (буридани) барои CustomResources; -
имконият бо истифода аз схемаи OpenAPI v3 барои эҷод ва нашри ҳуҷҷатҳои OpenAPI, ки барои тасдиқи захираҳои CRD дар тарафи сервер истифода мешавад.
Механизми дигаре, ки барои маъмурони Kubernetes кайҳо боз шинос шудааст:
Ду хусусияти дигар ба бета расидаанд:
Ва ягона навоварии назаррас дар версияи алфа буд SelfLink
— URI махсусе, ки объекти муайяншударо ифода мекунад ва қисми он мебошад ObjectMeta
и ListMeta
(яъне як қисми ҳама гуна объект дар Кубернетес). Чаро онҳо онро тарк мекунанд? Ҳавасмандкунӣ бо роҳи оддӣ SelfLink
бо версияи Kubernetes 1.20 рӯй медиҳад ва ниҳоӣ - 1.21.
Нигоҳдории маълумот
Корҳои асосӣ дар соҳаи нигоҳдорӣ, ба монанди нашрҳои қаблӣ, дар ин минтақа мушоҳида карда мешаванд
- бори аввал (дар версияи алфа)
пайдо шуд Дастгирии плагини CSI барои гиреҳҳои коргари Windows: тарзи кунунии кор бо нигаҳдорӣ инчунин плагинҳои дохили дарахтро дар ядрои Kubernetes ва плагинҳои FlexVolume аз Microsoft дар асоси Powershell иваз мекунад;
Нақшаи татбиқи плагинҳои CSI дар Kubernetes барои Windows - имконият
тағир додани андозаи ҳаҷми CSI , ки дар K8s 1.12 муаррифӣ шудааст, ба версияи бета табдил ёфтааст; - Ба ин монанд "пешбурд" (аз алфа ба бета) тавассути қобилияти истифодаи CSI барои эҷоди ҳаҷмҳои эфемерии маҳаллӣ (
Дастгирии ҳаҷми CSI Inline ).
Дар версияи қаблии Kubernetes муаррифӣ карда шудааст DataSource
барои сохтани PVC нав) низ ҳоло мақоми бета гирифтааст.
Барномасоз
Ду тағироти назаррас дар банақшагирӣ (ҳарду дар алфа):
-
- имконият ба ҷои воҳидҳои мантиқии барнома барои "тақсимоти одилона"-и борҳо подкҳоро истифода баред (ба монанди Deployment ва ReplicaSet) ва танзими ин тақсимот (ҳамчун талаботи сахт ё ҳамчун ҳолати нарм, яъне афзалият). Хусусият имкониятҳои мавҷудаи тақсимоти подкҳои банақшагирифтаро васеъ мекунад, ки айни замон бо имконоти маҳдуд маҳдуд астEvenPodsSpreading
PodAffinity
иPodAntiAffinity
, ба маъмурон додани назорати дақиқ дар ин масъала, ки маънои дастрасии баландтар ва истеъмоли оптимизатсияи захираҳоро дорад. Тафсилот - дарКИП . - Истифода кунед Сиёсати BestFit в Функсияи афзалиятноки RequestedToCapacityRatio хангоми баплангирии под, ки имкон медихад истифода бурдан
бастабандии бин («Бастабандӣ дар контейнерҳо») ҳам барои захираҳои асосӣ (протсессор, хотира) ва ҳам барои захираҳои васеъ (ба монанди GPU). Барои тафсилоти бештар нигаредКИП .
Панелҳои банақшагирӣ: пеш аз истифодаи сиёсати беҳтарин (бевосита тавассути нақшаи пешфарз) ва бо истифодаи он (тавассути васеъкунандаи нақша)
Илова бар ин,
Тағироти дигар
Инчунин дар версияи Kubernetes 1.16 онро метавон қайд кард ташаббус барои
Илова бар ин, тағйироти зеринро метавон қайд кард:
- Дастгирии рушди Windows с
намуди зоҳирӣ Utilities Kubeadm барои ин ОС (версияи алфа),имконият RunAsUserName
барои контейнерҳои Windows (версияи алфа),беҳтаршавӣ Ҳисоби хидматрасонии гурӯҳи идорашаванда (gMSA) то версияи бета дастгирӣ мекунад,дастгирӣ барои ҳаҷмҳои vSphere васл/ замима кунед. -
Аз нав коркардшуда механизми фишурдани маълумот дар посухҳои API. Пештар, барои ин мақсадҳо филтри HTTP истифода мешуд, ки як қатор маҳдудиятҳоро ҷорӣ мекард, ки ба таври нобаёнӣ фаъол шудани онро пешгирӣ мекард. "Фишоркунии дархости шаффоф" ҳоло кор мекунад: фиристодани муштариёнAccept-Encoding: gzip
дар сарлавҳа, онҳо ҷавоби фишурдашудаи GZIP мегиранд, агар андозаи он аз 128 КБ зиёд бошад. Мизоҷони Go ба таври худкор фишурдасозиро дастгирӣ мекунанд (фиристодаи сарлавҳаи зарурӣ), аз ин рӯ онҳо дарҳол коҳиши трафикро пай хоҳанд бурд. (Шояд барои забонҳои дигар тағйироти ночиз лозим шавад.) -
Мумкин шуд миқёси HPA аз / ба сифр pods дар асоси ченакҳои беруна. Агар шумо дар асоси объектҳо/метрикаҳои беруна миқёс кунед, пас вақте ки сарбории корӣ бекор аст, шумо метавонед ба таври худкор ба 0 нусхабардорӣ миқёс кунед, то захираҳоро сарфа кунед. Ин хусусият бояд махсусан барои ҳолатҳое муфид бошад, ки коргарон захираҳои GPU-ро талаб мекунанд ва шумораи намудҳои гуногуни коргарони бекор аз шумораи GPU-ҳои мавҷуда зиёд аст. - Муштарии нав -
— барои дастрасии «умумй» ба объектхо. Он барои ба осонӣ дарёфт кардани метамаълумот (яъне зерфаслиk8s.io/client-go/metadata.Client
metadata
) аз захираҳои кластерӣ ва ҷамъоварии ахлот ва амалиёти квота бо онҳо анҷом диҳед. - Кубернетесро созед
акнун шумо метавонед бе провайдерҳои абрии меросӣ ("дар-дарахт" сохташуда) (версияи алфа). - Ба утилитаи kubeadm
илова намуд қобилияти таҷрибавӣ (версияи алфа) барои татбиқи часбҳои фармоишӣ дар давоми амалиётinit
,join
иupgrade
. Дар бораи чӣ гуна истифода бурдани парчам бештар маълумот гиред--experimental-kustomize
, бубинедКИП . - Нуқтаи нав барои apiserver -
, - ба шумо имкон медиҳад, ки маълумотро дар бораи омодагии он содир кунед. Сервери API низ ҳоло парчам дорадreadyz
--maximum-startup-sequence-duration
, ба шумо имкон медиҳад, ки дубора оғоз кардани онро танзим кунед. - Дуюм хусусиятҳо барои Azure устувор эълон кард: дастгирй
минтақаҳои дастрас (Минтақаҳои дастрас) вагурӯҳи захираҳои байнисоҳавӣ (РГ). Илова бар ин, Azure илова кардааст:-
дастгирии аутентификатсия AAD ва ADFS; -
эзоҳ service.beta.kubernetes.io/azure-pip-name
муайян кардани IP-и оммавии баланси сарборӣ; -
имконият ТанзимотҳоLoadBalancerName
иLoadBalancerResourceGroup
.
-
- AWS ҳоло дорад
дастгирӣ барои EBS дар Windows ваоптимизатсияшуда Зангҳои API EC2DescribeInstances
. - Кубеадм холо мустакил аст
мухочират мекунад Конфигуратсияи CoreDNS ҳангоми навсозии версияи CoreDNS. - Бинарӣ ва ғайра дар тасвири мувофиқи Docker
кардаанд world-executable, ки ба шумо имкон медиҳад, ки ин тасвирро бидуни ниёз ба ҳуқуқи реша иҷро кунед. Инчунин, тасвири муҳоҷират ва ғайраистод Дастгирии версияи etcd2. - В
Cluster Autoscaler 1.16.0 ба истифодаи distroless ҳамчун тасвири асосӣ гузашт, иҷрои беҳтар, провайдерҳои нави абрӣ (DigitalOcean, Magnum, Packet) илова карда шуд. - Навсозиҳо дар нармафзори истифодашуда/вобаста: Go 1.12.9, etcd 3.3.15, CoreDNS 1.6.2.
PS
Инчунин дар блоги мо хонед:
- «
Kubernetes 1.15: шарҳи навовариҳои асосӣ »; - «
Kubernetes 1.14: шарҳи навовариҳои асосӣ »; - «
Kubernetes 1.13: шарҳи навовариҳои асосӣ »; - «
Kubernetes 1.12: шарҳи навовариҳои асосӣ ".
Манбаъ: will.com