Back to Salt

Feature Matrix

doc/topics/cloud/features.rst

2019.823.5 KB
Original Source

.. _salt-cloud-feature-matrix:

============== Feature Matrix

A number of features are available in most cloud hosts, but not all are available everywhere. This may be because the feature isn't supported by the cloud host itself, or it may only be that the feature has not yet been added to Salt Cloud. In a handful of cases, it is because the feature does not make sense for a particular cloud provider (Saltify, for instance).

This matrix shows which features are available in which cloud hosts, as far as Salt Cloud is concerned. This is not a comprehensive list of all features available in all cloud hosts, and should not be used to make business decisions concerning choosing a cloud host. In most cases, adding support for a feature to Salt Cloud requires only a little effort.

Legacy Drivers

Both AWS and Rackspace are listed as "Legacy". This is because those drivers have been replaced by other drivers, which are generally the preferred method for working with those hosts.

The EC2 driver should be used instead of the AWS driver, when possible. The OpenStack driver should be used instead of the Rackspace driver, unless the user is dealing with instances in "the old cloud" in Rackspace.

Note for Developers

When adding new features to a particular cloud host, please make sure to add the feature to this table. Additionally, if you notice a feature that is not properly listed here, pull requests to fix them is appreciated.

Standard Features

These are features that are available for almost every cloud host.

.. container:: scrollable

+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+-------+---------+---------+------+-------+
|                       |AWS     |CloudStack|Digital|EC2|GoGrid|JoyEnt|Linode|OpenStack|Parallels|Rackspace|Saltify|Vagrant|Softlayer|Softlayer|Aliyun|Tencent|
|                       |(Legacy)|          |Ocean  |   |      |      |      |         |         |(Legacy) |       |       |         |Hardware |      |Cloud  |
+=======================+========+==========+=======+===+======+======+======+=========+=========+=========+=======+=======+=========+=========+======+=======+
|Query                  |Yes     |Yes       |Yes    |Yes|Yes   |Yes   |Yes   |Yes      |Yes      |Yes      |[1]    |[1]    |Yes      |Yes      |Yes   |Yes    |
+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+-------+---------+---------+------+-------+
|Full Query             |Yes     |Yes       |Yes    |Yes|Yes   |Yes   |Yes   |Yes      |Yes      |Yes      |[1]    |[1]    |Yes      |Yes      |Yes   |Yes    |
+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+-------+---------+---------+------+-------+
|Selective Query        |Yes     |Yes       |Yes    |Yes|Yes   |Yes   |Yes   |Yes      |Yes      |Yes      |[1]    |[1]    |Yes      |Yes      |Yes   |Yes    |
+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+-------+---------+---------+------+-------+
|List Sizes             |Yes     |Yes       |Yes    |Yes|Yes   |Yes   |Yes   |Yes      |Yes      |Yes      |[2]    |[2]    |Yes      |Yes      |Yes   |Yes    |
+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+-------+---------+---------+------+-------+
|List Images            |Yes     |Yes       |Yes    |Yes|Yes   |Yes   |Yes   |Yes      |Yes      |Yes      |Yes    |Yes    |Yes      |Yes      |Yes   |Yes    |
+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+-------+---------+---------+------+-------+
|List Locations         |Yes     |Yes       |Yes    |Yes|Yes   |Yes   |Yes   |Yes      |Yes      |Yes      |[2]    |[2]    |Yes      |Yes      |Yes   |Yes    |
+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+-------+---------+---------+------+-------+
|create                 |Yes     |Yes       |Yes    |Yes|Yes   |Yes   |Yes   |Yes      |Yes      |Yes      |Yes    |[1]    |Yes      |Yes      |Yes   |Yes    |
+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+-------+---------+---------+------+-------+
|destroy                |Yes     |Yes       |Yes    |Yes|Yes   |Yes   |Yes   |Yes      |Yes      |Yes      |[1]    |[1]    |Yes      |Yes      |Yes   |Yes    |
+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+-------+---------+---------+------+-------+

[1] Yes, if salt-api is enabled.

[2] Always returns {}.

Actions

These are features that are performed on a specific instance, and require an instance name to be passed in. For example:

.. code-block:: bash

# salt-cloud -a attach_volume ami.example.com

.. container:: scrollable

