diff --git a/src/.kile/thesis.kilepr.gui b/src/.kile/thesis.kilepr.gui index b855f1d..83f4f61 100644 --- a/src/.kile/thesis.kilepr.gui +++ b/src/.kile/thesis.kilepr.gui @@ -2,7 +2,7 @@ kile_livePreviewEnabled=true kile_livePreviewStatusUserSpecified=true kile_livePreviewTool=LivePreview-XeLaTeX -lastDocument=content/theory.tex +lastDocument=content/results.tex [document-settings,item:../../thesis-template-latex/src/thesis.tex] Bookmarks= @@ -117,14 +117,14 @@ order=1 [item:content/appendices.tex] open=true -order=6 +order=7 [item:content/closing.tex] open=true -order=5 +order=6 [item:content/create-functions.tex] -open=false +open=true order=4 [item:content/introduction.tex] @@ -137,7 +137,7 @@ order=3 [item:content/results.tex] open=true -order=4 +order=5 [item:content/theory.tex] open=true @@ -149,7 +149,7 @@ order=-1 [item:thesis.tex] open=true -order=7 +order=8 [view-settings,view=0,item:../../thesis-template-latex/src/thesis.tex] CursorColumn=32 @@ -160,8 +160,8 @@ TextFolding=[] ViMarks= [view-settings,view=0,item:content/abstract.tex] -CursorColumn=113 -CursorLine=12 +CursorColumn=0 +CursorLine=24 Dynamic Word Wrap=false JumpList= TextFolding=[] @@ -176,12 +176,12 @@ TextFolding=[] ViMarks= [view-settings,view=0,item:content/appendices.tex] -CursorColumn=29 -CursorLine=12 +CursorColumn=18 +CursorLine=190 Dynamic Word Wrap=false JumpList= TextFolding=[] -ViMarks=.,12,28,[,12,28,],12,28 +ViMarks=.,181,0,[,181,0,],181,9 [view-settings,view=0,item:content/closing.tex] CursorColumn=46 @@ -192,12 +192,12 @@ TextFolding=[] ViMarks=.,17,51,[,17,47,],17,51 [view-settings,view=0,item:content/create-functions.tex] -CursorColumn=0 -CursorLine=56 +CursorColumn=57 +CursorLine=3 Dynamic Word Wrap=false JumpList= TextFolding=[] -ViMarks=.,32,310,[,32,307,],32,310 +ViMarks=.,3,171,[,3,167,],3,171 [view-settings,view=0,item:content/introduction.tex] CursorColumn=4 @@ -208,24 +208,24 @@ TextFolding=[] ViMarks=.,0,0,[,0,0,],0,26 [view-settings,view=0,item:content/preparation.tex] -CursorColumn=86 -CursorLine=20 +CursorColumn=134 +CursorLine=114 Dynamic Word Wrap=false JumpList= TextFolding=[] -ViMarks=.,20,0,[,20,0,],20,0 +ViMarks=.,116,0,[,116,0,],116,0 [view-settings,view=0,item:content/results.tex] -CursorColumn=28 -CursorLine=4 +CursorColumn=888 +CursorLine=91 Dynamic Word Wrap=false JumpList= TextFolding=[] -ViMarks=.,4,28,[,4,28,],4,28 +ViMarks=.,91,887,[,91,876,],91,887 [view-settings,view=0,item:content/theory.tex] -CursorColumn=13 -CursorLine=33 +CursorColumn=374 +CursorLine=122 Dynamic Word Wrap=false JumpList= TextFolding=[] diff --git a/src/content/results.tex b/src/content/results.tex index 9984038..41dae16 100644 --- a/src/content/results.tex +++ b/src/content/results.tex @@ -69,29 +69,50 @@ Korábbi mérések során a prímszámoló függvény egy Python folyamatot hasz Kíváncsi voltam, egyes mérések során milyen belső állapotai vannak a Knative egyes alegységeinek. Azért, hogy ezeket megfigyelhessem, telepítettem a Knative Monitoring egységét. Ez után újra elvégeztem bizonyos méréseket. Először a prímszámoló függvény viselkedését vizsgáltam meg. Érdekes, hogy a Workeren elérhető húsz magból összesen hetet sem használnak. -%TODO - +Az \ref{fig:grafana-isprime-controllvsdata} ábrán látható, hogy a függvényt kiszolgáló Podok és a Knative rendszer processzorhasználata hogyan alakul egymáshoz képest. Érdekes, hogy együtt is csupán körülbelül tíz processzormagot használnak. A Control Plane az ábrán a Knative Serving egyes komponenseit, az Istio-t, a monitoring eszközöket és a Kubernetes beépített részeit jelenti. A lenti ábrán látható ezen komponensek között miként oszlik el a processzorhasználat. -A fenti ábrán látható, hogy a függvényt kiszolgáló Podok és a Knative rendszer processzorhasználata hogyan alakul egymáshoz képest. Érdekes, hogy együtt is csupán körülbelül tíz processzormagot használnak. A Control Plane az ábrán a Knative Serving egyes komponenseit, az Istio-t, a monitoring eszközöket és a Kubernetes beépített részeit jelenti. A lenti ábrán látható ezen komponensek között miként oszlik el a processzorhasználat. +\begin{figure}[!ht] +\centering +\includegraphics[width=120mm, keepaspectratio]{figures/grafana-isprime-controllvsdata.png} +\caption{Processzorhaszn\'alat ar\'any\'anak alakul\'asa pr\'imsz\'amol\'o f\"uggv\'eny terhel\'ese sor\'an} +\label{fig:grafana-isprime-controllvsdata} +\end{figure} -%TODO - +Látszik, hogy a Knative Serving komponense használja leginkább a processzort. A kubectl top parancsot használva azt is sikerült kideríteni, hogy pontosan az Activator nevű komponens miatt emelkedik ki a Knative processzorhasználata. A Knative Activator felel a metrik\'ak autoscaler fel\'e tov\'abb\'it\'as\'a\'ert, valamint inaktiv Revision-\"okh\"oz \'erkező k\'er\'esek bufferel\'es\'e\'ert. A Grafana által generált grafikonok egyikén megfigyelhető, hogy a pánik mód mikor kapcsolt be és meddig tartott. Ez a lenti grafikonon látszik. A pánik mód a specifikáltak szerint viselkedik, \aref{fig:grafana-isprime-controlplane-namespaces} ábrán az is látszik, miként alakult a Podok száma a mérés során. -Látszik, hogy a Knative Serving komponense használja leginkább a processzort. A kubectl top parancsot használva azt is sikerült kideríteni, hogy pontosan az Activator nevű komponens miatt emelkedik ki a Knative processzorhasználata. A Knative Activator felel a metrik\'ak autoscaler fel\'e tov\'abb\'it\'as\'a\'ert, valamint inaktiv Revision-\"okh\"oz \'erkező k\'er\'esek bufferel\'es\'e\'ert. A Grafana által generált grafikonok egyikén megfigyelhető, hogy a pánik mód mikor kapcsolt be és meddig tartott. Ez a lenti grafikonon látszik. A pánik mód a specifikáltak szerint viselkedik, az xy ábrán az is látszik, miként alakult a Podok száma a mérés során. +\begin{figure}[!ht] +\centering +\includegraphics[width=120mm, keepaspectratio]{figures/grafana-isprime-controlplane-namespaces.png} +\caption{Ir\'any\'it\'asi rendszerek processzorhaszn\'alat\'anak alakul\'asa pr\'imsz\'am\'aol\'o f\"uggv\'eny terhel\'ese sor\'an} +\label{fig:grafana-isprime-controlplane-namespaces} +\end{figure} -%TODO - +Az \ref{fig:grafana-isprime-panik} \'es \aref{grafana-isprime-jmeter} \'abr\'akon l\'atszik, hogy a p\'anik m\'od sor\'an l\'etrej\"ottek r\"ovid idő alatt a Podok, majd ut\'ana v\'egig k\"ozel annyi sz\'am\'u Pod volt. Az is megfigyelhető, hogy b\'ar a hosztg\'ep nincs kihaszn\'alva, a f\"uggv\'eny teljes\'itm\'enye degrad\'al\'odott. + +\begin{figure}[!ht] +\centering +\includegraphics[width=120mm, keepaspectratio]{figures/grafana-isprime-panik.png} +\caption{Knative p\'anik \'allapot\'anak alakul\'asa pr\'imsz\'amol\'o f\"uggv\'eny terhel\'ese sor\'an} +\label{fig:grafana-isprime-panik} +\end{figure} %TODO -A fenti k\'et \'abr\'an l\'atszik, hogy a p\'anik m\'od sor\'an l\'etrej\"ottek r\"ovid idő alatt a Podok, majd ut\'ana v\'egig k\"ozel annyi sz\'am\'u Pod volt. Az is megfigyelhető, hogy b\'ar a hosztg\'ep nincs kihaszn\'alva, a f\"uggv\'eny teljes\'itm\'enye degrad\'al\'odott. +A Knative rendszer sz\'amos m\'odon sz\'amontartja a f\"uggv\'enybe \'erkező konkurens k\'er\'esek sz\'am\'at. P\'eld\'aul, mint ahogy az \aref{fig:grafana-isprime-observedconcurrency} \'abr\'an l\'athat\'o, az Average Panic Concurrency egy r\"ovidebb idő alatt sz\'amolt \'atlag, mint ahogy a p\'anik sk\'al\'az\'ashoz sz\"uks\'eges. Az Average Concurrency egy sokkal lassabban v\'altoz\'o \'ert\'ek, ez az, ami az eddigi m\'er\'esek sor\'an ki lett nyerve az autoscaler napl\'of\'ajljaib\'ol. A Target Concurrency \'ert\'ek a YAML \'allom\'anyban be\'all\'itott \'ert\'ek. Az Excess Burst Capacity \'ert\'ek reprezent\'alja a k\"ul\"onbs\'eget a f\"uggv\'eny tartal\'ek kapacit\'asa - mennyi t\"obblet terhel\'est k\'epes a f\"uggv\'eny feldolgozni, mielőtt t\'ulterhelődik - \'es a be\'all\'itott c\'elkonkurencia k\"oz\"ott. Amennyiben ez a sz\'am negat\'iv, az Activator komponensen is \'atmennek a be\'erkező k\'er\'esek. - +\begin{figure}[!ht] +\centering +\includegraphics[width=120mm, keepaspectratio]{figures/grafana-isprime-observedconcurrency.png} +\caption{Knative \'altal sz\'amolt konkurencia \'ert\'ekek} +\label{fig:grafana-isprime-observedconcurrency} +\end{figure} -A Knative rendszer sz\'amos m\'odon sz\'amontartja a f\"uggv\'enybe \'erkező konkurens k\'er\'esek sz\'am\'at. P\'eld\'aul, mint ahogy az a fenti \'abr\'an l\'athat\'o, az Average Panic Concurrency egy r\"ovidebb idő alatt sz\'amolt \'atlag, mint ahogy a p\'anik sk\'al\'az\'ashoz sz\"uks\'eges. Az Average Concurrency egy sokkal lassabban v\'altoz\'o \'ert\'ek, ez az, ami az eddigi m\'er\'esek sor\'an ki lett nyerve az autoscaler napl\'of\'ajljaib\'ol. A Target Concurrency \'ert\'ek a YAML \'allom\'anyban be\'all\'itott \'ert\'ek. Az Excess Burst Capacity \'ert\'ek reprezent\'alja a k\"ul\"onbs\'eget a f\"uggv\'eny tartal\'ek kapacit\'asa - mennyi t\"obblet terhel\'est k\'epes a f\"uggv\'eny feldolgozni, mielőtt t\'ulterhelődik - \'es a be\'all\'itott c\'elkonkurencia k\"oz\"ott. Amennyiben ez a sz\'am negat\'iv, az Activator komponensen is \'atmennek a be\'erkező k\'er\'esek. +Másodikként az echo típusú függvény terhelése alatt vizsgáltam meg a Knative belső működését. Az \ref{fig:grafana-hello-controllvsdata} \'abr\'an megfigyelhető, hogy ez esetben a Control Plane processzorhaszn\'alata t\"obb volt, mint a Data Plane-\'e. A m\'er\'es sor\'an ez esetben is romlott a monitoring rendszer telep\'it\'ese ut\'an. -Másodikként az echo típusú függvény terhelése alatt vizsgáltam meg a Knative belső működését. A lenti \'abr\'an megfigyelhető, hogy ez esetben a Control Plane processzorhaszn\'alata t\"obb volt, mint a Data Plane-\'e. A m\'er\'es sor\'an ez esetben is romlott a monitoring rendszer telep\'it\'ese ut\'an. - -%TODO - +\begin{figure}[!ht] +\centering +\includegraphics[width=120mm, keepaspectratio]{figures/grafana-hello-controllvsdata.png} +\caption{Processzorhaszn\'alat ar\'any\'anak alakul\'asa echo t\'ipus\'u f\"uggv\'eny terhel\'ese sor\'an} +\label{fig:grafana-hello-controllvsdata} +\end{figure} diff --git a/src/figures/grafana-hello-controllvsdata.png b/src/figures/grafana-hello-controllvsdata.png new file mode 100644 index 0000000..1309311 Binary files /dev/null and b/src/figures/grafana-hello-controllvsdata.png differ diff --git a/src/figures/grafana-isprime-controllvsdata.png b/src/figures/grafana-isprime-controllvsdata.png new file mode 100644 index 0000000..a68caf1 Binary files /dev/null and b/src/figures/grafana-isprime-controllvsdata.png differ diff --git a/src/figures/grafana-isprime-controlplane-namespaces.png b/src/figures/grafana-isprime-controlplane-namespaces.png new file mode 100644 index 0000000..269b27f Binary files /dev/null and b/src/figures/grafana-isprime-controlplane-namespaces.png differ diff --git a/src/figures/grafana-isprime-observedconcurrency.png b/src/figures/grafana-isprime-observedconcurrency.png new file mode 100644 index 0000000..080846e Binary files /dev/null and b/src/figures/grafana-isprime-observedconcurrency.png differ diff --git a/src/figures/grafana-isprime-panik.png b/src/figures/grafana-isprime-panik.png new file mode 100644 index 0000000..1dc0890 Binary files /dev/null and b/src/figures/grafana-isprime-panik.png differ