A simple-to-use wrapper over the AWS Infinidash API
Project description
Pyfinidash
Pyfinidash is a simple-to-use wrapper over the AWS Infinidash API. Infinidash allows users to quickly rescale applications across availability zones, programmatically. This rescaling is managed with identifier tokens generated from a key provided by an authenticated AWS user in any single given availability zone. The real magic is the cross-availability zone authentication engine which has been added that brings together the ability for applications to be auto-scaled within a single availability zone, and the ability to replicate across availability zones. The replication/rescaling process is enhanced by the ability to programmatically execute a fully recursive replication/rescaling of the application throughout all availability zones across the globe.
Pyfinidash is designed to take this entire process and make it user friendly.
Setup
To install Pyfinidash, make sure you have Python 3.x installed. Simply run this command to get started:
pip3 install pyfinidash
Using Pyfinidash
Generating an Infinidash Configuration
Pyfinidash reads the aws-infinidash.json
file at the root of your project. In case you don't know how to format one, that's just fine. Until the aws-cli
is updated with a full auto-generation of the configuration file, Pyfinidash can do it for you. From the command line run the following:
pyfinidash init
That's it! A brand new config file will be written to your project.
Using Pyfinidash in a Rescaling Script
Pyfinidash makes it easy to both encrypt and publish hashes for handing cross-availability-zone authentication, as well as scaling containerized applications across availability zones without needing much of the normal setup required for availability zone replication.
Here's the demo built into the CLI:
client = InfinidashClient()
client.encrypt(key).publish()
print(client.encrypted_key)
application = client.application("Hello")
print(application.get_app_arn())
print("")
application.scale_to(10)
rescaled_instances = application.get_rescaled_instances()
for instance in rescaled_instances:
print(instance.get_app_arn())
You can see, with just a few lines of code, we get rescaling to 10 instances with minimal code, and we can quickly and easily capture the arns for each of the deployed application container instances. The wonderful bit of news is, each rescaled instance is, itself, a full application container instance which can be rescaled again.
This recursive rescaling technology is what makes Infinidash the perfect tool to quickly bring your application containers up and get them running in web scale!
Happy hacking!
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 pyfinidash-0.1.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 94a487e59ed3f2bff7c9d1bafc7b74fa77de18de2799e9bb9fb098d33f7b6445 |
|
MD5 | 3a12a1216a6fcfcacf688778ddf6e4ad |
|
BLAKE2b-256 | 8bc0ea1a4f479d30213b02a0475a1be8609d750cd8f94776460dc6a7d316a3d8 |