123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263 |
- ==============================
- 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:
- https://salt-cloud.readthedocs.io
- 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 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
|