+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+--------+---------+---------+------+-------+
|Actions                |AWS     |CloudStack|Digital|EC2|GoGrid|JoyEnt|Linode|OpenStack|Parallels|Rackspace|Saltify&|Softlayer|Softlayer|Aliyun|Tencent|
|                       |(Legacy)|          |Ocean  |   |      |      |      |         |         |(Legacy) | Vagrant|         |Hardware |      |Cloud  |
+=======================+========+==========+=======+===+======+======+======+=========+=========+=========+========+=========+=========+======+=======+
|attach_volume          |        |          |       |Yes|      |      |      |         |         |         |        |         |         |      |       |
+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+--------+---------+---------+------+-------+
|create_attach_volumes  |Yes     |          |       |Yes|      |      |      |         |         |         |        |         |         |      |       |
+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+--------+---------+---------+------+-------+
|del_tags               |Yes     |          |       |Yes|      |      |      |         |         |         |        |         |         |      |       |
+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+--------+---------+---------+------+-------+
|delvol_on_destroy      |        |          |       |Yes|      |      |      |         |         |         |        |         |         |      |       |
+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+--------+---------+---------+------+-------+
|detach_volume          |        |          |       |Yes|      |      |      |         |         |         |        |         |         |      |       |
+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+--------+---------+---------+------+-------+
|disable_term_protect   |Yes     |          |       |Yes|      |      |      |         |         |         |        |         |         |      |       |
+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+--------+---------+---------+------+-------+
|enable_term_protect    |Yes     |          |       |Yes|      |      |      |         |         |         |        |         |         |      |       |
+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+--------+---------+---------+------+-------+
|get_tags               |Yes     |          |       |Yes|      |      |      |         |         |         |        |         |         |      |       |
+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+--------+---------+---------+------+-------+
|keepvol_on_destroy     |        |          |       |Yes|      |      |      |         |         |         |        |         |         |      |       |
+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+--------+---------+---------+------+-------+
|list_keypairs          |        |          |Yes    |   |      |      |      |         |         |         |        |         |         |      |       |
+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+--------+---------+---------+------+-------+
|rename                 |Yes     |          |       |Yes|      |      |      |         |         |         |        |         |         |      |       |
+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+--------+---------+---------+------+-------+
|set_tags               |Yes     |          |       |Yes|      |      |      |         |         |         |        |         |         |      |       |
+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+--------+---------+---------+------+-------+
|show_delvol_on_destroy |        |          |       |Yes|      |      |      |         |         |         |        |         |         |      |       |
+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+--------+---------+---------+------+-------+
|show_instance          |        |          |Yes    |Yes|      |      |Yes   |         |Yes      |         |        |Yes      |Yes      |Yes   |Yes    |
+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+--------+---------+---------+------+-------+
|show_term_protect      |        |          |       |Yes|      |      |      |         |         |         |        |         |         |      |       |
+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+--------+---------+---------+------+-------+
|start                  |Yes     |          |       |Yes|      |Yes   |Yes   |         |Yes      |         |        |         |         |Yes   |Yes    |
+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+--------+---------+---------+------+-------+
|stop                   |Yes     |          |       |Yes|      |Yes   |Yes   |         |Yes      |         |        |         |         |Yes   |Yes    |
+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+--------+---------+---------+------+-------+
|take_action            |        |          |       |   |      |Yes   |      |         |         |         |        |         |         |      |       |
+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+--------+---------+---------+------+-------+

Functions

These are features that are performed against a specific cloud provider, and require the name of the provider to be passed in. For example:

.. code-block:: bash

# salt-cloud -f list_images my_digitalocean

.. container:: scrollable

