No project description provided
Project description
=============================== Spotr
Spotr simplifies launching, snapshotting and destroying AWS spot instances.
It's designed for users wanting to use a spot instance as a development box, and persist the state in between sessions.
Quick Start
First, install the library from pip or clone this git repository and install locally:
.. code-block:: sh
$ pip install spotr
.. code-block:: sh
$ pip install -e .
python -m build
Next, set up credentials and region (in ~/.aws/config
):
.. code-block:: ini
[default]
aws_access_key_id = YOUR_KEY
aws_secret_access_key = YOUR_SECRET
region=us-west-1
Then, launch an instance using:
.. code-block:: sh
$ spotr launch --type p2.xlarge --max-bid .30 --ami ami-4bf20033
List your running spotr instances with:
.. code-block:: sh
$ spotr list
When you're done working, you can save the current state (take a snapshot) using:
.. code-block:: sh
$ spotr snapshot
And then to terminate the instance:
.. code-block:: sh
$ spotr destroy
Next time you launch an instance, leave out the --ami
tag and you'll restore the most recent snapshot taken with spotr.
.. code-block:: sh
$ spotr launch --type p2.xlarge --max-bid .30
You can specify default configurations in ~/.spotr/config
:
.. code-block:: ini
[config]
max_bid=.30
type=p2.xlarge
ebs_optimized=true
security_group_id=sg-XXXXXXXXXXXXXXX
ami=ami-XXXXXXXXXXXXXXXX
us-west-2a_subnet_id=subnet-XXXXXXXX
us-west-2b_subnet_id=subnet-XXXXXXXX
us-west-2c_subnet_id=subnet-XXXXXXXX
us-west-2d_subnet_id=subnet-XXXXXXXX
iam_instance_profile_arn=arn:aws:iam::XXXXXXXX:instance-profile/instance-profile-role
hosted_zone_id=XXXXXXXXXXX
record_name=subdomain.example.com
user_data=#cloud-config
runcmd:
- [ sh, -c, "/bin/bash /opt/dosomethinguseful.sh" ]
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for spotr-0.0.16-py2.py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | a364c24f8350d76d572dd30a250399bd707b77a97c95cb74fd7e8c53a6bafd91 |
|
MD5 | f11b9778c7d8df10c785d0fe72abb0b9 |
|
BLAKE2b-256 | 50db0ebd2ba3033c9f77d0a24cda6aa12d917b42f4df583d78a351ad6829ef48 |