<html xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="Title" content="">
<meta name="Keywords" content="">
<meta name="Generator" content="Microsoft Word 15 (filtered medium)">
<style><!--
/* Font Definitions */
@font-face
        {font-family:"Courier New";
        panose-1:2 7 3 9 2 2 5 2 4 4;}
@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0in;
        margin-bottom:.0001pt;
        font-size:12.0pt;
        font-family:"Times New Roman";}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:blue;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:purple;
        text-decoration:underline;}
pre
        {mso-style-priority:99;
        mso-style-link:"HTML Preformatted Char";
        margin:0in;
        margin-bottom:.0001pt;
        font-size:10.0pt;
        font-family:"Courier New";}
span.HTMLPreformattedChar
        {mso-style-name:"HTML Preformatted Char";
        mso-style-priority:99;
        mso-style-link:"HTML Preformatted";
        font-family:Courier;}
span.EmailStyle19
        {mso-style-type:personal-reply;
        font-family:Calibri;
        color:windowtext;}
span.msoIns
        {mso-style-type:export-only;
        mso-style-name:"";
        text-decoration:underline;
        color:teal;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-size:10.0pt;}
@page WordSection1
        {size:8.5in 11.0in;
        margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
        {page:WordSection1;}
--></style>
</head>
<body bgcolor="white" lang="EN-US" link="blue" vlink="purple">
<div class="WordSection1">
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:Calibri">Absolutely agree.  The osops repos started as (and frankly, still are) mostly dumping grounds for tools folks had built and were running locally.  This was meant to be a first step at sharing
 and collaboration.  The kind of improvements you’re talking about is exactly the direction we want to take this stuff.<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:Calibri"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:Calibri">Thanks!!<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:Calibri">Mike<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:Calibri"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:Calibri"><o:p> </o:p></span></p>
<div style="border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0in 0in 0in">
<p class="MsoNormal"><b><span style="font-family:Calibri;color:black">From: </span>
</b><span style="font-family:Calibri;color:black">Melvin Hillsman <mrhillsman@gmail.com><br>
<b>Organization: </b>OpenStack Innovation Center<br>
<b>Reply-To: </b>"mrhillsman@gmail.com" <mrhillsman@gmail.com><br>
<b>Date: </b>Thursday, November 3, 2016 at 12:48 PM<br>
<b>To: </b>Lars Kellogg-Stedman <lars@redhat.com>, OpenStack Operators <openstack-operators@lists.openstack.org><br>
<b>Subject: </b>Re: [Openstack-operators] Updating oschecks<o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<p class="MsoNormal" style="margin-bottom:12.0pt">Hey Lars,<br>
<br>
I think the needs you have are relevant to anyone who would use this tooling and think you should definitely move forward with implementing what you have prototyped. I personally believe any improvements to the tools in osops repos are welcome. Bringing modularity
 to this as well is great from my perspective.<br>
<br>
<o:p></o:p></p>
<div>
<p class="MsoNormal">On 11/03/2016 01:03 PM, Lars Kellogg-Stedman wrote:<o:p></o:p></p>
</div>
<blockquote style="margin-top:5.0pt;margin-bottom:5.0pt">
<pre>I've recently started working with the oscheck scripts in the<o:p></o:p></pre>
<pre>osops-tools-monitoring project [1], and I found that in their current<o:p></o:p></pre>
<pre>form they didn't quite meet my needs.  In particular:<o:p></o:p></pre>
<pre><o:p> </o:p></pre>
<pre>- They don't share a common set of authentication options<o:p></o:p></pre>
<pre>- They can't read credentials from files<o:p></o:p></pre>
<pre>- Many of them require a priori configuration of the openstack<o:p></o:p></pre>
<pre>  environment, which means they can't be used to health check a new<o:p></o:p></pre>
<pre>  deployment<o:p></o:p></pre>
<pre><o:p> </o:p></pre>
<pre>I've spent a little time recently prototyping a new set of health<o:p></o:p></pre>
<pre>check scripts, available here:<o:p></o:p></pre>
<pre><o:p> </o:p></pre>
<pre>  <a href="https://github.com/larsks/oschecks">https://github.com/larsks/oschecks</a><o:p></o:p></pre>
<pre><o:p> </o:p></pre>
<pre>I'd like to emphasize that these *are not* currently meant as a usable<o:p></o:p></pre>
<pre>replacement for the existing checks; they were to prototype (a) the<o:p></o:p></pre>
<pre>way I'd like the user interface to work and (b) the way I'd like<o:p></o:p></pre>
<pre>things like credentials to work.<o:p></o:p></pre>
<pre><o:p> </o:p></pre>
<pre>This project offers the following features:<o:p></o:p></pre>
<pre><o:p> </o:p></pre>
<pre>- They use os_client_config for managing credentials, so they can be<o:p></o:p></pre>
<pre>  configured from a clouds.yaml file, or the environment, or the<o:p></o:p></pre>
<pre>  command line, and it all Just Works.<o:p></o:p></pre>
<pre><o:p> </o:p></pre>
<pre>- Authentication is handled in just one place in the code for all the<o:p></o:p></pre>
<pre>  checks.<o:p></o:p></pre>
<pre><o:p> </o:p></pre>
<pre>- The checks are extensible (using the cliff framework), which means<o:p></o:p></pre>
<pre>  that checks with different sets of requirements can be<o:p></o:p></pre>
<pre>  packaged/installed separately.  See, for example:<o:p></o:p></pre>
<pre><o:p> </o:p></pre>
<pre>    <a href="https://github.com/larsks/oschecks_systemd">https://github.com/larsks/oschecks_systemd</a><o:p></o:p></pre>
<pre><o:p> </o:p></pre>
<pre>- For every supported service there is a simple "can I make an<o:p></o:p></pre>
<pre>  authenticated request to the API successfully" check that does not<o:p></o:p></pre>
<pre>  require any pre-existing resources to be created.<o:p></o:p></pre>
<pre><o:p> </o:p></pre>
<pre>- They are (hopefully) structured such that it is relatively easy to<o:p></o:p></pre>
<pre>  write new checks the follow the same syntax and behavior of the<o:p></o:p></pre>
<pre>  other checks.<o:p></o:p></pre>
<pre><o:p> </o:p></pre>
<pre>If people think this is a useful way of implementing these health<o:p></o:p></pre>
<pre>checks, I would be happy to do the work necessary to make them a mostly<o:p></o:p></pre>
<pre>drop-in replacement for the existing checks (adding checks that are<o:p></o:p></pre>
<pre>currently missing, and adding appropriate console-script entrypoints to<o:p></o:p></pre>
<pre>match the existing names, etc).<o:p></o:p></pre>
<pre><o:p> </o:p></pre>
<pre>I would appreciate any feedback.  Sorry for the long message, and thanks<o:p></o:p></pre>
<pre>for taking the time to read this far!<o:p></o:p></pre>
<pre><o:p> </o:p></pre>
<pre>[1]: <a href="https://github.com/openstack/osops-tools-monitoring/tree/master/monitoring-for-openstack/oschecks">https://github.com/openstack/osops-tools-monitoring/tree/master/monitoring-for-openstack/oschecks</a><o:p></o:p></pre>
<pre><o:p> </o:p></pre>
<p class="MsoNormal"><br>
<br>
<br>
<o:p></o:p></p>
<pre>_______________________________________________<o:p></o:p></pre>
<pre>OpenStack-operators mailing list<o:p></o:p></pre>
<pre><a href="mailto:OpenStack-operators@lists.openstack.org">OpenStack-operators@lists.openstack.org</a><o:p></o:p></pre>
<pre><a href="http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-operators">http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-operators</a><o:p></o:p></pre>
</blockquote>
<p class="MsoNormal"><br>
<br>
<o:p></o:p></p>
<pre>-- <o:p></o:p></pre>
<pre>Kind regards,<o:p></o:p></pre>
<pre>--<o:p></o:p></pre>
<pre>Melvin Hillsman<o:p></o:p></pre>
<pre>Ops Technical Lead<o:p></o:p></pre>
<pre>OpenStack Innovation Center<o:p></o:p></pre>
<pre> <o:p></o:p></pre>
<pre><a href="mailto:mrhillsman@gmail.com">mrhillsman@gmail.com</a><o:p></o:p></pre>
<pre>mobile: (210) 413-1659<o:p></o:p></pre>
<pre>office: (210) 312-1267<o:p></o:p></pre>
<pre>Learner | Ideation | Belief | Responsibility | Command<o:p></o:p></pre>
<pre><a href="http://osic.org">http://osic.org</a><o:p></o:p></pre>
</div>
</body>
</html>