cloud-agent/cloud-agent.md

2.6 KiB

CLOUD-AGENT(8) - System Manager's Manual

NAME

cloud-agent - cloud provisioning for OpenBSD VMs

SYNOPSIS

cloud-agent

**-nuv**]
\[**-c** *cloud*\[,*cloud*...]]
\[**-p** *length*]
\[**-r** *rootdisk*]
\[**-t** *timeout*]
\[**-U** *username*]
*interface*

# DESCRIPTION

The
**cloud-agent**
program manages the OpenBSD provisioning and VM interaction in cloud
environments.

The options are as follows:

**-c** *cloud*\[,*cloud*...]

> Probe a list of cloud stacks for provisioning in the specified order.
> If this option is not specified,
> **cloud-agent**
> tries to detect the environment and possible cloud stacks automatically.
> Supported
> *cloud*
> stacks are:

> **azure**

> > Microsoft Azure

> **cloudinit**

> > Generic cloud-init

> **ec2**

> > Amazon AWS EC2

> **opennebula**

> > OpenNebula

> **openstack**

> > OpenStack

**-p** *length*

> Generate and set a random password for the default user.
> The password will be written in its plain form into the
> *~/.ssh/authorized\_keys*
> file.
> This allows to use the
> doas(1)
> command to gain root privileges.
> The minimum
> *length*
> is 8 characters and the default is an empty password.

**-n**

> Do not configure the system and skip the provisioning step.

**-t** *timeout*

> Change the HTTP timeout.
> The default is 3 seconds.

**-U** *username*

> Change the default user.
> The default is
> "ec2-user"
> on AWS,
> "azure-user"
> on Azure, and
> "puffy"
> everywhere else.
> The default user is used when it is not obtained from the cloud
> configuration.
> Using
> "root"
> is supported, but not recommended.

**-r** *rootdisk*

> Automatically grow the last
> OpenBSD
> FFS partition of the root disk to use all the available space.

**-u**

> Deprovision and unconfigure the system.
> This deletes keys, passwords, and logs files without asking for permission.

**-v**

> Produce more verbose output.

Enable
**cloud-agent**
in the
hostname.if(5)
of the VM's primary networking interface and automatically the last
partition of the root disk:

	# cat /etc/hostname.hvn0
	dhcp
	!/usr/local/libexec/cloud-agent -r sd0 "\$if"

# FILES

*~/.ssh/authorized\_keys*

> The location of the agent-configured SSH public keys and optional password.

*/usr/local/libexec/cloud-agent*

> The agent itself.

*/usr/local/bin/cms*

> The CMS binary that is used to decrypt messages from the Azure fabric.

*/var/db/cloud-instance*

> The instance ID as reported by the cloud.
> **cloud-agent**
> reprovisions the system when the value has changed.

# SEE ALSO

meta-data(8),
vmd(8)

# AUTHORS

Reyk Floeter <[reyk@openbsd.org](mailto:reyk@openbsd.org)>

OpenBSD 6.5 - June 11, 2019