From b97ec255b9767cd2978e0d2fa4befe39444cc05a Mon Sep 17 00:00:00 2001 From: Peter Nickolov Date: Thu, 28 Oct 2021 19:47:25 -0700 Subject: [PATCH] update README --- README.md | 40 ++++++++++++++++++++++++++++++---------- docs/support.png | Bin 2292 -> 2292 bytes 2 files changed, 30 insertions(+), 10 deletions(-) diff --git a/README.md b/README.md index ebca848..12d1de0 100644 --- a/README.md +++ b/README.md @@ -7,7 +7,7 @@ [![Github All Releases](https://img.shields.io/github/downloads/opsani/opsani-ignite/total.svg?style=for-the-badge)](https://github.com/opsani/opsani-ignite/releases/latest) Opsani Ignite analyzes applications running on a Kubernetes cluster in order to -identify _performance and reliability risks_, as well as _inefficient configurations_. It then identifies specific _corrective actions_ that align the application's configuration with deployment best practices for production environments and may also reduce the application's resource footprint. +identify _performance and reliability risks_, as well as _inefficient configurations_. It then identifies specific _corrective actions_ that align the application's configuration with deployment best practices for production environments and may also reduce the application's _resource footprint_. CAUTION: Opsani Ignite is a new tool, still in alpha. We appreciate [feedback and suggestions](#feedback-and-suggestions). @@ -25,7 +25,7 @@ Once port forwarding is active, run the `opsani-ignite` executable, providing th `opsani-ignite -p http://localhost:9090` -Opsani Ignite has three phases: discovery, analysis and recommendations. +Opsani Ignite works in three phases: discovery, analysis and recommendations. ## Phase 1: Discovery @@ -41,7 +41,7 @@ Ignite analyzes each application, looking at pods and containers that make up th ![analysis](docs/analysis.png) -In addition, Ignite determines whether the application is overprovisioned resulting in a higher than necessary cloud spend. In such cases, it also estimates the likely savings that can be obtained through optimization. +In addition, Ignite determines whether the application is overprovisioned and has a higher-than-necessary cloud spend. In these cases, it also estimates the likely savings that can be obtained through optimization. ## Phase 3: Recommendations @@ -49,10 +49,6 @@ When an application is selected (pressing Enter in the table of apps), Ignite pr ![recommendations](docs/recommendations.png) -# Interactive... Stdout... or YAML output - -By default, Ignite is text-based interactive tool (using the fantastic [tview](https://github.com/rivo/tview) package, familiar to those who use the equally magnificent [k9s](https://github.com/derailed/k9s) tool). Ignite's command line options can change the output to simple stdout text view and even full-detail YAML output that can be used to integrate Ignite into your dashboards and higher level tools. - # Optimization Recommendations Opsani Ignite provides analysis and a number of additional recommendations to improve performance, reliability and efficiency. @@ -61,17 +57,41 @@ Best practices require correctly setting resource requirements in a way that mee They can also be automatically identified using automatic optimization services, such as the Opsani optimization-as-a-service tool. Those who are interested in how continuous optimization can remediate these issues can go to the [Opsani website](https://opsani.com), set up a [free trial account](https://opsani.com/create-your-account2/#ignite-readme) and attach the optimizer to their application. Connecting an application to the optimizer typically takes 10-15 minutes and, in a few hours, produces concrete, tested resource specifications that can be applied using a simple `kubectl` command. +# Interactive... Stdout... or YAML output + +By default, Ignite is text-based interactive tool (using the fantastic [tview](https://github.com/rivo/tview) package, familiar to those who use the equally magnificent [k9s](https://github.com/derailed/k9s) tool). Ignite's command line options can change the output to simple stdout text view and even full-detail YAML output that can be used to integrate Ignite into your dashboards and higher level tools. + +# Command Line Options + +Here are Ignite's command line options: + +``` +Usage: + opsani-ignite [ []] [flags] + +Flags: + --config string config file (default is $HOME/.opsani-ignite.yaml) + -p, --prometheus-url string URI to Prometheus API (typically port-forwarded to localhost using kubectl) + --start string Analysis start time, in RFC3339 or relative form (default "-7d") + --end string Analysis end time, in RFC3339 or relative form (default "-0d") + --step string Time resolution, in relative form (default "1d") + -o, --output string Output format (interactive|table|detail|yaml|servo.yaml) + -b, --hide-blocked Hide applications that don't meet optimization prerequisites + --debug Display tracing/debug information to stderr + -q, --quiet Suppress warning and info level messages + -h, --help help for opsani-ignite +``` # Feedback and Suggestions The Ignite tool is the result of analyzing thousands of applications as part of our work at Opsani. We released it as an open source tool in order to share our experience and learning with the Kubernetes community and help improve application reliability and efficiency. The source code is available to review and to contribute. -We will appreciate your feedback. Please send us a few lines about your experience--or, even better--a screenshot with the results (be they good or not so good) at ![support](docs/support.png). +We appreciate your feedback. Please send us a few lines about your experience--or, even better--a screenshot 📷 with the results (be they good or not so good) at . Issues and PRs are also a great way to help improve Ignite for everyone. # Troubleshooting -Opsani Ignite records diagnostic information in `opsani-ignite.log`. You can increase the logging level by adding the `--debug` option to the command line. +Opsani Ignite records diagnostic information in `opsani-ignite.log`. You can increase the logging level by adding the `--debug` option to the command line; running the YAML output option (`-o yaml`) is also a great way to see the full details. # Where To Get Help -You can reach out to Opsani Technical support at ![support](docs/support.png) or, for faster response, use the chat bot on the [Opsani web site](https://www.opsani.com). +You can reach out to Opsani Technical support at or, for faster response, use the chat bot 💬 on the [Opsani web site](https://www.opsani.com). diff --git a/docs/support.png b/docs/support.png index 9fb32b4b860df90436f9a6a3bd72cfb6c2b8bb47..8f12d979cd37463dc1174ff90e06f8bfe75c3b32 100644 GIT binary patch delta 1981 zcmV;u2SWJt5%duuiBL{Q4GJ0x0000DNk~Le0003E0000S2nGNE0DJH1f{`IKe+Owv zL_t(|UhSQ|cIr3~fG7JbaEqKgfq4S5O{&|bGbJ?XQl?8|%Fx|5RhpP5fG5aF5&K=d zGuB9!Ey-9ikZ@PuIXVl5vFA@?8BOk9RR}~Pk;p*);r~V=k;ouo(TGGMUc{miiA21J zMdQLLw`*9;uHfp5$7}|RZONZTf4tc)U{?E*{K&^5En?C50f>n|gW1|=vX`)4%wT%^ z3fGSX(C^taipSsZaXW>pnDGIiPoFlhuV3$B^R&hz5d+#iiF_}43bcb&C0W5o4kKjJ zD(CktimXaJ&lh3xwDui9Ql(bsM&e520x8!sxZPmM$X{U2$68F5@R;JgfAaM`-YI>V zzre0uwe8@=>fA^y8W+bFo>#blPV?TRp5N6~1KwlRh#VVUad=VWS(PS9y`+{SNpPuL z*p|b2h3Q)__pGaBUP_yvOF3SG7x-SkCcaMdzU%qQNs21ZaEY4m_v?{V39ePG<{?EU z&MzMagnt@&;hXv+fwFnnf6$l7;#v-0>Np=!eC-?SPZIIT7Xis+De9%k2tBj5FBK#7 z#7C0m8qGNU<6VJjQY>t~;jb9@#INm>9Q`T3FHFO8$zyoUq2_uQ4f*_S9~`h2Qt|Mj zk*ViQbC}Pap>hNzn*IA?*lo~@hJ0-f%{ReCqo^{{FUjx~gXd~=f5zm&*CN^34=qDO z>>J}xl=jXS#4(ARab!Im*E?;|I1mdx#tPr~X+G)ZC7wUG92;V>U(ry`MdjMJPQII* zqG-sW-zlg<%H!Q@hRX4TWEtJQqBSv18;wGt-zl^L;YvcO)4?R=bE)rX=hlaq80-f% zOG51n^(PXPF9=O~e_Td4YtWPpSRTsl+zQuS5Nb9 z)hZg6q&(!e!AZ(G%G0O`iw8(jyqEg3oz0iUcfIWkjl*HPe}ix)_yIjVCdR3YMw2g& zSl9@PpY9WBw{}eCs*)X6G`xNYo&35HFE&rGK4Sw>n(tsa;Wvso&~JUj$Cq6fAGz(@ zM!ZNLEiwr2ND!MhM-N1jL9ttcO}ysgYt(Lr&@qAQDgLKi!&9wt3i-<%uUW#^2fe?6 zUls+9VV`dte@>Dw(`)oVKUO`J+y^+)4>^}>BrQ;(fCmcHR&b=iuz257}LTpZT( zd*L{tp1=PcnhoRQcVpa1!u{mAHcGtQYgoRVm~uVzuVb46uwOmfV`1St zfAiA-mwbbv?y)qZj=avEPu+dT+c=i(HMKQJTRJRCd(oKoe4IviD@kq*(KXxq^>r5= z%bD9^W94wv-Eqz5EnO}4jow;R+i9ei*giGsGwilU*A_?F;oMsThzi+SZ}& z3(`@^)WfyqdT2}X@HVISmaC?-UAGSUfA=XCTF(W3C~P(QG(zIn$TWv7e)8OM^(-2! zm}~Sj>sY^!Bf+Gy2U~NJYoI6EjwM3n5F_}V;b;sR-;ba-?wCWKR`_4~xZMIwc~?+- zG0RX}u|bf1;r%}y#IRoa2656ua0@3qZM51u*JeVe|}Bu znsl)ENu76q-iTMxAP0-SciEi6gZlcNcSwP8r{F}VbBdr1FB;UF->%L&p>hmXaGH#* z;PBrqxFnC$#3X&IU6+SEt+JE#O@o5#yL5V1WrQbe=Y!Cv5l%t-u%V>j0AC{A3`H%VSWcVf#bg@75P?T z(YPq)@PKP+*stLJ+?{lh2osCOg+VRp_)Lp+V+u2B$>!rkS(dP+t-tv1gGNqBEE*RG zbyya81~;!yFxCDpV|srNPoLND_;BKV`pEy9_`hY0L?Rvl{0FEs-ICuI4#&0t0000< PMNUMnLSTZk)CV8|kfY`Q delta 1981 zcmV;u2SWJt5%duuiBL{Q4GJ0x0000DNk~Le0003s0000S2nGNE007GgywcB)7{1{p-Y=8P0R{l1(_7F_rg1} z{*5FXBZ49NW;6-5bfoj6PqHP!%?<$(zX#PC@_#Szw%Wp$UjjlPeSC($^9hXjrHFH& zf_$97f;xs|P;TbYA3YFB?Lttke{=YFe}lKrM|kZS>{UL4r^QN~FKIWU^P zLPiG{3Vi&0jkB~~h@^JysB(PdWb?bU*uZk)>L?Rf7B#KG_U$9i*3N$NJxbJ+k5>Cr;4(m^|>=+8caCR*Se)(1ijWWs&VtLUuR{rV9u>;b)TWvZCa< z_EBbp=S_D7zqXHJhnESFH_$mJA8zy@7fSThC(UrAlZBDGfo+}9x2VQ zm&YV@@rY2dPV;N}P?wlJ=< z&L_*zV50$u0ZVgfjnPM2rYh zqqY+N>t!+=W%g}le{YK=eWNXSLq>d%H@j<-h` zztHBXJbmJn*#O%>>!x}b0-CzmePWQBmM9rZakPWWdmbWae?r(FlUs*Vz>E#UH#MlO z=nT&GWI=IUj7U=BGdwmBXfcfS)_?0pX?@Gm7*1+hgL+yrEUB?%AK^3^mJS|5hUz$; zVAKi8N;Fy>JlWc!x7Xhhxty+~Cfld{Vfd&PqRADNTSzU0Jwo`!xZg8QyP(Y{OZ1{qU0(~%e?)5LV9~Ly8jg(-y?*_kaa|h361N%#yHJ3Jb!#nwp?jHdiUE}jR;M@7~i!Bh4J4osaYxpNuL6^{6 z1SNMY*B(w_j}X2+B@Xq8Q=jBc${9A+@XmdV!Qt?Ye+PkMBz?B6{1V9icH0)tNiBgp zVg1z<#DLpcFlT6vMv){yC4jk*_p~Xn!o!ST{%S}CND2og-BXCx*m?kieM`$hp6|lim z%)rEFMOGBH*_#@5hm8Jls*a3N5Xg$MmSdz+%?2Yb56*=GdLD2t11D8e{>2lVo7Ysw ze{(-JwZSDLkuPmNp>=jFXFBRJ?~-7fy@_i=pP#nJp}svVPAm9$(+I8Hz}$Ik?Dyax zA6qcAKI0@c9izz-HW)ArEic7AidFfGd?DE%T40h#Xn8N`fLn%I`P#x;%aZ0=EgAKC z7ja%_D_#=fn$qWI?QxuM+v8L%jP#G4e}SXQVaDGRj%VGzabkUt+ZnDcBh?ya7rRiv+Af~1x2pvtGw1dIe}&0k z`RyRRp2UXMXK>oiHvG|ZUG^F z{O)(_;Gie19$^Q)Q|jgAksgBx-2Oe*9zpyPB2H}`-$=AWD&L)y)Vk^;4pJ*YY4wS8 PNbGg-aovxz)CV8|(c8=}