salt/doc/topics/cloud/index.rst
Jacob Hammons 26d4991cb3 moved previous intro to new quick start topic (topics/cloud/qs.rst)
added new intro that explains the salt cloud configuration files
added an inheritance and minion startup state example to topics/cloud/config.rst
2016-03-07 16:06:16 -07:00

160 lines
4.5 KiB
ReStructuredText

.. _salt-cloud:
==========
Salt Cloud
==========
.. raw:: html
:file: index.html
Configuration
=============
Salt Cloud provides a powerful interface to interact with cloud hosts. This
interface is tightly integrated with Salt, and new virtual machines
are automatically connected to your Salt master after creation.
Since Salt Cloud is designed to be an automated system, most configuration
is done using the following YAML configuration files:
- ``/etc/salt/cloud``: The main configuration file, contains global settings
that apply to all cloud hosts. See :ref:`Salt Cloud Configuration
<salt-cloud-config>`.
- ``/etc/salt/cloud.providers.d/*.provider.conf``: Contains settings that
configure a specific cloud host, such as credentials, region settings, and so
on. Since configuration varies significantly between each cloud host,
a separate file is created for each cloud host. In Salt Cloud, a provider is
synonymous with a cloud host (Amazon EC2, Google Compute Engine, Rackspace,
and so on). See :ref:`Provider Specifics <cloud-provider-specifics>`.
- ``/etc/salt/cloud.profiles.d/*.profile.conf``: Contains settings that define
a specific VM type. Each profile specifies a parent provider that defines the
cloud host in which the VM is created. A profile defines the system type and
image, and any other settings that are specific to this VM type. Based on
your needs, you might define different profiles for web servers, database
servers, and so on. See :ref:`VM Profiles <cloud-provider-specifics>`.
Configuration Inheritance
=========================
Configuration settings are inherited in order from the cloud config =>
providers => profile.
.. image:: /_static/cloud-settings-inheritance.png
:align: center
:width: 40%
For example, if you wanted to use the same image for
all virtual machines for a specific provider, the image name could be placed in
the provider file. This value is inherited by all profiles that use that
provider, but is overridden if a image name is defined in the profile.
Most configuration settings can be defined in any file, the main difference
being how that setting is inherited.
QuickStart
==========
The :ref:`Salt Cloud Quickstart <salt-cloud-qs>` walks you through defining
a provider, a VM profile, and shows you how to create virtual machines using Salt Cloud.
Using Salt Cloud
================
.. toctree::
:maxdepth: 3
Command Line Reference <../../ref/cli/salt-cloud>
Basic <basic>
Profiles <profiles>
Maps <map>
Actions <action>
Functions <function>
Core Configuration
==================
.. toctree::
:maxdepth: 3
Installing salt cloud <install/index>
Core Configuration <config>
Windows Configuration
=====================
.. toctree::
:maxdepth: 3
Windows Configuration <windows>
.. _cloud-provider-specifics:
Cloud Provider Specifics
========================
.. toctree::
:maxdepth: 3
Getting Started With Aliyun <aliyun>
Getting Started With Azure <azure>
Getting Started With DigitalOcean <digitalocean>
Getting Started With EC2 <aws>
Getting Started With GoGrid <gogrid>
Getting Started With Google Compute Engine <gce>
Getting Started With HP Cloud <hpcloud>
Getting Started With Joyent <joyent>
Getting Started With LXC <lxc>
Getting Started With Linode <linode>
Getting Started With OpenStack <openstack>
Getting Started With Parallels <parallels>
Getting Started With Proxmox <proxmox>
Getting Started With Rackspace <rackspace>
Getting Started With Saltify <saltify>
Getting Started With Scaleway <scaleway>
Getting Started With SoftLayer <softlayer>
Getting Started With Vexxhost <vexxhost>
Getting Started With VMware <vmware>
Getting Started With vSphere <vsphere>
Miscellaneous Options
=====================
.. toctree::
:maxdepth: 3
Miscellaneous <misc>
Troubleshooting Steps
=====================
.. toctree::
:maxdepth: 3
Troubleshooting <troubleshooting>
Extending Salt Cloud
====================
.. toctree::
:maxdepth: 3
Adding Cloud Providers <cloud>
Adding OS Support <deploy>
Using Salt Cloud from Salt
==========================
.. toctree::
:maxdepth: 3
Using Salt Cloud from Salt <salt>
Feature Comparison
==================
.. toctree::
:maxdepth: 3
Features <features>
Tutorials
=========
.. toctree::
:maxdepth: 3
QuickStart <qs>
Using Salt Cloud with the Event Reactor <reactor>