From c24b2030e0225b2d4a215c480a30b62cee7e90ef Mon Sep 17 00:00:00 2001 From: Nitish Tiwari Date: Sat, 24 Aug 2024 14:44:42 +0530 Subject: [PATCH] add sidecars to query node --- benchmarks/README.md | 90 ------------------- helm-releases/parseable-1.5.0.tgz | Bin 0 -> 48265 bytes helm/Chart.yaml | 4 +- helm/templates/ingestor-statefulset.yaml | 1 + helm/templates/querier-statefulset.yaml | 26 +++++- helm/templates/standalone-deployment.yaml | 1 + helm/values.yaml | 39 +++++++++ index.yaml | 101 +++++++++++++--------- 8 files changed, 128 insertions(+), 134 deletions(-) delete mode 100644 benchmarks/README.md create mode 100644 helm-releases/parseable-1.5.0.tgz diff --git a/benchmarks/README.md b/benchmarks/README.md deleted file mode 100644 index 0f07e98d6..000000000 --- a/benchmarks/README.md +++ /dev/null @@ -1,90 +0,0 @@ -## Benchmarking - -We use K6 to benchmark Parseable. This document contains the results of our benchmarks and steps to run your own benchmarks in your environment to understand Parseable's performance characteristics. - -#### Configuration - -- Parseable version: `v0.3.0` -- Server Instance: AWS EC2 `c4.2xlarge` (8 vCPU, 15 GiB RAM). Refer further details [here](https://aws.amazon.com/ec2/instance-types/). -- Client Instance: AWS EC2 `c4.8xlarge` (36 vCPU, 60 GiB RAM). Refer further details [here](https://aws.amazon.com/ec2/instance-types/). - -#### Conclusion - -- Parseable is CPU bound. CPU was 100% with lot of memory and disk iops left. -- Since we had a single client, it needed much more CPU to saturate Parseable. It would be ideal to test with distributed clients. But we expect similar performance from Parseable. -- Parseable reached `32829.535634/s` in this setup. - -#### Detailed Outcome - -```bash -k6 run load.js --vus=700 --duration=5m - - /\ |‾‾| /‾‾/ /‾‾/ - /\ / \ | |/ / / / - / \/ \ | ( / ‾‾\ - / \ | |\ \ | (‾) | - / __________ \ |__| \__\ \_____/ .io - - execution: local - script: load.js - output: - - - scenarios: (100.00%) 1 scenario, 700 max VUs, 5m30s max duration (incl. graceful stop): - * default: 700 looping VUs for 5m0s (gracefulStop: 30s) - - - data_received..................: 1.5 GB 5.0 MB/s - data_sent......................: 8.0 GB 27 MB/s - http_req_blocked...............: avg=19.35µs min=0s med=4.78µs max=431.69ms p(90)=7.35µs p(95)=9.81µs - http_req_connecting............: avg=3.79µs min=0s med=0s max=73.48ms p(90)=0s p(95)=0s - http_req_duration..............: avg=76.17ms min=344.43µs med=65.01ms max=636.72ms p(90)=128.99ms p(95)=149.54ms - { expected_response:true }...: avg=76.17ms min=344.43µs med=65.01ms max=636.72ms p(90)=128.99ms p(95)=149.54ms - http_req_failed................: 0.00% ✓ 0 ✗ 9858220 - http_req_receiving.............: avg=541.7µs min=0s med=22.49µs max=218.44ms p(90)=164.95µs p(95)=389.52µs - http_req_sending...............: avg=90.17µs min=0s med=21.07µs max=485.95ms p(90)=40.19µs p(95)=146.16µs - http_req_tls_handshaking.......: avg=0s min=0s med=0s max=0s p(90)=0s p(95)=0s - http_req_waiting...............: avg=75.54ms min=299.31µs med=64.81ms max=482.88ms p(90)=127.43ms p(95)=147.69ms - http_reqs......................: 9858220 32829.535634/s - iteration_duration.............: avg=426.2ms min=195.51ms med=422.99ms max=1.18s p(90)=499.06ms p(95)=522.91ms - iterations.....................: 492911 1641.476782/s - vus............................: 700 min=700 max=700 - vus_max........................: 700 min=700 max=700 - - -running (5m00.3s), 000/700 VUs, 492911 complete and 0 interrupted iterations -default ✓ [======================================] 700 VUs 5m0s -``` - -#### Grafana Dashboard - -![Grafana Dashboard](https://raw.githubusercontent.com/parseablehq/.github/main/images/benchmarks/grafana.png) - -NOTE: Benchmarks are nuanced and very much environment specific. So we recommend running benchmarks in the target environment to get an understanding of actual performance. - -### Run your own load tests with K6 - -We have created a [K6](https://k6.io) script to load test a Parseable instance. The script is available [here](https://raw.githubusercontent.com/parseablehq/quest/main/testcases/load.js). - -#### Pre-requisites - -- [K6](https://k6.io) installed. -- [Parseable](https://parseable.io) installed and running. - -#### Start the script - -Make sure to change the env vars as per your setup. Also fine tune `vu` and `duration` as per your needs. - -```sh -export P_URL="https://demo.parseable.io" # Parseable URL -export P_STREAM="test" # Parseable stream -export P_USERNAME="admin" # Parseable username -export P_PASSWORD="admin" # Parseable password -export P_SCHEMA_COUNT=20 # Number of different types of json formats to be sent to this stream -k6 run --vus=700 --duration=5m https://raw.githubusercontent.com/parseablehq/quest/main/testcases/load.js -``` - -## Elastic - -Currently Elastic public benchmarks published here: [https://www.elastic.co/blog/benchmarking-and-sizing-your-elasticsearch-cluster-for-logs-and-metrics](https://www.elastic.co/blog/benchmarking-and-sizing-your-elasticsearch-cluster-for-logs-and-metrics). - -As per this benchmark, Elastic is able to ingest 22000 events per second per node. Node specs: 8 vCPU, 32 GiB RAM. diff --git a/helm-releases/parseable-1.5.0.tgz b/helm-releases/parseable-1.5.0.tgz new file mode 100644 index 0000000000000000000000000000000000000000..8cfa45480ca6a5156858523e27360529349fd78c GIT binary patch literal 48265 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%0A%6otwFe@JVq5T1FvR@?$Hd6MhjIx_J#r;~kfa2u zNY}F~qYFt*pz$0p07(e+Q?4-OgsFb3Nwst!d6c4zgypZgaGMi_TbBE4L$`ElXc$s1 zV>ph(IbaO5g`;yaVhK?l&<61ql9?35>VxXq$3jou*>CTmKdRMJw_AK+zi2cjJhON% zVqVp~+{Myyz2w!tm+lq=7Ozl0w`s|XO<2T|9DKIB;QgtF4j223fFP;_X`j?m)AEA5 z9AO36EEpwV%+Rda&QRinP6-!y8dr5jj#VOMid z(jcR@>9lkt4@E2Wk7hzy1E@qO0ixxfYwEcUx+c7c<^&A}w{X_g?I?!P_S3BoU{cw* z>%8k?pMTSQX}y&yXCCCTe+j# z9muVv;0&m6Nq3sHy>hiKI(J5~2gUNtRgU1fdo4m`{|38}6+9hGi)CB;lA}XI3ro2? z*n?KpT(#<`ro}oBi0TIFJRwT154ur+xQg>b?*7m;N-H`-EF7>(ZwLp0THDP}=2IgD zxVdGYVlav(p~X$lZNon`b_EkZ<2yISSI22GCPOsX{hR&PG5yQGRap=^L$kbrU`|;U zSO}u#0?J0v#$hS9mExFHd9DkhfU?6}6reP^t(3f0YT(y+l@yw~p*u*~8>DzL z*EnyeH8SEqBrJ`=HoGu0t2tGee%rR$s94Zy*vGMoh((Fz6B{JTaN9^3_TRoWdxGHL zLln+GGA6#KA>nf_$kZXsNgD0*_bie{${&8_BpIT9shf+f^z+4EW2R5|(pLHiRoUrF zeDYR|RfwzZ%ul=;66+fC$-nc{)HPKzs-w)3uLj^^%ZD29OC4ihn|+^S;a8pw$?fUE zD_i<4Ve7Z7wcqmgey+t|)d*MH{{6Ur^wI5GyzFu=834K_fK@pBm5l+L%>k==`{;&& zHKu`8xIUthV2znz1C|eMFjzJjbZ+fMI}VB4&zvY*l(HR8;d-`;9S*eXTHDkdU6Pxx zrT|S=Hm;2gwDxdzHmGb7Q)Z584Po*Dy`3ctw07e5&e+4~ThEUrYZw}Fl4Jn`wMmSe zpAPzNZV=Lg2K`rl{t#*s8mzI(0yjjb%YtQ>u+kdZLYEWjPfXwj!y^h3fr&=#IOf4i zj0&na>MPoU6#3q=IYHgp)I8>v86ZUfToE|LJ(P#RG8eM%0xr%;;i16cM z=3nGvt~8?k-e9LVgbQ`*`JmS5)?q*$ZTM<9Jid1-(vhTW%HKk$?4jz2>gs$|i{kPJ zb5;czv2s^MsN}Hf(3G#jbyW$1jPq*o*me9@A3GfN`g!1|F8+JQ@OR&TIC*p25m(~I zZ7j(D(cA8A7vjIa*cq(jzdy+H`Ez!+L+w*Y{zsBFy1s6;>?}8@Ase$c>Yy)(MgfTg z+TJmRma4D49t4Y3b{zFt>Ek*oHB;x0loEliubqln_@<5y=&I^}{)|Wz0HDVn!oT#h zc>kYHNEpi-r-*Nu3Zi-c4|WH;h5bM1Z4Y+V`~M-H&!4-`TW_vnBd@Zx>98U?t>@kA z>(=Mbo>2<5^+#Iw&71YJqD9p)b@aENLXfP z19I7I-n1}E!*GuNNO7pdc{q*%?M~|-M8SsgLbf2gz|lGJamoqeY)WibNoCDLNf;<+ zG`O1>0R`pg*|`#4zkYu#%hG5JqO;9T>u`j0o*xB7%Oj1vOIZ+zEWRZOglvt!$T^c?5p`oGrZE4D3sBfm-0cpg&S3NMSI_EvO6ufp;J&}KDyKAXlYB9U?AaYEtH%u>}U zFR*f4ZKOPr(Eib3)dE&uJ24A_tm3%}$eqJ>22?J!&VgkT)7d{d)CGCxN6Zb-?yTRf zKuE4QPNp-G9I$CDPx1EOU-dhKzND%)*q`!DbB4HX0wOv5c0TCthjSvZ`5FbzM)y`6 z(;tuaZJBZ1K-yyEn~$6Yr8^sRYxE&?L%6;C5V{Q&$I<;N2XnA!Fn=&=KO7;PBzSJw zU?`n$ro}zWh_j{DJFDN}pxjg=iIDuB;Al+HlZ^EIM5AEK`pqRjRMiN&R#I&}A>@w& z5Y*Q4@3twa%8E1&iPJz^-?BPJ-6{LnhTFEe2Y|Q%H(uKhagbL3_@|j z1oK%qL?;JFS*nbqTf@z|t%z&sXA=#UV<%TQ7!Lp=nYW{sECj?~dU@AOj@e&@^-QCH zT%iu?Wt_jNZhz~e;vS)LV;GBq;VTEIyBVHMF#n0n^U`%gr`I73@}l{QGe~)>4sK3A z5U0^NBsTHLX$Q^+y=Zh;JHGDj@QN3wd|{_o_Rp`6+MAo2`5s{!qV|EAqo*95Nz~5}Ta>NBrz_OQWi(74`-a-2+!4?{kOEjfXDhS^KpC2DbU|(q#j5A4L zgxdQ@he$9qqvR6NNExb|yz}UMj*>KrXfz(Sb7J@;vsMC{Qs_&6np~lcYF~dFM=KHNYr?YL5v8Q7?4K=6v^CuHNQxmj`up|&?#eFPVrg<5KJCKvgcT=AC#Iu#J*&Ie3E zM!4jUSGE| zH?k!d4YLY$oh1f58&Z?pNI7n0tOpf5=bh!kt-SI&3%f|To-84ThDy2fYOBl)RtdpX zEy(b}i6{<&m5SIJ3$LD3%gg^+nuKTCSihK+yWPL>?l{5malja-f z^7qfGmJXfE?m>1v$l5NhSn@~lR;4SoC8cR^qIQ-dT5am<>(+lXjPENIfW=zWO{2W{ za#BFbx$pf)QHoaXLuiU>JVeMp#7YQI)9X+Tu&JPDUKcmj+r%7Oc~QCjb!o7?%GZZp z9soEu$@-7N_Poh{wKb8JjhMZvHqkS=1uGX^^&DdwZ4a3 zf(`=4N}>Itv%S;qw)f=!PooXnuv!8`Z;ucWHP=Wt9`)2 zkoaOh4E0wSG^m$yV)?h}s%oYHU+seh@FX7?5^*X*emWxw9nEcr9EpjhibHp!n*~q| zER?N2s2T*PX%Y@m+vXTe6_;h~)Uu&N`K4yZ=Ozj5mxGrBxn$b*^4Fw!5lWRz?EPR= z+@a1sw-JrlDd(X*8?}8hMeDgoSQMvl{;N{&H|$tBc;xkUs~9)(#=zZZ1QN0vT3|W2zEvR)$gLBKlo~BY z?9yl6atmRv`c~?W7N1}PRfQRabJQ(k1sPQb<7y_&*Vq3GpWwmnUb(7jz1=Dv>i36A zyH((qvh`uF+tPx{S9ocTOtyIq&q`ITb^rOqL=7|Jz=S098lcHBzce((^38_D2`AC4 zvN8RBMSR^w^^E*cV{x6aX=bhe^5)>=!^hL(H*dc`egEP0o74CE@7`qWlao*0JmBV{ zleQP$LUINbfp`lXI;iO;}RY{~ZY?f4RCfiA&^ts+i!JTX^YVbfFkj;0& z#zS6dvTs$EI|kY)OdG%qb_Ro;rQn2Y%mwC?I!L>{o#g=WI837pZ$kXqzV&oWmxZ7N z7Cfj0(;w_E2WHMgHm(Ent;#I67)+LLtP;%LvS5nI4r-A4who%TOjjWIchYRlLFooZ z(M?wbJ1G$yk zWn|7A6;QLRseo*y+SepCv?WEw^o9$BcxF_U(x9^SE)l*FdE}5x#9d21z1nu2;l#6v zmeVApm15)i_9|e}^9ES-d`VD}c^UC)NG0xO0W3b}ji7+%X&BJDT~>~dS9G&nVapaH z(q#q+r#EIZzk911JG(TWf) zkSd<~d)78{)DSc_((+DhT7tdR?N!%BHiZGuSH`z87vSLM$$ z)ZUjr8ihj{hfwQ;Tiq;~#$pbMbUzo)oeEkQC+v6P3lbQ-oD*`1lP9;*SniDSbnEYM z>|W6#XDrI{|HARH7*4Lhyi04k|Lp1BRE@%`C^C;gfBU+Orp*Ao@feIrX2xC|)^a-=@Avtk? zxMQZN!bw#YCTT!&=?>8sU|`}9Ju8Z>9IG;mx7k6ijq^PSmvHtb!%_}MV^ViylDeZB z(}en@?x-fIJF=6y8w7F#xa^!Q<#u;uT`JV9Q&oRclCB0guCPl1a>QfCk>IpsoS_OA zzw6ING}h3xBOOz~3Ia7H7CW5~ziA|F$(RC@*E4`XDAokTmWxeUK!!;8aS^O7T2lhD z29S=7tQMp#W^)ab>J$3g015)OLPCF(C-g^(_ne*@c~)^E^Mr+`C6QN_Ed z$k;_1qxP)dM(qqr8$DCrIu-WEo90_*a}$(Fc8ey_Z};@sUvd$QQOBMgn>WVM?DabAz^=7P(e&6<`|h44&i_2a^$i(-Md$zC_DThFL6R+CIct`dd0$6C38Vj=au~Hb+z+63*!7_kumC|4xet$vu{l`9#*3W}J%kzIXw*yFtlyJ0ND4CFe z@)!$$Quu(w@ErRWX>1x4bV}sl_#u@;x?6lNnF5lO-^&prK2&HS?dugvt`+$#Awguy zgV(Qu5k$NX7Aam3abVm$Wg^nyGrwcP-on%jcek@10^HMLPYoXWI~o)blojTvZ(d{H zC$S*GX^iKRH9Y0?Pl8_dza3;oF=2paIHUpU_qhF%opTlvLC{`LcXpJ3EGbay#4IBg z5D49^f1lGRK*Qk>l7c(4APePoU-FlybFE8e(=$A1Zby=NAD#W(2i|;SksPW#JE&D3Z&bPW1?6$dV9TI zPkGOx$w~`SLx-=`i?pU;bumO>Uzf0R8kPF#fk4+B2tdNT%*TZ%Gt}>)Q>U%Ysqo{@ z!r)!rgy0|~oYzP3DpSNVfmH%$x9g32@Q%8y+IalFE+7MU)LYZa&;FU+n5+sAI{cfnR#w9HnA|i2cwh9rYeJcsygLRpSKvdMPXr^ zG?yJ4Od(Wf6-wpNEJlA_()On+tg9;95Zrauj*;Mc|dDq4z6*m_QD$ z{J3$17mRW-wrW1a{ef$^RuPTVU5&L-Nz0}NcF?Eh;G^XQp9dk$A>`3P^O5pKg%{nF zCtYB)A!d}JT$X0Rs-R;mx?|`@Tg)m}M_sJdvs9T0*33?AFvjBKd|omxqtlz^<1;oj zcORh|-PK+lu(7a9D#AAEnXHHf=)y0AaI6IE`nE3%xfIl~61L;KzAWg9Fpt$EV!O02 z4cra9{ce= z+ABncRHdExkT+^|Es1`_XLhG*PZJ1ipy%irB$bj9cXr-lNU?~n0J!M>z8k97%D$i65)lwKG&v?DuM_Z4!+aQ zhKEObz@2xE7?i6o-!zTC$5R^4?J;oQH8x$YzH-x)RA*giE}mgYNw%o!7D)Ap)R0%J z*mS&#qNh>$X2Yw(a-mA6IxIm^e^UZ@_ez^4Wldbv&6Fj)mAaU?qe`BuxTqItsAuaz;-cE4zMiAzh>Kc{`g&C=gSe<6xJ90;+qUBnh-I}6 zRa%C)s8pzJtY{6ivPp>cA1jz;MN@f-b(~jiJFJ>^66YMI_YpsdQ&( z3@+D5M{z0`Xdm5iIAIs0S{zeE#nguycTSm?*#9?{`$A0Ff>Pz^KL=9IP$bNh;5iusw71Oy4H3S-uP>Ghfd znf*Y8iDkBF2_=;r=h+1FpUAw_uFapfi(&dK)Y=xvC#Pum3UMNC4z0fb3pOzwp{k+z zcG;mR-L4`cE?IIRNzTPf6{WH7$lR)$+qu)`&WXT%H`1J4ggdD12 zeE3-5B^q9}6mEI(D|jd_*gm)0Ia-IIz!uz-YTGRP3Dyt;VSLhrJ=|{W?NV9EPfQpu zdXVW_@WnP(^^_}>lN&d$Rq!hF6OwzAb@Jb}=XLfYNkg)*4-Rsw7pf)sR~f~L5SD#x zjK!qn`lH){Z>}}4XJrnCSV~o{HhT5Q?XW81dTaZ)$W{lD)W_tPDt#`&~A)Y)~$skPUf^S6>@at+jF z-Pd$*AXh}W#k$fi8A5FuYbQ$^RMmibUez%;_R)QB%VXUTf+pfXisU<+yciEg<{_O=GGB1O&ryFPSZt$Df;}+v69bCN z_i@4pCh5IprG;jQPpkeEiN!;zUJ?B0N1^U55gOpib=H^AsG1XBtj?{Xk|!3Jw@86c zx3F-}INE^ch}FWk0Kg~_T1S_e5BKMa4-F0jw&4sH35<4(8ELD4ZffQIN8x+bc+t)p z5BvG%48!K+^E=>?7tcB7GdP)y9VGD>!M8r;b^xLfym~}bmG7 z&1LHqv%RRqg(k0I)U~QESffPw=6`f_u9d0iLhpR(YE@C=zc%cxwAxHJ%eV_av~7k2 zH93slem_m=3u(-tod_8T9Q=Bx=LbHIKM{A@zSl#0RZRyF;TP9Qob>#8!UYX@{q50v zV$}sZRf_OQJYh|)cp4LCE+0&ax0jHN1)wlampUHAzdlg5tx$*z`M+di6)*71n}8B_ z(*BE(;iuC~GbiBHh9)W2ukbuYobVS6rKxE8N71J+c{7#(h2+anG+!&BgOE=}UysC^_Mzi$Ri`6{@$_&h=
!IfqC@;O0ZCi)Z)MP*lw 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 BDxv@Y literal 0 HcmV?d00001 diff --git a/helm/Chart.yaml b/helm/Chart.yaml index 303159425..77174f66b 100644 --- a/helm/Chart.yaml +++ b/helm/Chart.yaml @@ -2,8 +2,8 @@ apiVersion: v2 name: parseable description: Helm chart for Parseable Server type: application -version: 1.4.1 -appVersion: "v1.4.0" +version: 1.5.0 +appVersion: "v1.5.0" maintainers: - name: Parseable Team email: hi@parseable.com diff --git a/helm/templates/ingestor-statefulset.yaml b/helm/templates/ingestor-statefulset.yaml index 3cb8df000..29038762c 100644 --- a/helm/templates/ingestor-statefulset.yaml +++ b/helm/templates/ingestor-statefulset.yaml @@ -18,6 +18,7 @@ metadata: name: {{ include "parseable.fullname" . }}-ingestor namespace: {{ .Release.Namespace }} labels: + {{- .Values.parseable.highAvailability.ingestor.labels | toYaml | nindent 4 }} {{- include "parseable.ingestorLabels" . | nindent 4 }} spec: selector: diff --git a/helm/templates/querier-statefulset.yaml b/helm/templates/querier-statefulset.yaml index 35aee302a..4e35abf95 100644 --- a/helm/templates/querier-statefulset.yaml +++ b/helm/templates/querier-statefulset.yaml @@ -18,6 +18,7 @@ metadata: name: {{ include "parseable.fullname" . }}-querier namespace: {{ .Release.Namespace }} labels: + {{- .Values.parseable.podLabels | toYaml | nindent 4 }} {{- include "parseable.querierLabels" . | nindent 4 }} spec: selector: @@ -75,9 +76,25 @@ spec: - mountPath: "/parseable/hot-tier" name: hot-tier-volume {{- end }} - volumes: - - emptyDir: {} - name: stage-volume + {{- if .Values.parseable.sidecar.enabled}} + - name: {{ .Chart.Name }}-sidecar + securityContext: + {{- toYaml .Values.parseable.securityContext | nindent 8 }} + image: {{ .Values.parseable.sidecar.image.repository }}:{{ .Values.parseable.sidecar.image.tag }} + imagePullPolicy: {{ .Values.parseable.sidecar.image.pullPolicy }} + command: {{ .Values.parseable.sidecar.command }} + args: {{ .Values.parseable.sidecar.args }} + env: + {{- range $key, $value := .Values.parseable.sidecar.env }} + - name: {{ $key }} + value: {{ tpl $value $ | quote }} + {{- end }} + ports: + - containerPort: {{ .Values.parseable.sidecar.ports }} + resources: + {{- toYaml .Values.parseable.sidecar.resources | nindent 10 }} + volumeMounts: {{ .Values.parseable.sidecar.volumeMounts | toYaml | nindent 10 }} + {{- end }} volumeClaimTemplates: {{- if .Values.parseable.persistence.querier.enabled }} - metadata: @@ -90,4 +107,7 @@ spec: requests: storage: {{ .Values.parseable.persistence.querier.size | quote }} {{- end }} + {{- if .Values.parseable.sidecar.enabled}} + {{- .Values.parseable.sidecar.volumeClaimTemplates | toYaml | nindent 4 }} + {{- end }} {{- end }} diff --git a/helm/templates/standalone-deployment.yaml b/helm/templates/standalone-deployment.yaml index a8a987950..f7e18e8ac 100644 --- a/helm/templates/standalone-deployment.yaml +++ b/helm/templates/standalone-deployment.yaml @@ -18,6 +18,7 @@ spec: {{- toYaml . | nindent 8 }} {{- end }} labels: + {{- .Values.parseable.podLabels | toYaml | nindent 4 }} {{- include "parseable.labelsSelector" . | nindent 8 }} spec: {{- with .Values.parseable.imagePullSecrets }} diff --git a/helm/values.yaml b/helm/values.yaml index 28c4b3877..6d765563e 100644 --- a/helm/values.yaml +++ b/helm/values.yaml @@ -12,6 +12,10 @@ parseable: enabled: false ingestor: port: 8000 + podAnnotations: {} + labels: + app: parseable + component: ingestor count: 3 env: RUST_LOG: warn @@ -107,6 +111,38 @@ parseable: requests: cpu: 250m memory: 1Gi + ## works only when highAvailability is enabled + ## Set it to true if you want to deploy Parseable + ## Query node with a sidecar + sidecar: + enabled: false + image: + repository: busybox + tag: latest + pullPolicy: IfNotPresent + command: [] + args: [] + env: + RUST_LOG: warn + ports: 8000 + volumeMounts: + - name: test-volume + mountPath: /parseable/test + volumeClaimTemplates: + - metadata: + name: test-volume + spec: + accessModes: [ "ReadWriteOnce" ] + resources: + requests: + storage: 1Gi + resources: + limits: + cpu: 500m + memory: 4Gi + requests: + cpu: 250m + memory: 1Gi securityContext: allowPrivilegeEscalation: false podAnnotations: @@ -122,6 +158,9 @@ parseable: fullnameOverride: "" nodeSelector: {} affinity: {} + podLabels: + app: parseable + component: query tolerations: [] ## Use this section to create ServiceMonitor object for ## this Parseable deployment. Read more on ServiceMonitor diff --git a/index.yaml b/index.yaml index f091d7d79..39d36c8dd 100644 --- a/index.yaml +++ b/index.yaml @@ -32,9 +32,32 @@ entries: - https://charts.parseable.com/helm-releases/operator-0.0.1.tgz version: 0.0.1 parseable: + - apiVersion: v2 + appVersion: v1.5.0 + created: "2024-08-24T14:39:26.208185037+05:30" + dependencies: + - condition: vector.enabled + name: vector + repository: https://helm.vector.dev + version: 0.20.1 + - condition: fluent-bit.enabled + name: fluent-bit + repository: https://fluent.github.io/helm-charts + version: 0.25.0 + description: Helm chart for Parseable Server + digest: ab7beedfb98466b174a8378dbffaa52b1978cd70b69b801074cd6cd1f44cf651 + maintainers: + - email: hi@parseable.com + name: Parseable Team + url: https://parseable.com + name: parseable + type: application + urls: + - https://charts.parseable.com/helm-releases/parseable-1.5.0.tgz + version: 1.5.0 - apiVersion: v2 appVersion: v1.4.0 - created: "2024-08-09T17:23:25.962656675+05:30" + created: "2024-08-24T14:39:26.202241069+05:30" dependencies: - condition: vector.enabled name: vector @@ -57,7 +80,7 @@ entries: version: 1.4.1 - apiVersion: v2 appVersion: v1.4.0 - created: "2024-08-09T17:23:25.958634178+05:30" + created: "2024-08-24T14:39:26.197214148+05:30" dependencies: - condition: vector.enabled name: vector @@ -80,7 +103,7 @@ entries: version: 1.4.0 - apiVersion: v2 appVersion: v1.3.0 - created: "2024-08-09T17:23:25.95633497+05:30" + created: "2024-08-24T14:39:26.190692764+05:30" dependencies: - condition: vector.enabled name: vector @@ -103,7 +126,7 @@ entries: version: 1.3.1 - apiVersion: v2 appVersion: v1.3.0 - created: "2024-08-09T17:23:25.954149815+05:30" + created: "2024-08-24T14:39:26.185523233+05:30" dependencies: - condition: vector.enabled name: vector @@ -126,7 +149,7 @@ entries: version: 1.3.0 - apiVersion: v2 appVersion: v1.2.0 - created: "2024-08-09T17:23:25.951298986+05:30" + created: "2024-08-24T14:39:26.178658213+05:30" dependencies: - condition: vector.enabled name: vector @@ -149,7 +172,7 @@ entries: version: 1.2.0 - apiVersion: v2 appVersion: v1.1.0 - created: "2024-08-09T17:23:25.949019291+05:30" + created: "2024-08-24T14:39:26.173782373+05:30" dependencies: - condition: vector.enabled name: vector @@ -172,7 +195,7 @@ entries: version: 1.1.0 - apiVersion: v2 appVersion: v1.0.0 - created: "2024-08-09T17:23:25.945466232+05:30" + created: "2024-08-24T14:39:26.168788375+05:30" dependencies: - condition: vector.enabled name: vector @@ -195,7 +218,7 @@ entries: version: 1.0.0 - apiVersion: v2 appVersion: v0.9.0 - created: "2024-08-09T17:23:25.941900474+05:30" + created: "2024-08-24T14:39:26.162906325+05:30" dependencies: - condition: vector.enabled name: vector @@ -218,7 +241,7 @@ entries: version: 0.9.0 - apiVersion: v2 appVersion: v0.8.1 - created: "2024-08-09T17:23:25.93971334+05:30" + created: "2024-08-24T14:39:26.158198133+05:30" dependencies: - condition: vector.enabled name: vector @@ -241,7 +264,7 @@ entries: version: 0.8.1 - apiVersion: v2 appVersion: v0.8.0 - created: "2024-08-09T17:23:25.937567013+05:30" + created: "2024-08-24T14:39:26.152479164+05:30" dependencies: - condition: vector.enabled name: vector @@ -264,7 +287,7 @@ entries: version: 0.8.0 - apiVersion: v2 appVersion: v0.7.3 - created: "2024-08-09T17:23:25.934158548+05:30" + created: "2024-08-24T14:39:26.144521226+05:30" dependencies: - condition: vector.enabled name: vector @@ -287,7 +310,7 @@ entries: version: 0.7.3 - apiVersion: v2 appVersion: v0.7.2 - created: "2024-08-09T17:23:25.930893098+05:30" + created: "2024-08-24T14:39:26.136530671+05:30" dependencies: - condition: vector.enabled name: vector @@ -310,7 +333,7 @@ entries: version: 0.7.2 - apiVersion: v2 appVersion: v0.7.1 - created: "2024-08-09T17:23:25.927440291+05:30" + created: "2024-08-24T14:39:26.129115639+05:30" dependencies: - condition: vector.enabled name: vector @@ -333,7 +356,7 @@ entries: version: 0.7.1 - apiVersion: v2 appVersion: v0.7.0 - created: "2024-08-09T17:23:25.923713541+05:30" + created: "2024-08-24T14:39:26.119665363+05:30" dependencies: - condition: vector.enabled name: vector @@ -356,7 +379,7 @@ entries: version: 0.7.0 - apiVersion: v2 appVersion: v0.6.2 - created: "2024-08-09T17:23:25.921583356+05:30" + created: "2024-08-24T14:39:26.112747709+05:30" dependencies: - condition: vector.enabled name: vector @@ -379,7 +402,7 @@ entries: version: 0.6.2 - apiVersion: v2 appVersion: v0.6.1 - created: "2024-08-09T17:23:25.919405115+05:30" + created: "2024-08-24T14:39:26.103201195+05:30" dependencies: - condition: vector.enabled name: vector @@ -402,7 +425,7 @@ entries: version: 0.6.1 - apiVersion: v2 appVersion: v0.6.0 - created: "2024-08-09T17:23:25.91596509+05:30" + created: "2024-08-24T14:39:26.095260411+05:30" dependencies: - condition: vector.enabled name: vector @@ -425,7 +448,7 @@ entries: version: 0.6.0 - apiVersion: v2 appVersion: v0.5.1 - created: "2024-08-09T17:23:25.912525904+05:30" + created: "2024-08-24T14:39:26.088859724+05:30" dependencies: - condition: vector.enabled name: vector @@ -448,7 +471,7 @@ entries: version: 0.5.1 - apiVersion: v2 appVersion: v0.5.0 - created: "2024-08-09T17:23:25.909040662+05:30" + created: "2024-08-24T14:39:26.080887853+05:30" dependencies: - condition: vector.enabled name: vector @@ -471,7 +494,7 @@ entries: version: 0.5.0 - apiVersion: v2 appVersion: v0.4.4 - created: "2024-08-09T17:23:25.905658751+05:30" + created: "2024-08-24T14:39:26.071733769+05:30" dependencies: - condition: vector.enabled name: vector @@ -494,7 +517,7 @@ entries: version: 0.4.5 - apiVersion: v2 appVersion: v0.4.3 - created: "2024-08-09T17:23:25.903439666+05:30" + created: "2024-08-24T14:39:26.064242816+05:30" dependencies: - condition: vector.enabled name: vector @@ -517,7 +540,7 @@ entries: version: 0.4.4 - apiVersion: v2 appVersion: v0.4.2 - created: "2024-08-09T17:23:25.901260956+05:30" + created: "2024-08-24T14:39:26.054951398+05:30" dependencies: - condition: vector.enabled name: vector @@ -540,7 +563,7 @@ entries: version: 0.4.3 - apiVersion: v2 appVersion: v0.4.1 - created: "2024-08-09T17:23:25.897726435+05:30" + created: "2024-08-24T14:39:26.045969165+05:30" dependencies: - condition: vector.enabled name: vector @@ -563,7 +586,7 @@ entries: version: 0.4.2 - apiVersion: v2 appVersion: v0.4.0 - created: "2024-08-09T17:23:25.895520131+05:30" + created: "2024-08-24T14:39:26.037848523+05:30" dependencies: - condition: vector.enabled name: vector @@ -586,7 +609,7 @@ entries: version: 0.4.1 - apiVersion: v2 appVersion: v0.4.0 - created: "2024-08-09T17:23:25.893348225+05:30" + created: "2024-08-24T14:39:26.029708596+05:30" dependencies: - condition: vector.enabled name: vector @@ -609,7 +632,7 @@ entries: version: 0.4.0 - apiVersion: v2 appVersion: v0.3.1 - created: "2024-08-09T17:23:25.890104631+05:30" + created: "2024-08-24T14:39:26.019055719+05:30" dependencies: - condition: vector.enabled name: vector @@ -632,7 +655,7 @@ entries: version: 0.3.1 - apiVersion: v2 appVersion: v0.3.0 - created: "2024-08-09T17:23:25.887921136+05:30" + created: "2024-08-24T14:39:26.011667402+05:30" description: Helm chart for Parseable Server digest: ff30739229b727dc637f62fd4481c886a6080ce4556bae10cafe7642ddcfd937 name: parseable @@ -642,7 +665,7 @@ entries: version: 0.3.0 - apiVersion: v2 appVersion: v0.2.2 - created: "2024-08-09T17:23:25.887744822+05:30" + created: "2024-08-24T14:39:26.010981864+05:30" description: Helm chart for Parseable Server digest: 477d0dc2f0c07d4f4c32e105d4bdd70c71113add5c2a75ac5f1cb42aa0276db7 name: parseable @@ -652,7 +675,7 @@ entries: version: 0.2.2 - apiVersion: v2 appVersion: v0.2.1 - created: "2024-08-09T17:23:25.887575199+05:30" + created: "2024-08-24T14:39:26.010362068+05:30" description: Helm chart for Parseable Server digest: 84826fcd1b4c579f301569f43b0309c07e8082bad76f5cdd25f86e86ca2e8192 name: parseable @@ -662,7 +685,7 @@ entries: version: 0.2.1 - apiVersion: v2 appVersion: v0.2.0 - created: "2024-08-09T17:23:25.8874199+05:30" + created: "2024-08-24T14:39:26.009808831+05:30" description: Helm chart for Parseable Server digest: 7a759f7f9809f3935cba685e904c021a0b645f217f4e45b9be185900c467edff name: parseable @@ -672,7 +695,7 @@ entries: version: 0.2.0 - apiVersion: v2 appVersion: v0.1.1 - created: "2024-08-09T17:23:25.887270282+05:30" + created: "2024-08-24T14:39:26.009275683+05:30" description: Helm chart for Parseable Server digest: 37993cf392f662ec7b1fbfc9a2ba00ec906d98723e38f3c91ff1daca97c3d0b3 name: parseable @@ -682,7 +705,7 @@ entries: version: 0.1.1 - apiVersion: v2 appVersion: v0.1.0 - created: "2024-08-09T17:23:25.887120079+05:30" + created: "2024-08-24T14:39:26.008744905+05:30" description: Helm chart for Parseable Server digest: 1d580d072af8d6b1ebcbfee31c2e16c907d08db754780f913b5f0032b403789b name: parseable @@ -692,7 +715,7 @@ entries: version: 0.1.0 - apiVersion: v2 appVersion: v0.0.8 - created: "2024-08-09T17:23:25.886958706+05:30" + created: "2024-08-24T14:39:26.008210787+05:30" description: Helm chart for Parseable Server digest: c805254ffa634f96ecec448bcfff9973339aa9487dd8199b21b17b79a4de9345 name: parseable @@ -702,7 +725,7 @@ entries: version: 0.0.8 - apiVersion: v2 appVersion: v0.0.7 - created: "2024-08-09T17:23:25.886774528+05:30" + created: "2024-08-24T14:39:26.007694623+05:30" description: Helm chart for Parseable Server digest: c591f617ed1fe820bb2c72a4c976a78126f1d1095d552daa07c4700f46c4708a name: parseable @@ -712,7 +735,7 @@ entries: version: 0.0.7 - apiVersion: v2 appVersion: v0.0.6 - created: "2024-08-09T17:23:25.886458047+05:30" + created: "2024-08-24T14:39:26.00708371+05:30" description: Helm chart for Parseable Server digest: f9ae56a6fcd6a59e7bee0436200ddbedeb74ade6073deb435b8fcbaf08dda795 name: parseable @@ -722,7 +745,7 @@ entries: version: 0.0.6 - apiVersion: v2 appVersion: v0.0.5 - created: "2024-08-09T17:23:25.885636578+05:30" + created: "2024-08-24T14:39:26.006451871+05:30" description: Helm chart for Parseable Server digest: 4d6b08a064fba36e16feeb820b77e1e8e60fb6de48dbf7ec8410d03d10c26ad0 name: parseable @@ -732,7 +755,7 @@ entries: version: 0.0.5 - apiVersion: v2 appVersion: v0.0.2 - created: "2024-08-09T17:23:25.885336565+05:30" + created: "2024-08-24T14:39:26.005643644+05:30" description: Helm chart for Parseable Server digest: 38a0a3e4c498afbbcc76ebfcb9cb598fa2ca843a53cc93b3cb4f135b85c10844 name: parseable @@ -742,7 +765,7 @@ entries: version: 0.0.2 - apiVersion: v2 appVersion: v0.0.1 - created: "2024-08-09T17:23:25.884994837+05:30" + created: "2024-08-24T14:39:26.004974696+05:30" description: Helm chart for Parseable Server digest: 1f1142db092b9620ee38bb2294ccbb1c17f807b33bf56da43816af7fe89f301e name: parseable @@ -771,4 +794,4 @@ entries: urls: - https://charts.parseable.io/helm-releases/parseable-operator-0.0.1.tgz version: 0.0.1 -generated: "2024-08-09T17:23:25.884589459+05:30" +generated: "2024-08-24T14:39:26.003897997+05:30"