Kubernetes: Limbikitsani ntchito zanu pochotsa malire a CPU
Kubwerera mu 2016 ife ku Buffer adasinthira ku Kubernetes, ndipo tsopano pafupifupi ma node 60 (pa AWS) ndi makontena 1500 akugwira ntchito pagulu lathu la k8s lomwe limayendetsedwa ndi kops. Komabe, tinasamukira ku microservices kupyolera mu kuyesa ndi zolakwika, ndipo ngakhale patapita zaka zingapo tikugwira ntchito ndi k8s tikukumanabe ndi mavuto atsopano. Mu positi iyi tikambirana malire a purosesa: chifukwa chiyani tinkaganiza kuti anali ochita bwino komanso chifukwa chake adamaliza kukhala osachita bwino.
Kulephera kwa purosesa ndi kugunda
Monga ogwiritsa ntchito ena ambiri a Kubernetes, Google imalimbikitsa kwambiri kukhazikitsa malire a CPU. Popanda kuyika kotere, zotengera mu node zimatha kutenga mphamvu zonse za purosesa, zomwe zimayambitsa njira zofunika za Kubernetes (mwachitsanzo. kubelet) adzasiya kuyankha zopempha. Chifukwa chake, kukhazikitsa malire a CPU ndi njira yabwino yotetezera node zanu.
Malire a purosesa amayika chidebe ku nthawi yochuluka ya CPU yomwe ingagwiritse ntchito panthawi inayake (chosakhazikika ndi 100ms), ndipo chidebe sichidzadutsa malire awa. Ku Kubernetes kwa kugwedeza ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠ° ΠΈ Π½Π΅Π΄ΠΎΠΏΡΡΠ΅Π½ΠΈΡ ΠΏΡΠ΅Π²ΡΡΠ΅Π½ΠΈΡ ΠΈΠΌ ΠΏΡΠ΅Π΄Π΅Π»Π° ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΠΎΡΠΎΠ±ΡΠΉ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½Ρ Mtengo wa CFS, koma malire opangira a CPU awa amatha kuwononga magwiridwe antchito ndikuwonjezera nthawi yoyankhira zotengera zanu.
Kodi chingachitike ndi chiyani ngati sitiyika malire a purosesa?
Chifukwa chiyani tikuwona kutsika kwa CPU yotsika? Mtundu waufupi ndi wakuti: "pali cholakwika mu Linux kernel chomwe chimayambitsa kugwedezeka kosafunikira kwa zotengera zomwe zili ndi malire a purosesa." Ngati muli ndi chidwi ndi momwe vutoli lilili, mutha kuwerenga ulaliki (Π²ΠΈΠ΄Π΅ΠΎ ΠΈ mawu options) by Dave Chiluk.
Komabe, powerenga kubernetes mavuto pa githubkwachiwiri kwa Seputembara 2020 timakumanabe ndi zonena za mapulojekiti ena a Linux okhala ndi cholakwika chofanana. Ndikukhulupirira kuti magawo ena a Linux akadali ndi cholakwika ichi ndipo akungoyesetsa kukonza.
Ngati mtundu wanu wogawa uli wotsika kuposa 4.19, ndingalimbikitse kukweza kwaposachedwa, koma mulimonsemo muyenera kuyesa kuchotsa zoletsa za purosesa ndikuwona ngati kugwedezeka kukupitilira. Pansipa mutha kuwona mndandanda wapanthawi ya Kubernetes kasamalidwe ka ntchito ndi magawo a Linux:
Debian: konzani zophatikizidwa mu mtundu waposachedwa wa kugawa, wotanganidwa, ndipo zikuwoneka zatsopano (Ogasiti 2020). Mabaibulo ena am'mbuyomu akhoza kukonzedwanso.
Ngati mumagwira ntchito ndi zotengera za Docker pansi pa Linux (zilibe kanthu Kubernetes, Mesos, Swarm kapena ena), zotengera zanu zitha kulephera kugwira ntchito chifukwa chakugwedezeka;
Yesani kusinthira ku mtundu waposachedwa wa kugawa kwanu ndikuyembekeza kuti cholakwikacho chakonzedwa kale;
Kuchotsa malire a purosesa kudzathetsa vutoli, koma iyi ndi njira yowopsa yomwe iyenera kugwiritsidwa ntchito mosamala kwambiri (ndi bwino kuti muyambe kusintha kernel ndikuyerekeza zotsatira);
Ngati mwachotsa malire a CPU, yang'anani mosamala CPU yanu ndikugwiritsa ntchito kukumbukira ndikuwonetsetsa kuti zida zanu za CPU zikupitilira zomwe mumadya;
Njira yotetezeka ingakhale kuyendetsa ma pods kuti apange ma pod atsopano ngati ali ndi katundu wambiri wa hardware, kotero kuti kubernetes amawagawira kuti akhale ndi ma node aulere.
Ndikukhulupirira kuti positi iyi ikuthandizani kukonza magwiridwe antchito a makina anu.
PS ndi wolemba amafanana ndi owerenga ndi opereka ndemanga (mu Chingerezi).