<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:x="urn:schemas-microsoft-com:office:excel" 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=us-ascii">
<meta name="Generator" content="Microsoft Word 14 (filtered medium)">
<style><!--
/* Font Definitions */
@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:11.0pt;
        font-family:"Calibri","sans-serif";}
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;}
span.EmailStyle17
        {mso-style-type:personal-compose;
        font-family:"Calibri","sans-serif";
        color:windowtext;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-family:"Calibri","sans-serif";}
@page WordSection1
        {size:8.5in 11.0in;
        margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
        {page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
</head>
<body lang="EN-US" link="blue" vlink="purple">
<div class="WordSection1">
<p class="MsoNormal"><span style="color:black">As part of this Launchpad there are changes that can impact documentation. Let me know if you require further details.<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:black"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="color:black">Thanks,<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:black"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="color:black">David <o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:black"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="color:black">---<o:p></o:p></span></p>
<p class="MsoNormal">Ability to specify custom certificates for the kubernetes root CA<o:p></o:p></p>
<p class="MsoNormal"><o:p></o:p></p>
<p class="MsoNormal"> <o:p></o:p></p>
<p class="MsoNormal">This change allows the administrator to specify the certificate and key for the kubernetes root CA. Additionally the administrator can also provide values to add to the kubernetes apiserver certificate Subject Alternative Name list.
<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">IMPORTANT: The default length for the generated kubernetes root CA certificate is 10 years. Replacing the root CA certificate is an involved process so the custom certificate expiry should be as long as possible. We recommend ensuring root
 CA certificate has an expiry of at least 5-10 years.<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">These changes must be made via the ansible bootstrap playbook. Three new optional parameters are provided.<o:p></o:p></p>
<p class="MsoNormal">k8s_root_ca_cert<o:p></o:p></p>
<p class="MsoNormal">k8s_root_ca_key<o:p></o:p></p>
<p class="MsoNormal">apiserver_cert_sans<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">k8s_root_ca_cert and k8s_root_ca_key must specify the full path to the certificate and key respectively. The root CA certificate must be in PEM format. These two values must be provided as a pair. The playbook will not proceed if only one
 value is provided.<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">The apiserver_cert_sans parameter can be used to specify a list of Subject Alternative Name entries that will be added to the kubernetes apiserver certificate. Each entry in the list must be an IP address or domain name.<o:p></o:p></p>
<p class="MsoNormal">eg<o:p></o:p></p>
<p class="MsoNormal">apiserver_cert_sans:<o:p></o:p></p>
<p class="MsoNormal">  - hostname.domain<o:p></o:p></p>
<p class="MsoNormal">  - 198.51.100.75<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">Reviews:<o:p></o:p></p>
<p class="MsoNormal">https://review.opendev.org/#/c/671561 <o:p></o:p></p>
<p class="MsoNormal">https://review.opendev.org/#/c/671559 <o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">Launchpad:<o:p></o:p></p>
<p class="MsoNormal">https://bugs.launchpad.net/starlingx/+bug/1837079<o:p></o:p></p>
</div>
</body>
</html>