mirror of
https://github.com/valitydev/salt.git
synced 2024-11-07 08:58:59 +00:00
264 lines
7.9 KiB
ReStructuredText
264 lines
7.9 KiB
ReStructuredText
==============================
|
|
Salt Cloud 0.8.6 Release Notes
|
|
==============================
|
|
|
|
Welcome to 0.8.6! This is an exciting release, especially for EC2 users. To see
|
|
what new features are available, read on.
|
|
|
|
Documentation
|
|
=============
|
|
|
|
The documentation for Salt Cloud can be found on Read the Docs:
|
|
http://salt-cloud.readthedocs.org
|
|
|
|
Download
|
|
========
|
|
|
|
Salt Cloud can be downloaded and install via pypi:
|
|
|
|
https://pypi.python.org/packages/source/s/salt-cloud/salt-cloud-0.8.6.tar.gz
|
|
|
|
Some packages have been made available for salt-cloud and more on on their
|
|
way. Packages for Arch and FreeBSD are being made available thanks to the
|
|
work of Christer Edwards, and packages for RHEL and Fedora are being created
|
|
by Clint Savage. The Ubuntu PPA is being managed by Sean Channel. Package
|
|
availability will be announced on the salt mailing list.
|
|
|
|
Updated libcloud
|
|
================
|
|
This version of Salt Cloud now depends upon libcloud version 0.12.1. Be sure to
|
|
update your packages accordingly.
|
|
|
|
|
|
Salt Outputter
|
|
==============
|
|
Previously, output from Salt Cloud was a mix of log output and print
|
|
statements, while the Salt outputter system has grown into a beautiful,
|
|
configurable tool. This release of Salt Cloud now takes advantage of the Salt
|
|
outputter system, making the output from the salt-cloud command much more
|
|
beautiful, easy to read, and usable from other scripts.
|
|
|
|
|
|
Experimental EC2 Driver
|
|
=======================
|
|
A new driver has been introduced for Amazon EC2, to potentially replace the
|
|
existing AWS driver. This driver contains several optimizations which have been
|
|
found to greatly improve instance creation and deployment. They also allow for
|
|
extra functionality to be added, which is not currently available in the AWS
|
|
driver. However, it should be noted that the EC2 driver is currently considered
|
|
to be experiemental. While existing AWS usage should not currently differ, it
|
|
should be expected to change between versions until it is declared stable.
|
|
|
|
Many of the features of this release are specific to the EC2 driver. Please
|
|
check the AWS documentation for configuration and usage of the EC2 driver.
|
|
|
|
|
|
AWS/EC2 Rename on Destroy
|
|
=========================
|
|
When instances on AWS are destroyed, there will be a lag between the time that
|
|
the action is sent, and the time that Amazon cleans up the instance. During this
|
|
time, the instance still retails a Name tag, which will cause a collision if the
|
|
creation of an instance with the same name is attempted before the cleanup
|
|
occurs. In order to avoid such collisions, Salt Cloud can be configured to
|
|
rename instances when they are destroyed. The new name will look something like:
|
|
|
|
.. code-block:: bash
|
|
|
|
myinstance-DEL20f5b8ad4eb64ed88f2c428df80a1a0c
|
|
|
|
In order to enable this, add AWS.rename_on_destroy line to the main
|
|
configuration file:
|
|
|
|
.. code-block:: yaml
|
|
|
|
AWS.rename_on_destroy: True
|
|
|
|
|
|
New Action: show_instance
|
|
=========================
|
|
This action is a thin wrapper around --full-query, which displays details on a
|
|
single instance only. In an environment with several machines, this will save a
|
|
user from having to sort through all instance data, just to examine a single
|
|
instance.
|
|
|
|
.. code-block:: bash
|
|
|
|
$ salt-cloud -a show_instance myinstance
|
|
|
|
|
|
Actions vs Functions
|
|
====================
|
|
Salt Cloud 0.8.3 introduced the concept of provider-specific actions. However,
|
|
these actions were designed to operate on specific instances within a provider.
|
|
In order to perform calls on a provider, but not on specific instances,
|
|
functions have been added. Currently, only EC2 takes advantage of these.
|
|
|
|
|
|
New Function: show_image
|
|
========================
|
|
This is a function that describes an AMI on EC2. This will give insight as to
|
|
the defaults that will be applied to an instance using a particular AMI.
|
|
|
|
.. code-block:: bash
|
|
|
|
$ salt-cloud -f show_image ec2 image=ami-fd20ad94
|
|
|
|
|
|
EC2: delvol_on_destroy
|
|
======================
|
|
This argument overrides the default DeleteOnTermination setting in the AMI for
|
|
the root EBS volume for an instance. Many AMIs contain 'false' as a default,
|
|
resulting in orphaned volumes in the EC2 account, which may unknowingly be
|
|
charged to the account. This setting can be added to the profile or map file
|
|
for an instance.
|
|
|
|
.. code-block:: yaml
|
|
|
|
delvol_on_destroy: True
|
|
|
|
|
|
This can also be set as a global setting in the EC2 cloud configuration:
|
|
|
|
.. code-block:: yaml
|
|
|
|
EC2.delvol_on_destroy: True
|
|
|
|
|
|
The setting for this may be changed on an existing instance using one of the
|
|
following commands:
|
|
|
|
.. code-block:: bash
|
|
|
|
salt-cloud -a delvol_on_destroy myinstance
|
|
salt-cloud -a keepvol_on_destroy myinstance
|
|
|
|
|
|
EC2 Termination Protection
|
|
==========================
|
|
AWS allows the user to enable and disable termination protection on a specific
|
|
instance. An instance with this protection enabled cannot be destroyed. The EC2
|
|
driver adds a show_term_protect action to the regular AWS functionality.
|
|
|
|
.. code-block:: bash
|
|
|
|
salt-cloud -a show_term_protect mymachine
|
|
salt-cloud -a enable_term_protect mymachine
|
|
salt-cloud -a disable_term_protect mymachine
|
|
|
|
|
|
EC2 Alternate Endpoint
|
|
======================
|
|
Normally, ec2 endpoints are build using the region and the service_url. The
|
|
resulting endpoint would follow this pattern:
|
|
|
|
.. code-block:: yaml
|
|
|
|
ec2.<region>.<service_url>
|
|
|
|
This results in an endpoint that looks like:
|
|
|
|
.. code-block:: yaml
|
|
|
|
ec2.us-east-1.amazonaws.com
|
|
|
|
There are other projects that support an EC2 compatibility layer, which this
|
|
scheme does not account for. This can be overridden by specifying the endpoint
|
|
directly in the main cloud configuration file:
|
|
|
|
.. code-block:: yaml
|
|
|
|
EC2.endpoint: myendpoint.example.com:1138/services/Cloud
|
|
|
|
|
|
EC2 Volume Management
|
|
=====================
|
|
The EC2 driver has several functions and actions for management of EBS volumes.
|
|
|
|
|
|
Creating Volumes
|
|
----------------
|
|
A volume may be created, independent of an instance. A zone must be specified.
|
|
A size or a snapshot may be specified (in GiB). If neither is given, a default
|
|
size of 10 GiB will be used. If a snapshot is given, the size of the snapshot
|
|
will be used.
|
|
|
|
.. code-block:: bash
|
|
|
|
salt-cloud -f create_volume ec2 zone=us-east-1b
|
|
salt-cloud -f create_volume ec2 zone=us-east-1b size=10
|
|
salt-cloud -f create_volume ec2 zone=us-east-1b snapshot=snap12345678
|
|
|
|
|
|
Attaching Volumes
|
|
-----------------
|
|
Unattached volumes may be attached to an instance. The following values are
|
|
required: name or instance_id, volume_id, and device.
|
|
|
|
.. code-block:: bash
|
|
|
|
salt-cloud -a attach_volume myinstance volume_id=vol-12345 device=/dev/sdb1
|
|
|
|
|
|
Show a Volume
|
|
-------------
|
|
The details about an existing volume may be retrieved.
|
|
|
|
.. code-block:: bash
|
|
|
|
salt-cloud -a show_volume myinstance volume_id=vol-12345
|
|
salt-cloud -f show_volume ec2 volume_id=vol-12345
|
|
|
|
|
|
Detaching Volumes
|
|
-----------------
|
|
An existing volume may be detached from an instance.
|
|
|
|
.. code-block:: bash
|
|
|
|
salt-cloud -a detach_volume myinstance volume_id=vol-12345
|
|
|
|
|
|
Deleting Volumes
|
|
----------------
|
|
A volume that is not attached to an instance may be deleted.
|
|
|
|
.. code-block:: bash
|
|
|
|
salt-cloud -f delete_volume ec2 volume_id=vol-12345
|
|
|
|
|
|
Managing Key Pairs on EC2
|
|
=========================
|
|
The EC2 driver has the ability to manage key pairs.
|
|
|
|
|
|
Creating a Key Pair
|
|
-------------------
|
|
A key pair is required in order to create an instance. When creating a key pair
|
|
with this function, the return data will contain a copy of the private key.
|
|
This private key is not stored by Amazon, and will not be obtainable past this
|
|
point, and should be stored immediately.
|
|
|
|
.. code-block:: bash
|
|
|
|
salt-cloud -f create_keypair ec2 keyname=mykeypair
|
|
|
|
|
|
Show a Key Pair
|
|
---------------
|
|
This function will show the details related to a key pair, not including the
|
|
private key itself (which is not stored by Amazon).
|
|
|
|
.. code-block:: bash
|
|
|
|
salt-cloud -f delete_keypair ec2 keyname=mykeypair
|
|
|
|
|
|
Delete a Key Pair
|
|
-----------------
|
|
This function removes the key pair from Amazon.
|
|
|
|
.. code-block:: bash
|
|
|
|
salt-cloud -f delete_keypair ec2 keyname=mykeypair
|