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>

OpenBSD 6.5 - June 26, 2019