All Projects → hoffa → Kitten

hoffa / Kitten

Licence: mit
Tiny multi-server automation tool

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to Kitten

Terraform
Terraform automation for Cloud
Stars: ✭ 121 (-29.24%)
Mutual labels:  automation, aws, devops
Howtheyaws
A curated collection of publicly available resources on how technology and tech-savvy organizations around the world use Amazon Web Services (AWS)
Stars: ✭ 389 (+127.49%)
Mutual labels:  automation, aws, devops
Kubestriker
A Blazing fast Security Auditing tool for Kubernetes
Stars: ✭ 213 (+24.56%)
Mutual labels:  automation, aws, devops
Webhook
webhook is a lightweight incoming webhook server to run shell commands
Stars: ✭ 7,201 (+4111.11%)
Mutual labels:  automation, devops, sysadmin
Ebs bckup
Stars: ✭ 32 (-81.29%)
Mutual labels:  automation, aws, devops
Automated Cloud Advisor
Automated Cloud Advisor is a extensible tool that aims at facilitating cost optimization in AWS, by collecting data for resources that are under utilized. In addition, this is a great learning tool for new DevOps/Cloud engineers that want to start automating things in AWS.
Stars: ✭ 44 (-74.27%)
Mutual labels:  automation, aws, devops
Learn Devops
🚧 Learn the craft of "DevOps" (Developer Operations) to Deploy your App and Monitor it so it stays "Up"!
Stars: ✭ 139 (-18.71%)
Mutual labels:  automation, aws, devops
Walkoff
A flexible, easy to use, automation framework allowing users to integrate their capabilities and devices to cut through the repetitive, tedious tasks slowing them down. #nsacyber
Stars: ✭ 855 (+400%)
Mutual labels:  automation, devops, sysadmin
Touchdown
Cloud service orchestration framework for python
Stars: ✭ 10 (-94.15%)
Mutual labels:  automation, aws, devops
Docker Swarm
🐳🐳🐳 This repository is part of a blog series on Docker Swarm example using VirtualBox, OVH Openstack, Azure and Amazon Web Services AWS
Stars: ✭ 43 (-74.85%)
Mutual labels:  automation, aws, devops
Aws Automation
AWS automation scripts and lambda functions
Stars: ✭ 81 (-52.63%)
Mutual labels:  automation, aws, devops
Iopipe Js Core
Observe and develop serverless apps with confidence on AWS Lambda with Tracing, Metrics, Profiling, Monitoring, and more.
Stars: ✭ 123 (-28.07%)
Mutual labels:  aws, devops
Vishwakarma
Terraform modules to create a self-hosting Kubernetes cluster on opinionated Cloud Platform.
Stars: ✭ 127 (-25.73%)
Mutual labels:  aws, devops
Pfsense Api
The missing REST API package for pfSense
Stars: ✭ 126 (-26.32%)
Mutual labels:  automation, devops
Aws Codebuild Jenkins Plugin
AWS CodeBuild integration as a Jenkins build step.
Stars: ✭ 132 (-22.81%)
Mutual labels:  aws, devops
Arkade
Open Source Kubernetes Marketplace
Stars: ✭ 2,343 (+1270.18%)
Mutual labels:  automation, devops
Inertia
✈️ Effortless, self-hosted continuous deployment for small teams and projects
Stars: ✭ 133 (-22.22%)
Mutual labels:  aws, devops
Ladder
A general purpose extensible autoscaler for the cloud
Stars: ✭ 143 (-16.37%)
Mutual labels:  automation, aws
Terrascan
Detect compliance and security violations across Infrastructure as Code to mitigate risk before provisioning cloud native infrastructure.
Stars: ✭ 2,687 (+1471.35%)
Mutual labels:  aws, devops
Ebs Automatic Nvme Mapping
Automatic mapping of EBS volumes via NVMe block devices to standard block device paths
Stars: ✭ 136 (-20.47%)
Mutual labels:  aws, sysadmin

kitten |travis|

.. |travis| image:: https://github.com/hoffa/kitten/workflows/.github/workflows/workflow.yml/badge.svg :target: https://github.com/hoffa/kitten/actions

Tiny multi-server automation tool.

Run command on multiple servers. Designed to be as simple as possible and play nice with Unix tools.

.. image:: https://i.imgur.com/QEQfOiv.png

Installation

::

pip install kitten

Prerequisites

kitten can get IP addresses from AWS resources for you. For that you'll need to have your AWS credentials set up. You can do that using awscli:

::

pip install awscli

Then:

::

aws configure

Examples

Run command on servers


Use ``kitten run``:

::

  $ kitten run uptime ubuntu 18.105.107.20 34.229.135.48
  18.105.107.20	run	uptime
  34.229.135.48	run	uptime
  18.105.107.20	17:11:48 up 2 days,  6:02,  0 users,  load average: 0.91, 2.99, 3.49
  34.229.135.48	17:11:48 up 5 days, 11:19,  0 users,  load average: 6.34, 5.94, 5.72

- Replace ``ubuntu`` with the user used to log in on the servers
- Use ``-i`` to specify a private key
- Use ``--threads`` to specify the number of concurrent connections (defaults to 10)

Get IP addresses from AWS resources

Use kitten ip with either id, asg or elb:

::

$ kitten ip asg my-tiny-asg 18.135.117.17 24.129.235.48

  • By default only private IP addresses are returned. Use --public if you prefer public IPs
  • You can change region using --region

If you're in a hurry, you can just paste any text that contains instance IDs:

::

$ kitten ip id prod-mongo-0901bc21990109ed4-eu my-hostname-06a2fc734534ef6d9 17.136.127.18 23.119.136.38

Download files from servers


Use ``kitten get``:

::

  kitten ip elb my-load-balancer | xargs kitten get /tmp/system.log ubuntu

Upload file to servers
~~~~~~~~~~~~~~~~~~~~~~

Use ``kitten put``:

::

  kitten ip asg big-prod-asg | xargs kitten put -i ~/.ssh/key.pem cat.jpg /tmp ubuntu
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].