Skip to main content

Vertical app-merge components for salt into heist

Project description

Made with pop, a Python implementation of Plugin Oriented Programming Made with heist, a POP plugin to create network tunnels for distributing and managing agents Made with Python

About

The whole point of Heist is to make deployment and management of Salt easy!

Before you start please be advised that a more detailed quickstart is available in the docs for heist-salt.

What is POP?

This project is built with pop, a Python-based implementation of Plugin Oriented Programming (POP). POP seeks to bring together concepts and wisdom from the history of computing in new ways to solve modern computing problems.

For more information:

What is Heist?

This project is built with Heist, a POP plugin that creates network tunnels for distributing and managing agents. While it has been originally built to deploy and manage Salt minions (heist-salt), it can be used to distribute and manage other agents or plugins if extended to do so.

Getting Started

Prerequisites

  • Python 3.6+

  • git (if installing from source, or contributing to the project)

Installation

If wanting to use heist-salt, you can do so by either installing from PyPI or from source.

Install from PyPI

To install the latest version from PyPI:

# Requires Python 3.6+
pip install heist-salt

Install from source

heist-salt can also be installed from source:

# Requires git and Python 3.6+
git clone git@gitlab.com:saltstack/pop/heist-salt.git
cd heist-salt
pip install -e .

Usage

Setting up a Salt master

Don’t worry, this is a snap! Once Heist is installed you will need a Salt master to connect to. If you have an existing Salt master running you can skip this section, just run heist on your Salt master.

Download the all-in-one Salt binary for Linux (Windows coming soon!):

For Linux:

wget https://repo.saltproject.io/salt/singlebin/3003.3-1/salt-3003.3-1-linux-amd64.tar.gz

This is to install the 3003.3 version of Salt. You can view the directory listing here: https://repo.saltproject.io/salt/singlebin/ to see all of the Salt versions available for download.

Extract the tarball:

tar -xvf salt-3003.3-1-linux-amd64.tar.gz

This will extract a single file named salt. You can now use this single binary to run the Salt master.

chmod +x salt
sudo ./salt master

Now you have a running Salt master to control your minions!

Making your roster

A Roster is a file used by Heist to map login information to the systems in your environment. This file can be very simple and just needs to tell Heist where your systems are and how to log into them via ssh. Open a file called roster.cfg and add the data needed to connect to a remote system via ssh:

192.168.4.4:
  username: fred
  password: freds_password

The roster files typically all live inside of a roster directory. But to get started will execute a single roster file with heist:

heist salt.minion -R roster.cfg

Assuming your roster is correct, heist will now connect to the remote system, deploy a Salt minion, and connect it to your running master! Now you can use the same binary that you started the master with to accept your new minion’s keys:

./salt key -A

Then give your minion a few seconds to authenticate and then run your first salt command on the newly set up minion:

./salt \* test.version

That’s it! Now that the minion is up you can run salt commands on it at breakneck speed, the full power of Salt is at your fingertips!!

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

heist-salt-5.3.0.tar.gz (20.2 kB view details)

Uploaded Source

Built Distribution

heist_salt-5.3.0-py3-none-any.whl (21.9 kB view details)

Uploaded Python 3

File details

Details for the file heist-salt-5.3.0.tar.gz.

File metadata

  • Download URL: heist-salt-5.3.0.tar.gz
  • Upload date:
  • Size: 20.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.8.13

File hashes

Hashes for heist-salt-5.3.0.tar.gz
Algorithm Hash digest
SHA256 ff05cb4374018e663e65f47a5284a476fbafb6ee691be5b1ae1e72ddf825680c
MD5 73598c7add1f58855b1a50597a7f8a24
BLAKE2b-256 ef24addb4a315fe964d853be81a5bdda2e7b5135f536afee4b3746730d406571

See more details on using hashes here.

File details

Details for the file heist_salt-5.3.0-py3-none-any.whl.

File metadata

  • Download URL: heist_salt-5.3.0-py3-none-any.whl
  • Upload date:
  • Size: 21.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.8.13

File hashes

Hashes for heist_salt-5.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 53b6e48265154686e03f9713f6b08bfb63ed3496a33b556de0bf1c5bb79ba4ee
MD5 f6269ac897528b299663fb169184f0a5
BLAKE2b-256 3e1be0cdd15e8b76539a695cb3a4a0d7343f7393d12a8aa4aa7ca11d10e23682

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page