quick bugfixes
This commit is contained in:
parent
8afc2f44f2
commit
ec4815b08b
@ -2,7 +2,7 @@
|
||||
kile_livePreviewEnabled=true
|
||||
kile_livePreviewStatusUserSpecified=true
|
||||
kile_livePreviewTool=LivePreview-XeLaTeX
|
||||
lastDocument=content/results.tex
|
||||
lastDocument=content/introduction.tex
|
||||
|
||||
[document-settings,item:../../thesis-template-latex/src/thesis.tex]
|
||||
Bookmarks=
|
||||
@ -160,12 +160,12 @@ TextFolding=[]
|
||||
ViMarks=
|
||||
|
||||
[view-settings,view=0,item:content/abstract.tex]
|
||||
CursorColumn=0
|
||||
CursorLine=24
|
||||
CursorColumn=45
|
||||
CursorLine=37
|
||||
Dynamic Word Wrap=false
|
||||
JumpList=
|
||||
TextFolding=[]
|
||||
ViMarks=
|
||||
ViMarks=.,37,164,[,37,157,],37,164
|
||||
|
||||
[view-settings,view=0,item:content/acknowledgement.tex]
|
||||
CursorColumn=0
|
||||
@ -184,8 +184,8 @@ TextFolding=[]
|
||||
ViMarks=.,181,0,[,181,0,],181,9
|
||||
|
||||
[view-settings,view=0,item:content/closing.tex]
|
||||
CursorColumn=0
|
||||
CursorLine=12
|
||||
CursorColumn=253
|
||||
CursorLine=14
|
||||
Dynamic Word Wrap=false
|
||||
JumpList=
|
||||
TextFolding=[]
|
||||
@ -200,28 +200,28 @@ TextFolding=[]
|
||||
ViMarks=.,3,171,[,3,167,],3,171
|
||||
|
||||
[view-settings,view=0,item:content/introduction.tex]
|
||||
CursorColumn=4
|
||||
CursorLine=7
|
||||
CursorColumn=126
|
||||
CursorLine=13
|
||||
Dynamic Word Wrap=false
|
||||
JumpList=
|
||||
TextFolding=[]
|
||||
ViMarks=.,0,0,[,0,0,],0,26
|
||||
ViMarks=.,13,125,[,13,57,],13,125
|
||||
|
||||
[view-settings,view=0,item:content/preparation.tex]
|
||||
CursorColumn=0
|
||||
CursorLine=103
|
||||
CursorColumn=61
|
||||
CursorLine=134
|
||||
Dynamic Word Wrap=false
|
||||
JumpList=
|
||||
TextFolding=[]
|
||||
ViMarks=.,102,1191,[,102,1150,],102,1191
|
||||
ViMarks=.,123,551,[,123,542,],123,551
|
||||
|
||||
[view-settings,view=0,item:content/results.tex]
|
||||
CursorColumn=0
|
||||
CursorLine=11
|
||||
CursorColumn=19
|
||||
CursorLine=164
|
||||
Dynamic Word Wrap=false
|
||||
JumpList=
|
||||
TextFolding=[]
|
||||
ViMarks=.,49,0,[,49,0,],49,0
|
||||
ViMarks=.,140,74,[,140,62,],140,74
|
||||
|
||||
[view-settings,view=0,item:content/theory.tex]
|
||||
CursorColumn=0
|
||||
|
@ -1,13 +1,3 @@
|
||||
@report{Jeney,
|
||||
author = {G{\'a}bor Jeney},
|
||||
institution = {Budapesti M{\H u}szaki {\'e}s Gazdas{\'a}gtudom{\'a}nyi Egyetem, H{\'\i}rad{\'a}stechnikai Tansz{\'e}k},
|
||||
location = {Budapest},
|
||||
note = {\url{http://www.mcl.hu/~jeneyg/kinezet.pdf}},
|
||||
title = {Hogyan n{\'e}z ki egy ig{\'e}nyes dokumentum? {N}{\'e}h{\'a}ny sz{\'o}ban az alapvet{\H o} tipogr{\'a}fiai szab{\'a}lyokr{\'o}l},
|
||||
type = {techreport},
|
||||
year = {2014}
|
||||
}
|
||||
|
||||
@misc{dockervirt,
|
||||
author = {Nick Janetakis},
|
||||
howpublished = {\url{https://nickjanetakis.com/blog/comparing-virtual-machines-vs-docker-containers}},
|
||||
@ -364,3 +354,9 @@
|
||||
title = {Resource Types}
|
||||
}
|
||||
|
||||
@misc{cloudlab,
|
||||
howpublished = {https://cloudlab.us/technology.php},
|
||||
note = {Megtekintve 2019-12-04},
|
||||
title = {Cloudlab - Software Technology}
|
||||
}
|
||||
|
||||
|
@ -12,7 +12,7 @@ Napjainkban egyre elterjedtebb a webes alkalmazások fejlesztése során kisebb
|
||||
|
||||
Fennáll viszont a probléma, hogy az egyes részek akkor is készen állnak kérések fogadására, ha nincs rájuk szükség, ezzel feleslegesen foglalva erőforrásokat. Szintúgy gyakori probléma a váratlanul megjelenő, nagy terhelésre a lassú válaszreakció. Ez a probléma legtöbbször nem egy rosszul elkészített alkalmazásból adódik, hanem a futtató környezet adottsága.
|
||||
|
||||
A Knative ezeket a problémákat aldja meg. Lehetővé teszi az egyes részegységek nullára skálázását, valamint képesek szolgáltatások gyors skálázására a megjelenő konkurens kérésekkel arányosan.
|
||||
A Knative ezt a problém\'at oldja meg. Lehetővé teszi az egyes részegységek nullára skálázását, valamint képesek szolgáltatások gyors skálázására a megjelenő konkurens kérésekkel arányosan.
|
||||
|
||||
A szakdolgozat keretein belül a Knative ezen funkciójának működését vizsgálom. Ehhez kidolgoztam m\'er\'eseket, melyek betekint\'est ny\'ujtanak a rendszer belső műk\"od\'es\'ebe. Feladatom r\'eszek\'ent a kidolgozott m\'er\'eseket, valamint azok eredm\'enyeinek al\'izis\'et automatiz\'altam, ami felgyors\'itja az eredm\'enyek \'ertelmez\'es\'et.
|
||||
|
||||
|
@ -3,11 +3,11 @@
|
||||
\chapter{\bevezetes}
|
||||
%----------------------------------------------------------------------------
|
||||
|
||||
Feladatom a Knative keretrendszer automatiz\'alt telep\'it\'ese, majd sk\'al\'az\'asi k\'epess\'eg\'enek vizsg\'alata, aminek r\'eszek\'ent l\'etre kell hozzak f\"uggv\'enyeket, melyek seg\'its\'eg\'evel a vizs\'g\'alat elv\'egezhető. Nincs specifik\'alva milyen infrastrukt\'ur\'at haszn\'aljak, viszont nem rendelkezem a feladathoz sz\"uks\'eges nagy teljes\'itm\'enyű sz\'am\'it\'og\'epekkel, ez\'ert a Cloudlab \'altal biztos\'itott szervereken kell dolgozzak.
|
||||
Feladatom a Knative keretrendszer automatiz\'alt telep\'it\'ese, majd sk\'al\'az\'asi k\'epess\'eg\'enek vizsg\'alata, aminek r\'eszek\'ent l\'etre kell hozzak f\"uggv\'enyeket, melyek seg\'its\'eg\'evel a vizs\'g\'alat elv\'egezhető. Nincs specifik\'alva milyen infrastrukt\'ur\'at haszn\'aljak, viszont nem rendelkezem a feladathoz sz\"uks\'eges nagy teljes\'itm\'enyű sz\'am\'it\'og\'epekkel, ez\'ert a Cloudlab \cite{cloudlab} \'altal biztos\'itott szervereken kell dolgozzak.
|
||||
|
||||
Mivel 2017-\'ota tagja vagyok a Sch\"onherz Koll\'egiumban műk\"odő Koll\'egiumi Sz\'am\'it\'astechnikai K\"ornek, ahol k\"ul\"onf\'ele Linux alap\'u rendszerek, valamint a koll\'egiumi h\'al\'ozat \"uzemeltet\'es\'evel foglalkozom, ez\'ert Linuxos \'es h\'al\'ozatos alaptud\'asom a szakdolgozat kezd\'esekor jelentős volt.
|
||||
|
||||
Kont\'eneriz\'aci\'oval \'es a Dockerrel a T\'emalaborat\'orium tant\'argy keretein bel\"ul ismerkedtem meg, az\'ota napi szinten haszn\'alom. Mivel k\"ul\"on\"osen \'erdekel a szoftverfejleszt\'essel kapcsolatos folyamatok automatiz\'aci\'oja, ez\'ert igyekszem olyan folyamatokat is automatiz\'alni, melyeket a feladatom nem specifik\'alt, ilyen p\'eld\'aul a m\'er\'esi eredm\'enyekből kezdetleges grafikonok gener\'al\'asa. Az erre kialak\'itott rendszer m\'eg kezd\'es előtt megfogalmaz\'odott bennem. Az automatiz\'aci\'ohoz Python \'es bash nyelven \'irt programokat \'es szkripteket haszn\'altam, ugyanis ezeket a nyelveket ismerem.
|
||||
Kont\'eneriz\'aci\'oval \'es a Dockerrel a T\'emalaborat\'orium tant\'argy keretein bel\"ul ismerkedtem meg, az\'ota napi szinten haszn\'alom. Mivel k\"ul\"on\"osen \'erdekel a szoftverfejleszt\'essel kapcsolatos folyamatok automatiz\'aci\'oja, ez\'ert igyekszem olyan folyamatokat is automatiz\'alni, melyeket a feladatom nem specifik\'alt, ilyen p\'eld\'aul a m\'er\'esi eredm\'enyekből kezdetleges grafikonok gener\'al\'asa. Az erre kialak\'itott rendszer m\'eg a munka kezd\'ese előtt megfogalmaz\'odott bennem. Az automatiz\'aci\'ohoz Python \'es bash nyelven \'irt programokat \'es szkripteket haszn\'altam, ugyanis ezeket a nyelveket ismerem.
|
||||
|
||||
A Knative-val m\'eg nem dolgoztam, ez\'ert a munk\'at irodalomkutat\'assal kezdtem, eg\'esz pontosan a sk\'al\'az\'od\'asi lehetős\'egek megismer\'es\'evel, valamint a belső rendszerek felt\'erk\'epez\'es\'evel. Ez ut\'an l\'attam neki a telep\'it\'es automatiz\'al\'as\'anak \'es a f\"uggv\'enyek l\'etrehoz\'as\'anak \'es a m\'er\'esek kidolgoz\'as\'anak.
|
||||
|
||||
|
@ -24,14 +24,14 @@ Az \ref{fig:jmeter-for-otodik-chart} \'es \aref{fig:knative-for-negyedik-chart}
|
||||
\begin{figure}[!ht]
|
||||
\centering
|
||||
\includegraphics[width=120mm, keepaspectratio]{figures/jmeter-for-otodik-chart.png}
|
||||
\caption{Konstans terhel\'ese echo t\'ipus\'u f\"uggv\'enynek Jmeter eszk\"ozzel}
|
||||
\caption{Echo t\'ipus\'u f\"uggv\'eny konstans terhel\'ese Jmeter eszk\"ozzel}
|
||||
\label{fig:jmeter-for-otodik-chart}
|
||||
\end{figure}
|
||||
|
||||
\begin{figure}[!ht]
|
||||
\centering
|
||||
\includegraphics[width=120mm, keepaspectratio]{figures/knative-for-negyedik-chart.png}
|
||||
\caption{Konstans terhel\'ese echo t\'ipus\'u f\"uggv\'enynek Hey eszk\"ozzel}
|
||||
\caption{Echo t\'ipus\'u f\"uggv\'eny konstans terhel\'ese Hey eszk\"ozzel}
|
||||
\label{fig:knative-for-negyedik-chart}
|
||||
\end{figure}
|
||||
|
||||
@ -42,14 +42,14 @@ Az \ref{fig:hatodik-isprime-knative-for-chart} \'es \aref{fig:jmeter-hatodik-py-
|
||||
\begin{figure}[!ht]
|
||||
\centering
|
||||
\includegraphics[width=120mm, keepaspectratio]{figures/hatodik-isprime-knative-for-chart.png}
|
||||
\caption{Konstans terhel\'ese pr\'imsz\'amol\'o f\"uggv\'enynek Hey eszk\"ozzel}
|
||||
\caption{Pr\'imsz\'amol\'o f\"uggv\'eny konstans terhel\'ese Hey eszk\"ozzel}
|
||||
\label{fig:hatodik-isprime-knative-for-chart}
|
||||
\end{figure}
|
||||
|
||||
\begin{figure}[!ht]
|
||||
\centering
|
||||
\includegraphics[width=120mm, keepaspectratio]{figures/jmeter-hatodik-py-chart.png}
|
||||
\caption{Konstans terhel\'ese pr\'imsz\'amol\'o f\"uggv\'enynek Jmeter eszk\"ozzel}
|
||||
\caption{Pr\'imsz\'amol\'o f\"uggv\'eny konstans terhel\'ese Jmeter eszk\"ozzel}
|
||||
\label{fig:jmeter-hatodik-py-chart}
|
||||
\end{figure}
|
||||
|
||||
@ -76,12 +76,12 @@ Az \ref{fig:go-start-chart} \'abr\'an l\'athat\'o az echo t\'ipus\'u f\"uggv\'en
|
||||
|
||||
\section{Knative rendszerbe telep\'itett f\"uggv\'enyek sk\'al\'az\'od\'asa n\"ovekedő terhel\'es alatt}
|
||||
|
||||
Az \ref{fig:hatodik-hello-knative-climb-chart} ábrán látható az echo típusú függvényre egyre növekvő terhelés, valamint a Knative Autoscaler rendszer e mérés alatti belső állapota. A terhelés növelését a hey mérőeszközben egyre több connection objektum használta által értem el. Jól látszik, hogy az ObservedStableConcurrency egy lassan változó érték, a mérés végére töredékét érte el annak az értéknek, amit az egyenletes terhelésű mérések során elért. Szintén látható a Podok számából, hogy pánik állapotot sem váltott ki a mérés. Erre nem is lehetett számítani, hiszen a használt konkurencia érték sosem növekedett duplájára hat másodperces időtartam alatt.
|
||||
Az \ref{fig:hatodik-hello-knative-climb-chart} ábrán látható az echo típusú függvényre egyre növekvő terhelés, valamint a Knative Autoscaler rendszer e mérés alatti belső állapota. A terhelés növelését a hey mérőeszközben egyre több connection objektum használata által értem el. Jól látszik, hogy az ObservedStableConcurrency egy lassan változó érték, a mérés végére töredékét érte el annak az értéknek, amit az egyenletes terhelésű mérések során elért. Szintén látható a Podok számából, hogy pánik állapotot sem váltott ki a mérés. Erre nem is lehetett számítani, hiszen a használt konkurencia érték sosem növekedett duplájára hat másodperces időtartam alatt.
|
||||
|
||||
\begin{figure}[!ht]
|
||||
\centering
|
||||
\includegraphics[width=120mm, keepaspectratio]{figures/hatodik-hello-knative-climb-chart.png}
|
||||
\caption{Emelkedő terhel\'ese echo t\'ipus\'u f\"uggv\'enynek Hey eszk\"ozzel}
|
||||
\caption{Echo t\'ipus\'u f\"uggv\'eny emelkedő terhel\'ese Hey eszk\"ozzel}
|
||||
\label{fig:hatodik-hello-knative-climb-chart}
|
||||
\end{figure}
|
||||
|
||||
@ -90,7 +90,7 @@ A korábbi mérések alapján számítottam rá, hogy a prímszámoló függvén
|
||||
\begin{figure}[!ht]
|
||||
\centering
|
||||
\includegraphics[width=120mm, keepaspectratio]{figures/hatodik-isprime-knative-climb-chart.png}
|
||||
\caption{Emelkedő terhel\'ese pr\'imsz\'amol\'o f\"uggv\'enynek Hey eszk\"ozzel}
|
||||
\caption{Pr\'imsz\'amol\'o f\"uggv\'eny emelkedő terhel\'ese Hey eszk\"ozzel}
|
||||
\label{fig:hatodik-isprime-knative-climb-chart}
|
||||
\end{figure}
|
||||
|
||||
@ -116,7 +116,7 @@ Ahogy \aref{fig:kubeless-isprime} ábrán látszik, a Kubeless skálázódása t
|
||||
\label{fig:kubeless-isprime}
|
||||
\end{figure}
|
||||
|
||||
Sajnos, a Kubeless esetében többször előfordult, hogy csak egy Podot hozott létre az egész mérés során. Ez nem függött attól, hogy mennyi ideig tartott a mérés. Miután véget ért a terhelés, rövid időn belül létre jött a következő Pod. Ennek okát próbáltam kideríteni, egyik hipotézisem az volt, hogy nincs elég cpu ideje a számítógépnek létrehozni a Podot, de ezt kézi megfigyeléseim során elvetettem. Másik probléma a Kubeless esetében, hogy az Nginx Ingress Controller minden beérkező kérésről naplóbejegyzést ír. Ennek következményeképp a Podja Evictelődik, mert túl sok tárterületet használ. A degrad\'al\'odott teljes\'itm\'eny, melyet ez esetben lehetett tapasztalni, \aref{fig:jmeter-kubeless-hello-hatodik-rps-chart} \'abr\'an l\'athat\'o.
|
||||
Sajnos, a Kubeless esetében többször előfordult, hogy csak egy Podot hozott létre az egész mérés során. Ez nem függött attól, hogy mennyi ideig tartott a mérés. Miután véget ért a terhelés, rövid időn belül létre jött a következő Pod. Ennek okát próbáltam kideríteni, egyik hipotézisem az volt, hogy nincs elég cpu ideje a számítógépnek létrehozni a Podot, de ezt kézi megfigyeléseim során elvetettem. Másik probléma a Kubeless esetében, hogy az Nginx Ingress Controller minden beérkező kérésről naplóbejegyzést ír. Ennek következményeképp a Podja Evicted \'allapotba ker\"ul, mert túl sok tárterületet használ. A degrad\'al\'odott teljes\'itm\'eny, melyet ez esetben lehetett tapasztalni, \aref{fig:jmeter-kubeless-hello-hatodik-rps-chart} \'abr\'an l\'athat\'o.
|
||||
|
||||
\begin{figure}[!ht]
|
||||
\centering
|
||||
|
Loading…
Reference in New Issue
Block a user