summaryrefslogtreecommitdiff
path: root/index.html
blob: b47b12e9ed755b9f5fb3572f59dcd26225522ebe (plain)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 
<!DOCTYPE html> <html lang="en" dir="ltr"> <head> <meta charset="utf-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1"> <link rel="icon" type="image/png" href="https://assets.ubuntu.com/v1/cb22ba5d-favicon-16x16.png" sizes="16x16" /> <link rel="icon" type="image/png" href="https://assets.ubuntu.com/v1/49a1a858-favicon-32x32.png" sizes="32x32" /> <title>Ubuntu and Amazon Elastic Container Service for Kubernetes (EKS)</title> <meta name="description" content="Canonical and Amazon have collaborated on the launch of Amazon’s Elastic Container Service for Kubernetes (EKS) to make Ubuntu worker nodes available. Amazon EKS is a fully managed service that makes it easy for you to use Kubernetes on AWS without having to be an expert in managing Kubernetes clusters."> <!-- Stylesheet --> <link rel="stylesheet" href="https://assets.ubuntu.com/v1/vanilla-framework-version-1.7.1.min.css"> </head> <body> <header id="navigation" class="p-navigation"> <div class="row"> <div class="p-navigation__banner"> <div class="p-navigation__logo"> <a class="p-navigation__link" href="#"> <svg class="p-navigation__image" xmlns="http://www.w3.org/2000/svg" width="107" height="25" viewBox="0 0 107 25"><g><circle fill="#e95420" cx="100.596" cy="7.374" r="6.403"></circle><path fill="#fff" d="M96.6 6.605c-.424 0-.768.344-.768.77 0 .423.344.768.768.768.425 0 .772-.345.772-.768 0-.426-.347-.77-.772-.77zm5.494 3.498c-.365.21-.492.682-.282 1.047.214.372.685.497 1.05.284.37-.21.497-.682.282-1.05-.212-.37-.682-.495-1.05-.28zm-3.822-2.728c0-.76.378-1.434.956-1.84l-.562-.943c-.675.45-1.176 1.138-1.384 1.943.246.2.398.5.398.84 0 .337-.152.64-.398.838.208.805.71 1.492 1.384 1.94l.562-.94c-.578-.406-.956-1.08-.956-1.838zm2.246-2.25c1.177 0 2.14.902 2.24 2.052l1.098-.02c-.055-.845-.425-1.61-.994-2.165-.295.108-.634.093-.925-.078-.292-.168-.473-.452-.524-.76-.285-.078-.584-.12-.895-.12-.53 0-1.032.124-1.48.344l.535.958c.287-.135.61-.21.945-.21zm0 4.497c-.336 0-.658-.076-.945-.21l-.535.958c.447.22.95.344 1.48.344.312 0 .61-.04.895-.12.05-.31.232-.595.524-.762.294-.168.63-.186.925-.073.57-.563.938-1.324.994-2.17l-1.098-.016c-.1 1.147-1.063 2.048-2.24 2.048zm1.576-4.976c.368.213.838.088 1.05-.282.215-.367.088-.84-.28-1.052-.366-.21-.837-.085-1.05.283-.213.367-.086.838.28 1.05z"></path><path fill="#e95420" d="M12.807 24.177c-.65.162-1.51.337-2.577.518-1.068.184-2.304.276-3.704.276-1.222 0-2.247-.178-3.082-.534-.833-.355-1.503-.858-2.01-1.51-.51-.65-.875-1.418-1.098-2.3C.11 19.738 0 18.76 0 17.68V8.778h2.835v8.293c0 1.933.304 3.316.916 4.148.61.834 1.637 1.25 3.08 1.25.304 0 .62-.01.945-.032.326-.02.632-.045.914-.075.284-.03.544-.06.778-.09.234-.032.4-.065.504-.108V8.778h2.835v15.4zM19.728 9.478c.347-.222.87-.458 1.572-.7.7-.243 1.507-.367 2.424-.367 1.137 0 2.148.206 3.033.61.886.406 1.632.977 2.243 1.71.607.73 1.07 1.604 1.385 2.62.317 1.017.474 2.136.474 3.356 0 1.28-.188 2.433-.566 3.46-.377 1.026-.91 1.895-1.6 2.606-.692.714-1.524 1.26-2.502 1.647-.973.387-2.07.58-3.293.58-1.322 0-2.49-.093-3.507-.276-1.016-.183-1.85-.367-2.5-.55V1.46l2.836-.488v8.506h-.002zm0 12.684c.285.084.686.16 1.206.23.517.073 1.16.107 1.935.107 1.522 0 2.745-.505 3.658-1.51.915-1.007 1.373-2.435 1.373-4.284 0-.813-.08-1.575-.244-2.288-.163-.712-.428-1.326-.793-1.845-.366-.52-.84-.923-1.416-1.22-.582-.296-1.278-.443-2.09-.443-.774 0-1.484.133-2.135.395-.65.267-1.15.54-1.495.825v10.032zM46.684 24.177c-.65.162-1.51.337-2.576.518-1.067.184-2.303.276-3.707.276-1.218 0-2.245-.178-3.078-.534-.833-.355-1.504-.858-2.01-1.51-.512-.65-.876-1.418-1.1-2.3-.223-.887-.334-1.866-.334-2.945V8.78h2.835v8.293c0 1.933.304 3.316.914 4.148.61.834 1.636 1.25 3.08 1.25.305 0 .622-.01.947-.032.325-.02.63-.045.915-.075.283-.03.543-.06.778-.09.232-.033.4-.066.503-.11V8.78h2.836v15.4h-.002zM50.77 9.236c.65-.164 1.513-.335 2.592-.52 1.077-.18 2.316-.273 3.72-.273 1.262 0 2.307.178 3.14.533.835.356 1.5.853 1.998 1.494.498.64.85 1.408 1.053 2.3.202.898.304 1.882.304 2.96v8.904H60.74V16.34c0-.977-.066-1.81-.197-2.5-.132-.694-.35-1.25-.656-1.677-.303-.43-.712-.738-1.22-.93-.507-.197-1.14-.292-1.89-.292-.305 0-.62.013-.943.033-.326.02-.637.046-.93.076-.3.03-.56.066-.795.106-.236.04-.403.072-.504.09v13.387H50.77V9.236zM70.132 8.778h6.008v2.378h-6.008v7.32c0 .79.062 1.45.185 1.965.12.52.304.928.548 1.222.244.292.55.5.914.625.366.122.793.182 1.28.182.873 0 1.564-.097 2.075-.29.507-.194.853-.33 1.035-.413l.61 2.32c-.284.142-.788.324-1.51.547-.72.225-1.538.338-2.453.338-1.078 0-1.968-.137-2.67-.413-.7-.276-1.264-.686-1.69-1.235-.428-.548-.728-1.224-.9-2.027-.174-.805-.26-1.734-.26-2.79V4.356l2.834-.49V8.78h.002zM91.57 24.177c-.653.162-1.51.337-2.58.518-1.066.184-2.3.276-3.7.276-1.222 0-2.247-.178-3.08-.534-.837-.355-1.507-.858-2.014-1.51-.51-.65-.873-1.418-1.1-2.3-.22-.887-.335-1.866-.335-2.945V8.78h2.84v8.293c0 1.933.304 3.316.913 4.148.61.834 1.637 1.25 3.08 1.25.305 0 .62-.01.946-.032.322-.02.628-.045.913-.075.284-.03.546-.06.777-.09.234-.033.403-.066.505-.11V8.78h2.837v15.4h-.002z"></path></g></svg> </a> </div> </div> </div> </header> <main class="main-content"> <section class="p-strip--light u-no-padding--bottom"> <div class="row"> <div class="col-8"> <h1 style="font-weight: 100">Ubuntu and Amazon Elastic Container Service for Kubernetes (EKS)</h1> <p>Canonical and Amazon have collaborated on the launch of <a href="https://aws.amazon.com/eks/">Amazon’s Elastic Container Service for Kubernetes (EKS)</a> to make Ubuntu worker nodes available. Amazon EKS is a fully managed service that makes it easy for you to use Kubernetes on AWS without having to be an expert in managing Kubernetes clusters.</p> <p>Users should follow the <a href="https://docs.aws.amazon.com/eks/latest/userguide/getting-started.html">EKS user guide</a> for deploying an EKS cluster. <b> IMPORTANT: </b> When launching and configuring Worker Nodes, substitute the Ubuntu CloudFormation nodegroup template and specify the Ubuntu EKS worker node <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/AMIs.html">Amazon Machine Image (AMI)</a> ID (see table below). The rest of the instructions remain the same.</p> </div> </div> </section> <section class="p-strip--light is-bordered is-shallow"> <div class="row"> <div class="col-12"> <p>The latest Ubuntu worker node AMIs (N.B. EKS may not be available in some of these regions, check the <a href="https://aws.amazon.com/about-aws/global-infrastructure/regional-product-services/">list of current EKS regions</a>):</p> <table> <thead> <tr> <th>Region</th> <th>Image</th> <th>CloudFormation Node template</th> </tr> </thead> <tbody> <tr> <td>Asia Pacific (Tokyo) (ap-northeast-1)</td> <td>ami-03330942d627b32da (<a href="https://ap-northeast-1.console.aws.amazon.com/ec2/v2/home?region=ap-northeast-1#Images:visibility=public-images;name=ubuntu-eks/k8s_1.10/images/*;ownerAlias=099720109477;sort=desc:name">or later</a>)</td> <td><a href="amazon-eks-ubuntu-nodegroup.yaml">amazon-eks-ubuntu-nodegroup.yaml</a></td> </tr> <tr> <td>Asia Pacific (Seoul) (ap-northeast-2)</td> <td>ami-04f057557f23c700e (<a href="https://ap-northeast-2.console.aws.amazon.com/ec2/v2/home?region=ap-northeast-2#Images:visibility=public-images;name=ubuntu-eks/k8s_1.10/images/*;ownerAlias=099720109477;sort=desc:name">or later</a>)</td> <td><a href="amazon-eks-ubuntu-nodegroup.yaml">amazon-eks-ubuntu-nodegroup.yaml</a></td> </tr> <tr> <td>Asia Pacific (Osaka-Local) (ap-northeast-3)</td> <td>ami-09e479974bc569f0b (<a href="https://ap-northeast-3.console.aws.amazon.com/ec2/v2/home?region=ap-northeast-3#Images:visibility=public-images;name=ubuntu-eks/k8s_1.10/images/*;ownerAlias=099720109477;sort=desc:name">or later</a>)</td> <td><a href="amazon-eks-ubuntu-nodegroup.yaml">amazon-eks-ubuntu-nodegroup.yaml</a></td> </tr> <tr> <td>Asia Pacific (Mumbai) (ap-south-1)</td> <td>ami-0abf76953967ee202 (<a href="https://ap-south-1.console.aws.amazon.com/ec2/v2/home?region=ap-south-1#Images:visibility=public-images;name=ubuntu-eks/k8s_1.10/images/*;ownerAlias=099720109477;sort=desc:name">or later</a>)</td> <td><a href="amazon-eks-ubuntu-nodegroup.yaml">amazon-eks-ubuntu-nodegroup.yaml</a></td> </tr> <tr> <td>Asia Pacific (Singapore) (ap-southeast-1)</td> <td>ami-02d92d046f33d4aed (<a href="https://ap-southeast-1.console.aws.amazon.com/ec2/v2/home?region=ap-southeast-1#Images:visibility=public-images;name=ubuntu-eks/k8s_1.10/images/*;ownerAlias=099720109477;sort=desc:name">or later</a>)</td> <td><a href="amazon-eks-ubuntu-nodegroup.yaml">amazon-eks-ubuntu-nodegroup.yaml</a></td> </tr> <tr> <td>Asia Pacific (Sydney) (ap-southeast-2)</td> <td>ami-08de07bf5616494eb (<a href="https://ap-southeast-2.console.aws.amazon.com/ec2/v2/home?region=ap-southeast-2#Images:visibility=public-images;name=ubuntu-eks/k8s_1.10/images/*;ownerAlias=099720109477;sort=desc:name">or later</a>)</td> <td><a href="amazon-eks-ubuntu-nodegroup.yaml">amazon-eks-ubuntu-nodegroup.yaml</a></td> </tr> <tr> <td>Canada (Central) (ca-central-1)</td> <td>ami-09591f43838764428 (<a href="https://ca-central-1.console.aws.amazon.com/ec2/v2/home?region=ca-central-1#Images:visibility=public-images;name=ubuntu-eks/k8s_1.10/images/*;ownerAlias=099720109477;sort=desc:name">or later</a>)</td> <td><a href="amazon-eks-ubuntu-nodegroup.yaml">amazon-eks-ubuntu-nodegroup.yaml</a></td> </tr> <tr> <td>EU (Frankfurt) (eu-central-1)</td> <td>ami-0a56cf74c609f5dfb (<a href="https://eu-central-1.console.aws.amazon.com/ec2/v2/home?region=eu-central-1#Images:visibility=public-images;name=ubuntu-eks/k8s_1.10/images/*;ownerAlias=099720109477;sort=desc:name">or later</a>)</td> <td><a href="amazon-eks-ubuntu-nodegroup.yaml">amazon-eks-ubuntu-nodegroup.yaml</a></td> </tr> <tr> <td>EU (Stockholm) (eu-north-1)</td> <td>ami-31eb624f (<a href="https://eu-north-1.console.aws.amazon.com/ec2/v2/home?region=eu-north-1#Images:visibility=public-images;name=ubuntu-eks/k8s_1.10/images/*;ownerAlias=099720109477;sort=desc:name">or later</a>)</td> <td><a href="amazon-eks-ubuntu-nodegroup.yaml">amazon-eks-ubuntu-nodegroup.yaml</a></td> </tr> <tr> <td>EU (Ireland) (eu-west-1)</td> <td>ami-0e70b6ce8d7946283 (<a href="https://eu-west-1.console.aws.amazon.com/ec2/v2/home?region=eu-west-1#Images:visibility=public-images;name=ubuntu-eks/k8s_1.10/images/*;ownerAlias=099720109477;sort=desc:name">or later</a>)</td> <td><a href="amazon-eks-ubuntu-nodegroup.yaml">amazon-eks-ubuntu-nodegroup.yaml</a></td> </tr> <tr> <td>EU (London) (eu-west-2)</td> <td>ami-080c8f5b9b7106d80 (<a href="https://eu-west-2.console.aws.amazon.com/ec2/v2/home?region=eu-west-2#Images:visibility=public-images;name=ubuntu-eks/k8s_1.10/images/*;ownerAlias=099720109477;sort=desc:name">or later</a>)</td> <td><a href="amazon-eks-ubuntu-nodegroup.yaml">amazon-eks-ubuntu-nodegroup.yaml</a></td> </tr> <tr> <td>EU (Paris) (eu-west-3)</td> <td>ami-0e40b4cce1d90e918 (<a href="https://eu-west-3.console.aws.amazon.com/ec2/v2/home?region=eu-west-3#Images:visibility=public-images;name=ubuntu-eks/k8s_1.10/images/*;ownerAlias=099720109477;sort=desc:name">or later</a>)</td> <td><a href="amazon-eks-ubuntu-nodegroup.yaml">amazon-eks-ubuntu-nodegroup.yaml</a></td> </tr> <tr> <td>South America (São Paulo) (sa-east-1)</td> <td>ami-093a7b89947ae0582 (<a href="https://sa-east-1.console.aws.amazon.com/ec2/v2/home?region=sa-east-1#Images:visibility=public-images;name=ubuntu-eks/k8s_1.10/images/*;ownerAlias=099720109477;sort=desc:name">or later</a>)</td> <td><a href="amazon-eks-ubuntu-nodegroup.yaml">amazon-eks-ubuntu-nodegroup.yaml</a></td> </tr> <tr> <td>US East (Virginia) (us-east-1)</td> <td>ami-0b5f401f6365fb6dc (<a href="https://us-east-1.console.aws.amazon.com/ec2/v2/home?region=us-east-1#Images:visibility=public-images;name=ubuntu-eks/k8s_1.10/images/*;ownerAlias=099720109477;sort=desc:name">or later</a>)</td> <td><a href="amazon-eks-ubuntu-nodegroup.yaml">amazon-eks-ubuntu-nodegroup.yaml</a></td> </tr> <tr> <td>US East (Ohio) (us-east-2)</td> <td>ami-0e83c5df6e1c6bd71 (<a href="https://us-east-2.console.aws.amazon.com/ec2/v2/home?region=us-east-2#Images:visibility=public-images;name=ubuntu-eks/k8s_1.10/images/*;ownerAlias=099720109477;sort=desc:name">or later</a>)</td> <td><a href="amazon-eks-ubuntu-nodegroup.yaml">amazon-eks-ubuntu-nodegroup.yaml</a></td> </tr> <tr> <td>US West (N. California) (us-west-1)</td> <td>ami-0002de7a49fd7a133 (<a href="https://us-west-1.console.aws.amazon.com/ec2/v2/home?region=us-west-1#Images:visibility=public-images;name=ubuntu-eks/k8s_1.10/images/*;ownerAlias=099720109477;sort=desc:name">or later</a>)</td> <td><a href="amazon-eks-ubuntu-nodegroup.yaml">amazon-eks-ubuntu-nodegroup.yaml</a></td> </tr> <tr> <td>US West (Oregon) (us-west-2)</td> <td>ami-06b0dbc3a1fdaf0c1 (<a href="https://us-west-2.console.aws.amazon.com/ec2/v2/home?region=us-west-2#Images:visibility=public-images;name=ubuntu-eks/k8s_1.10/images/*;ownerAlias=099720109477;sort=desc:name">or later</a>)</td> <td><a href="amazon-eks-ubuntu-nodegroup.yaml">amazon-eks-ubuntu-nodegroup.yaml</a></td> </tr> </tbody> </table> </div> </div> <div class="row"> <div class="col-8"> <p><small>This image is customized specifically for the EKS service and is not intended as a general OS image.</small></p> </div> </div> </section> <section class="p-strip is-bordered"> <div class="row"> <div class="col-8"> <h2>How to customize set up</h2> <p>Customization is done during first boot and is driven by the script <code>/var/lib/cloud/scripts/per-instance/00-EKS-config.sh</code>. This is executed by cloud-init and output can be seen in <code>/var/lib/cloud-init-output.sh</code>. The script will determine the cluster to join based on the instance tag <code>“Key=kubernetes.io/cluster/&lt;cluster_name&gt;, Value=owned"</code> which should be associated with the instance from the autoscaling group. See the sample CloudFormation template in this same directory named amazon-eks-ubuntu-nodegroup.yaml.</p> <p>Any user-data passed to the instance will run after the in-image configuration (<code>/var/lib/cloud/scripts/per-instance/00-EKS-config.sh</code>). If you need to override the in-image configuration entirely you may use cloud-init’s <a href="http://cloudinit.readthedocs.io/en/latest/topics/examples.html#run-commands-on-first-boot">runcmd</a> to delete the in-image configuration and use cloud-init’s <a href="http://cloudinit.readthedocs.io/en/latest/topics/examples.html#writing-out-arbitrary-files">write_files</a> to substitute your own configuration script in the same directory.</p> <h3>Customization example</h3> <p>Here we have a customization example with complete replacement of the setup script. The ‘runcmd’ stanza would be omitted if the goal is to augment the existing setup rather than replace it entirely. The following would be added to the CloudFormation nodegroup template in the <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/quickref-general.html#scenario-userdata-base64">instance userdata property</a>:</p> <pre><code>#cloud-config # Remove the built-in customization if you want/need to replace it completely runcmd: - [ cloud-init-per, once, rm, -f, /var/lib/cloud/scripts/per-instance/00-EKS-config.sh ] # Add your own customization write_files: - path: /var/lib/cloud/scripts/per-instance/01-EKS-custom.sh permissions: 755 owner: root:root content: | #!/bin/bash -eux ## Custom EKS setup likely using 00-EKS-config.sh as a guide</code></pre> </div> </div> </section> </main> <footer class="p-strip is-shallow"> <div class="row"> <div class="col-12"> © 2018 Canonical Ltd. Ubuntu and Canonical are registered trademarks of Canonical Ltd. <p> <a class="p-link--external" aria-label="External link to the Ubuntu legal information page" href="https://www.ubuntu.com/legal"> Legal information </a> </p> <span class="u-off-screen"> <a href="#">Go to the top of the page</a> </span> </div> </div> </footer> </body> </html>