+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+--------+---------+---------+------+-------+
|Functions              |AWS     |CloudStack|Digital|EC2|GoGrid|JoyEnt|Linode|OpenStack|Parallels|Rackspace|Saltify&|Softlayer|Softlayer|Aliyun|Tencent|
|                       |(Legacy)|          |Ocean  |   |      |      |      |         |         |(Legacy) | Vagrant|         |Hardware |      |Cloud  |
+=======================+========+==========+=======+===+======+======+======+=========+=========+=========+========+=========+=========+======+=======+
|block_device_mappings  |Yes     |          |       |   |      |      |      |         |         |         |        |         |         |      |       |
+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+--------+---------+---------+------+-------+
|create_keypair         |        |          |       |Yes|      |      |      |         |         |         |        |         |         |      |       |
+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+--------+---------+---------+------+-------+
|create_volume          |        |          |       |Yes|      |      |      |         |         |         |        |         |         |      |       |
+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+--------+---------+---------+------+-------+
|delete_key             |        |          |       |   |      |Yes   |      |         |         |         |        |         |         |      |       |
+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+--------+---------+---------+------+-------+
|delete_keypair         |        |          |       |Yes|      |      |      |         |         |         |        |         |         |      |       |
+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+--------+---------+---------+------+-------+
|delete_volume          |        |          |       |Yes|      |      |      |         |         |         |        |         |         |      |       |
+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+--------+---------+---------+------+-------+
|get_image              |        |          |Yes    |   |      |Yes   |      |         |Yes      |         |        |         |         |Yes   |       |
+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+--------+---------+---------+------+-------+
|get_ip                 |        |Yes       |       |   |      |      |      |         |         |         |        |         |         |      |       |
+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+--------+---------+---------+------+-------+
|get_key                |        |Yes       |       |   |      |      |      |         |         |         |        |         |         |      |       |
+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+--------+---------+---------+------+-------+
|get_keyid              |        |          |Yes    |   |      |      |      |         |         |         |        |         |         |      |       |
+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+--------+---------+---------+------+-------+
|get_keypair            |        |Yes       |       |   |      |      |      |         |         |         |        |         |         |      |       |
+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+--------+---------+---------+------+-------+
|get_networkid          |        |Yes       |       |   |      |      |      |         |         |         |        |         |         |      |       |
+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+--------+---------+---------+------+-------+
|get_node               |        |          |       |   |      |Yes   |      |         |         |         |        |         |         |      |       |
+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+--------+---------+---------+------+-------+
|get_password           |        |Yes       |       |   |      |      |      |         |         |         |        |         |         |      |       |
+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+--------+---------+---------+------+-------+
|get_size               |        |          |Yes    |   |      |Yes   |      |         |         |         |        |         |         |Yes   |       |
+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+--------+---------+---------+------+-------+
|get_spot_config        |        |          |       |Yes|      |      |      |         |         |         |        |         |         |      |       |
+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+--------+---------+---------+------+-------+
|get_subnetid           |        |          |       |Yes|      |      |      |         |         |         |        |         |         |      |       |
+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+--------+---------+---------+------+-------+
|iam_profile            |Yes     |          |       |Yes|      |      |      |         |         |         |        |         |         |Yes   |       |
+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+--------+---------+---------+------+-------+
|import_key             |        |          |       |   |      |Yes   |      |         |         |         |        |         |         |      |       |
+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+--------+---------+---------+------+-------+
|key_list               |        |          |       |   |      |Yes   |      |         |         |         |        |         |         |      |       |
+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+--------+---------+---------+------+-------+
|keyname                |Yes     |          |       |Yes|      |      |      |         |         |         |        |         |         |      |       |
+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+--------+---------+---------+------+-------+
|list_availability_zones|        |          |       |Yes|      |      |      |         |         |         |        |         |         |Yes   |Yes    |
+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+--------+---------+---------+------+-------+
|list_custom_images     |        |          |       |   |      |      |      |         |         |         |        |Yes      |         |      |Yes    |
+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+--------+---------+---------+------+-------+
|list_keys              |        |          |       |   |      |Yes   |      |         |         |         |        |         |         |      |       |
+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+--------+---------+---------+------+-------+
|list_nodes             |Yes     |Yes       |Yes    |Yes|Yes   |Yes   |Yes   |Yes      |Yes      |Yes      |Yes     |Yes      |Yes      |Yes   |Yes    |
+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+--------+---------+---------+------+-------+
|list_nodes_full        |Yes     |Yes       |Yes    |Yes|Yes   |Yes   |Yes   |Yes      |Yes      |Yes      |Yes     |Yes      |Yes      |Yes   |Yes    |
+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+--------+---------+---------+------+-------+
|list_nodes_select      |Yes     |Yes       |Yes    |Yes|Yes   |Yes   |Yes   |Yes      |Yes      |Yes      |Yes     |Yes      |Yes      |Yes   |Yes    |
+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+--------+---------+---------+------+-------+
|list_vlans             |        |          |       |   |      |      |      |         |         |         |        |Yes      |Yes      |      |       |
+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+--------+---------+---------+------+-------+
|rackconnect            |        |          |       |   |      |      |      |Yes      |         |         |        |         |         |      |       |
+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+--------+---------+---------+------+-------+
|reboot                 |        |          |       |Yes|      |Yes   |      |         |         |         |[1]     |         |         |Yes   |Yes    |
+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+--------+---------+---------+------+-------+
|reformat_node          |        |          |       |   |      |Yes   |      |         |         |         |        |         |         |      |       |
+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+--------+---------+---------+------+-------+
|securitygroup          |Yes     |          |       |Yes|      |      |      |         |         |         |        |         |         |      |       |
+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+--------+---------+---------+------+-------+
|securitygroupid        |        |          |       |Yes|      |      |      |         |         |         |        |         |         |Yes   |       |
+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+--------+---------+---------+------+-------+
|show_image             |        |          |       |Yes|      |      |      |         |Yes      |         |        |         |         |Yes   |Yes    |
+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+--------+---------+---------+------+-------+
|show_key               |        |          |       |   |      |Yes   |      |         |         |         |        |         |         |      |       |
+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+--------+---------+---------+------+-------+
|show_keypair           |        |          |Yes    |Yes|      |      |      |         |         |         |        |         |         |      |       |
+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+--------+---------+---------+------+-------+
|show_volume            |        |          |       |Yes|      |      |      |         |         |         |        |         |         |      |       |
+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+--------+---------+---------+------+-------+

[1] Yes, if salt-api is enabled.