summaryrefslogtreecommitdiff
path: root/doc/rtd/topics/datasources/azure.rst
diff options
context:
space:
mode:
Diffstat (limited to 'doc/rtd/topics/datasources/azure.rst')
-rw-r--r--doc/rtd/topics/datasources/azure.rst125
1 files changed, 0 insertions, 125 deletions
diff --git a/doc/rtd/topics/datasources/azure.rst b/doc/rtd/topics/datasources/azure.rst
deleted file mode 100644
index b73d7d38..00000000
--- a/doc/rtd/topics/datasources/azure.rst
+++ /dev/null
@@ -1,125 +0,0 @@
-.. _datasource_azure:
-
-Azure
-=====
-
-This datasource finds metadata and user-data from the Azure cloud platform.
-
-
-The Azure cloud platform provides initial data to an instance via an attached
-CD formatted in UDF. That CD contains a 'ovf-env.xml' file that provides some
-information. Additional information is obtained via interaction with the
-"endpoint".
-
-
-IMDS
-----
-Azure provides the `instance metadata service (IMDS)
-<https://docs.microsoft.com/en-us/azure/virtual-machines/windows/instance-metadata-service>`_
-which is a REST service on ``169.254.169.254`` providing additional
-configuration information to the instance. Cloud-init uses the IMDS for:
-
-- network configuration for the instance which is applied per boot
-- a preprovisioing gate which blocks instance configuration until Azure fabric
- is ready to provision
-- retrieving SSH public keys. Cloud-init will first try to utilize SSH keys
- returned from IMDS, and if they are not provided from IMDS then it will
- fallback to using the OVF file provided from the CD-ROM. There is a large
- performance benefit to using IMDS for SSH key retrieval, but in order to
- support environments where IMDS is not available then we must continue to
- all for keys from OVF
-
-
-Configuration
--------------
-The following configuration can be set for the datasource in system
-configuration (in ``/etc/cloud/cloud.cfg`` or ``/etc/cloud/cloud.cfg.d/``).
-
-The settings that may be configured are:
-
- * **apply_network_config**: Boolean set to True to use network configuration
- described by Azure's IMDS endpoint instead of fallback network config of
- dhcp on eth0. Default is True. For Ubuntu 16.04 or earlier, default is
- False.
- * **data_dir**: Path used to read metadata files and write crawled data.
- * **disk_aliases**: A dictionary defining which device paths should be
- interpreted as ephemeral images. See cc_disk_setup module for more info.
-
-Configuration for the datasource can also be read from a
-``dscfg`` entry in the ``LinuxProvisioningConfigurationSet``. Content in
-dscfg node is expected to be base64 encoded yaml content, and it will be
-merged into the 'datasource: Azure' entry.
-
-An example configuration with the default values is provided below:
-
-.. sourcecode:: yaml
-
- datasource:
- Azure:
- apply_network_config: true
- data_dir: /var/lib/waagent
- disk_aliases:
- ephemeral0: /dev/disk/cloud/azure_resource
-
-
-Userdata
---------
-Userdata is provided to cloud-init inside the ovf-env.xml file. Cloud-init
-expects that user-data will be provided as base64 encoded value inside the
-text child of a element named ``UserData`` or ``CustomData`` which is a direct
-child of the ``LinuxProvisioningConfigurationSet`` (a sibling to ``UserName``)
-If both ``UserData`` and ``CustomData`` are provided behavior is undefined on
-which will be selected.
-
-In the example below, user-data provided is 'this is my userdata'
-
-Example:
-
-.. sourcecode:: xml
-
- <wa:ProvisioningSection>
- <wa:Version>1.0</wa:Version>
- <LinuxProvisioningConfigurationSet
- xmlns="http://schemas.microsoft.com/windowsazure"
- xmlns:i="http://www.w3.org/2001/XMLSchema-instance">
- <ConfigurationSetType>LinuxProvisioningConfiguration</ConfigurationSetType>
- <HostName>myHost</HostName>
- <UserName>myuser</UserName>
- <UserPassword/>
- <CustomData>dGhpcyBpcyBteSB1c2VyZGF0YQ===</CustomData>
- <dscfg>eyJhZ2VudF9jb21tYW5kIjogWyJzdGFydCIsICJ3YWxpbnV4YWdlbnQiXX0=</dscfg>
- <DisableSshPasswordAuthentication>true</DisableSshPasswordAuthentication>
- <SSH>
- <PublicKeys>
- <PublicKey>
- <Fingerprint>6BE7A7C3C8A8F4B123CCA5D0C2F1BE4CA7B63ED7</Fingerprint>
- <Path>this-value-unused</Path>
- </PublicKey>
- </PublicKeys>
- </SSH>
- </LinuxProvisioningConfigurationSet>
- </wa:ProvisioningSection>
-
-hostname
---------
-When the user launches an instance, they provide a hostname for that instance.
-The hostname is provided to the instance in the ovf-env.xml file as
-``HostName``.
-
-Whatever value the instance provides in its dhcp request will resolve in the
-domain returned in the 'search' request.
-
-A generic image will already have a hostname configured. The ubuntu
-cloud images have 'ubuntu' as the hostname of the system, and the
-initial dhcp request on eth0 is not guaranteed to occur after the
-datasource code has been run. So, on first boot, that initial value
-will be sent in the dhcp request and *that* value will resolve.
-
-In order to make the ``HostName`` provided in the ovf-env.xml resolve,
-a dhcp request must be made with the new value. cloud-init handles
-this by setting the hostname in the DataSource's 'get_data' method via
-'``hostname $HostName``', and then bouncing the interface. This
-behavior can be configured or disabled in the datasource config. See
-'Configuration' above.
-
-.. vi: textwidth=79