Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/flatcar/flatcar-terraform
Examples of deploying Flatcar instances with Terraform
https://github.com/flatcar/flatcar-terraform
flatcar terraform
Last synced: 3 months ago
JSON representation
Examples of deploying Flatcar instances with Terraform
- Host: GitHub
- URL: https://github.com/flatcar/flatcar-terraform
- Owner: flatcar
- License: apache-2.0
- Created: 2021-01-15T10:53:24.000Z (almost 4 years ago)
- Default Branch: main
- Last Pushed: 2024-04-29T13:15:15.000Z (7 months ago)
- Last Synced: 2024-05-29T04:10:08.315Z (6 months ago)
- Topics: flatcar, terraform
- Language: HCL
- Homepage: https://github.com/flatcar-linux/flatcar/issues
- Size: 89.8 KB
- Stars: 51
- Watchers: 12
- Forks: 10
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- License: LICENSE
- Code of conduct: code-of-conduct.md
Awesome Lists containing this project
README
# flatcar-terraform
Examples of deploying Flatcar instances with Terraform# AWS EKS worker nodes
Example Terraform setup for an EKS cluster with workers that run Flatcar Container Linux.
Follow the README instructions in the directory:
[`eks`](eks)
# Plain Flatcar instances
Example Terraform modules to provision Flatcar on two public clouds or on VMs on your laptop.
Follow the README instructions in the directories to try it out:
[`digitalocean`](digitalocean)
[`equinix-metal-aka-packet`](equinix-metal-aka-packet)
[`flatcar-terraform-hetzner`](flatcar-terraform-hetzner)
[`qemu-libvirt`](qemu-libvirt)
[`openstack`](openstack)
## Experiments for re-running Ignition instead of instance replacement on userdata changes
This is an experiment to show how to circumvent instance replacement when updating the node user data by telling Ignition to rerun on the node. This only works when the Ignition config contains a directive to reformat the root filesystem, so that no old state is kept. The advantage is to be able to keep persistent data on another partition, keep the same IP address, and to reduce the time of re-applying a configuration change.
Drawbacks are changing SSH host keys and a changing `/etc/machine-id` value (not for libvirt, though), and due to a current limitation an additional reboot when provisioning the first time.
A couple of workarounds are needed due to the restrictions of in-place updating the user data.Follow the README instructions in the directories to try it out:
[`equinix-metal-aka-packet-without-instance-replacement`](equinix-metal-aka-packet-without-instance-replacement)
[`qemu-libvirt-without-instance-replacement`](qemu-libvirt-without-instance-replacement)