cloudinit/README.md
2014-03-05 14:38:40 -08:00

1.6 KiB

coreos-cloudinit

coreos-cloudinit allows a user to customize CoreOS machiens by providing either an executable script or a cloud-config document as instance user-data. See below to learn how to use these features.

cloud-config

Only a subset of cloud-config functionality is implemented. A set of custom parameters were added to the cloud-config format that are specific to CoreOS.

Supported cloud-config Parameters

ssh_authorized_keys

Provided public SSH keys will be authorized for the core user.

The keys will be named "coreos-cloudinit" by default. Override this with the --ssh-key-name flag when calling coreos-cloudinit.

Custom cloud-config Parameters

coreos.etcd.discovery_url

The value of coreos.etcd.discovery_url will be used to discover the instance's etcd peers using the etcd discovery protocol. Usage of the public discovery service is encouraged.

user-data Script

Simply set your user-data to a script where the first line is a shebang:

#!/bin/bash

echo 'Hello, world!'

Examples

Inject an SSH key, bootstrap etcd, and start fleet using a cloud-config

#cloud-config

coreos:
	etcd:
		discovery_url: https://discovery.etcd.io/827c73219eeb2fa5530027c37bf18877
    fleet:
        autostart: yes

ssh_authorized_keys:
  - ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC0g+ZTxC7weoIJLUafOgrm+h...