<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title>Cloud-Init on Puppeteers Oy</title>
		<link>https://www.puppeteers.net/tags/cloud-init/</link>
		<description>Recent content in Cloud-Init on Puppeteers Oy</description>
		<generator>Hugo</generator>
		<language>en-US</language>
		
		
		
		
			<lastBuildDate>Thu, 28 Apr 2022 00:00:00 +0000</lastBuildDate>
		
			<atom:link href="https://www.puppeteers.net/tags/cloud-init/index.xml" rel="self" type="application/rss+xml" />
			<item>
				<title>Multi-part cloud-init provisioning with Terraform</title>
				<link>https://www.puppeteers.net/blog/multi-part-cloud-init-provisioning-with-terraform/</link>
				<pubDate>Thu, 28 Apr 2022 00:00:00 +0000</pubDate>
				<guid>https://www.puppeteers.net/blog/multi-part-cloud-init-provisioning-with-terraform/</guid>
				<description>&lt;p&gt;&lt;a href=&#34;https://cloud-init.io/&#34;&gt;Cloud-Init&lt;/a&gt; is &amp;ldquo;a standard for customizing&amp;rdquo; cloud instances, typically on their first boot. It is allows mixing state-based configuration management with imperative provisioning commands (details in &lt;a href=&#34;https://www.puppeteers.net/learn/understanding-infrastructure-as-code-iac/&#34;&gt;our IaC article&lt;/a&gt;). By using cloud-init most of the annoyances of SSH-based provisioning can be avoided:&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&#xA;&lt;p&gt;Having to use (possibly shared) SSH keys for provisioning&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;&#xA;&lt;p&gt;Having to have direct network access to the VM being provisioned (may require a VPN connection)&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;That said, neither cloud-init itself, nor its use within Terraform is particularly well documented. Therefore it can be an effort to create cloud-init-based provisioning that works &lt;em&gt;and&lt;/em&gt; adapts easily to different use-cases. This article attempts to fill that gap to some extent.&lt;/p&gt;</description>
			</item>
	</channel>
</rss>
