https://github.com/vmware-archive/heist
Ephemeral software tunneling and delivery system
https://github.com/vmware-archive/heist
Last synced: 29 days ago
JSON representation
Ephemeral software tunneling and delivery system
- Host: GitHub
- URL: https://github.com/vmware-archive/heist
- Owner: vmware-archive
- License: gpl-3.0
- Archived: true
- Created: 2019-09-03T16:59:43.000Z (over 5 years ago)
- Default Branch: master
- Last Pushed: 2020-02-10T21:41:47.000Z (about 5 years ago)
- Last Synced: 2024-08-01T19:44:14.236Z (9 months ago)
- Language: Python
- Size: 184 KB
- Stars: 24
- Watchers: 18
- Forks: 6
- Open Issues: 17
-
Metadata Files:
- Readme: README.rst
- License: LICENSE
Awesome Lists containing this project
README
=====
Heist
=====MOVED TO GITLAB
===============POP projects developed by Saltstack are being moved to Gitlab.
The new location of idem is here:
https://gitlab.com/saltstack/pop/heist
Intro
=====Heist creates network tunnels for distributing and managing agents. While it has
been originally built to deploy and manage Salt Minions, it can be used to
distribute and manage other agents or plugins if extended to do so.Using Heist For Salt
====================This tutorial will go over how to set up Heist to manage ephemeral Salt
Minions. 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`.Using Heist is very easy, Start by downloading Heist. Just install via
`pip`:.. code-block:: bash
pip install heist
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 or Mac (Windows coming soon!):
For Linux:
.. code-block:: bash
wget https://repo.saltstack.com/salt-bin/linux/salt
For Mac:
.. code-block:: bash
wget https://repo.saltstack.com/salt-bin/osx/salt
Now you can just run it!
.. code-block:: bash
chmod +x salt
sudo ./salt masterNow 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:.. code-block:: yaml
system_name:
host: 192.168.4.4
username: fred
password: freds_passwordThe roster files typically all live inside of a roster directory. But to get
started will will execute a single roster file with `heist`:.. code-block:: bash
heist -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:.. code-block:: bash
./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:.. code-block:: bash
./salt \* test.version
Thats 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!!