Files
2024-11-04 18:48:51 +00:00

165 lines
4.3 KiB
Plaintext
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
ucd
===
micro-config-drive(1) Configure a cloud instance using config-drive
data
SYNOPSIS
--------
``/usr/bin/ucd``
``ucd`` [OPTIONS…]
DESCRIPTION
-----------
``ucd`` runs at boot time with the purpose of configuring a cloud
instance for use of the end user.
ucd can perform any of the following (optional) tasks:
- create a default account with sudo privileges
- lock root and default account, the only way to login is using ssh
keys (security feature)
- maintain the cloud instance in a right state (resize/fix partitions
and filesystem)
- get and process userdata and metadata from an attached config-drive
block device
Userdata formats supported:
- ``cloud-config``: begins with ``#cloud-config`` and is used to
execute certain tasks in a human friendly format
- ``shell-script``: begins with ``#!`` and is used to execute a shell
script
Metadata formats supported:
- ``openstack``
OPENSTACK DATASOURCES
---------------------
Datasources are used to retrive instance-specific data in order to
configure a new cloud instance. Openstack attaches two datasources to
the cloud instance when it boots.
- ``config-drive``: is a disk formatted with vfat or iso9660 and have a
label of config-2
- ``metadata service``: instances can access to it at
http://169.254.169.254 ``[NOT SUPPORTED]``
more information about openstack datasources can be found in:
- http://docs.openstack.org/user-guide/cli_config_drive.html
- http://docs.openstack.org/admin-guide/compute-networking-nova.html#metadata-service
WORKFLOW
--------
::
`|` Parse options
`|` Init openstack datasource
`|->` if config-drive is found then define it as datasource otherwise exit
`|` Start openstack datasource
`|->` Get userdata and metadata from datasource
`|` Run async tasks
`|->` resize disk
`|->` resize filesystem
`|` If a datasource was found
`|->` if VM first boot was detected
`| |->` Run async tasks
`| | |->` lock root account
`| | |->` Create sudoers file for default user account
`| |->` Create default user account
`|->` Process openstack metadata
`|->` Process openstack userdata
`|` Join async tasks
`|` Finish openstack datasource (free resources)
OPTIONS
-------
The following options are understood:
- ``-h``, ``--help``:
Prints a help message.
- ``-u`` FILE, ``--user-data-file`` FILE:
Path to a cloud-config user data file&. If omitted, ``ucd`` will
attempt to fetch user-data from the openstack link-local connected
data service URL.
- ``--openstack-metadata-file`` FILE:
Path to an openstack metadata file. more information:
http://docs.openstack.org/user-guide/cli_config_drive.html#openstack-metadata-format
- ``--openstack-config-drive`` PATH:
Path to openstack config drive (iso9660 or vfat filesystem), it will
be used to process metadata and userdata. more information:
http://docs.openstack.org/user-guide/cli_config_drive.html#configuration-drive-contents
- ``--user-data``:
Get and process user data from data sources.
- ``--user-data-once``:
Only on first boot get and process user data from data sources. Note
this option is ignored if ``--user-data`` is enabled.
- ``--metadata``:
Get and process metadata from data sources.
- ``--fix-disk``:
Fix disk and filesystem if it is needed.
- ``-v``, ``--version``:
Prints version information.
- ``--first-boot-setup``:
Setup the instance in its first boot. When first boot of the instance
is detected, ``ucd`` will perform the following tasks: create a
default user account, create sudoers file for default user account,
lock the root account.
EXIT STATUS
-----------
On success, 0 is returned, a non-zero failure code otherwise.
COPYRIGHT
---------
- Copyright (C) 2017 Intel Corporation, License: CC-BY-SA-3.0
SEE ALSO
--------
This project is a limited-functionality implementation of the cloud-init
specification. The full documentation of the generic implementation is
available online and can be referenced here:
``https://cloudinit.readthedocs.org/en/latest/``
The cloud-config format that `ucd(1) <ucd.1.html>`__ supports is documented in
`cloud-config(5) <cloud-config.5.html>`__. This lists the options that are supported, their
structure and function.
NOTES
-----
Creative Commons Attribution-ShareAlike 3.0 Unported
- http://creativecommons.org/licenses/by-sa/3.0/