Python CLI for cassandra snapshots. CLI allows to store and restore snapshot and uses AWS S3 bucket as storage.
Project description
Python Cassandra CLI tool
Release Notes
1.1.1
Clean up code
1.1.0
- Added --ssl flag for cqlsh command if connection supports only SSL connection; --ssl-cqlsh option
- Logic -p flag for sstableloader not mandatory for SSL connection type
- Overriding folder main folder name; --snapshot-folder-override option
1.0.3
Fix option description: create-keyspace-schema
1.0.2
Updated Authentication logic
1.0.1
Added boto3 libs in requirements
1.0.0
Initial release
Descirptoin
CLI has 5 main commands:
- copy-snapshot-folder Copy folder with snapshots from s3 bucket
- restore-snapshot-keyspace Restore Keyspace snapshot from s3 bucket
- restore-snapshot-table Restore Table snapshot from s3 bucket
- store-snapshot-keyspace Take and store Keyspace snapshot to s3 bucket
- store-snapshot-table Take and store Table snapshot to s3 bucket
AWS resources access
AWS S3 bucket
- You need to set -s3(--s3-bucket), -id(--aws-access-key-id) and -key(--aws-secret-access-key) options for the connection to AWS S3 bucket via access key.
- If your host has AWS profile setup in .aws/credentials and/or IAM role with s3 bucket permissons then CLI needs only -s3(--s3-bucket) option.
AWS Systems Manager
- You need to set -sn(--secret-name), -id(--aws-access-key-id) and -key(--aws-secret-access-key) for getting secrest from Paramenter Store.
- If your host has AWS profile setup in .aws/credentials and/or IAM role with SSM permissons then CLI needs only -sn(--secret-name) option.
- Optionally you can change -r(--aws-region) for SSM. Default value is 'us-east-1'
Commands examples:
Store keyspace snapshot on s3
python-cassandra-cli store-snapshot-keyspace
-k my_keyspace
-t tag-01-keyspace
-e dev
-s3 my.s3.bucket
-h "10.99.3.55"
--ssm-secret -sn /cassandra/dev
Store keyspace snapshot on s3 with keyspace schema
python-cassandra-cli store-snapshot-keyspace
-k my_keyspace
-t tag-01-keyspace
-e dev -s3 my.s3.bucket -h "10.99.3.55"
--ssm-secret -sn /cassandra/dev
--create-keyspace-schema
Store table snapshot on s3 with keyspace schema
python-cassandra-cli store-snapshot-table
-k my_keyspace
-tn my_table
-t tag-01-table
-e dev
-s3 my.s3.bucket
-h "10.99.3.55"
--ssm-secret
-sn /cassandra/dev
--create-keyspace-schema
Resotore table
python-cassandra-cli restore-snapshot-table
-sf 1608700346_snapshots_tag-01-keyspace_my_keyspace_develop
-t tag-01-table
-k my_keyspace
-tn my_table -h "10.99.3.55"
--ssm-secret
-sn /cassandra/dev
-s3 my.s3.bucket
Restore table ssl
python-cassandra-cli restore-snapshot-table
-sf 1608700346_snapshots_tag-01-table_my_table_develop
-t tag-01-table
-k my_keyspace
-tn my_table
-h "10.99.3.55"
--ssm-secret
-s3 my.s3.bucket
-sn /cassandra/dev
-cf /etc/cassandra/conf/cassandra.yaml
-ks /etc/cassandra/conf/keystore.node0
-ts /etc/cassandra/conf/truststore.node0
-ssl
-pt 9142
Restore keyspace ssl with keyspace creation
python-cassandra-cli restore-snapshot-keyspace
-sf 608700346_snapshots_tag-01-keyspace_my_keyspace_develop
-t tag-01-keyspace
-k my_keyspace
-h "10.99.3.55"
--ssm-secret
-s3 my.s3.bucket
-sn /cassandra/dev
--create-keyspace-schema
-e develop
-cf /etc/cassandra/conf/cassandra.yaml
-ks /etc/cassandra/conf/keystore.node0
-ts /etc/cassandra/conf/truststore.node0
-ssl
-pt 9142
Copy folder with sanpshot on local
python-cassandra-cli copy-snapshot-folder
-s3 my.s3.bucket
-sf 1608700346_snapshots_tag-01-keyspace_my_keyspace_develop
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
Close
Hashes for python-cassandra-cli-1.1.1.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7c4c5a0b12ac9eb97335bafa74afefe6fb7ee6e0240ef9107366c5070dc3c0ab |
|
MD5 | 158e86d9b9fa91329e2c6e4164f0ae3e |
|
BLAKE2b-256 | 0a9776ee01cc828c29fe66c45c6fd6cd9b4ddac4496ac286f8575a85d0e9e49e |
Close
Hashes for python_cassandra_cli-1.1.1-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4157f8d72a9066a19aa21967a701eed4cfe3ab6dd105979ed683992785a054d1 |
|
MD5 | 034a903a20d8aac1be50f84f23906e26 |
|
BLAKE2b-256 | e12ae390af9aec0338e208f430b0f15b8d0127513fe98bde19375356fb5b4e97 |