123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081 |
- .. _proxy-minion-ssh-end-to-end-example:
- ========================================
- Salt Proxy Minion SSH End-to-End Example
- ========================================
- The following is walkthrough that documents how to run a sample SSH service
- and configure one or more proxy minions to talk to and control it.
- 1. This walkthrough uses a custom SSH shell to provide an end to end example.
- Any other shells can be used too.
- 2. Setup the proxy command shell as shown https://github.com/saltstack/salt-contrib/tree/master/proxyminion_ssh_example
- Now, configure your salt-proxy.
- 1. Edit ``/etc/salt/proxy`` and add an entry for your master's location
- .. code-block:: yaml
- master: localhost
- multiprocessing: False
- 2. On your salt-master, ensure that pillar is configured properly. Select an ID
- for your proxy (in this example we will name the proxy with the letter 'p'
- followed by the port the proxy is answering on). In your pillar topfile,
- place an entry for your proxy:
- .. code-block:: yaml
- base:
- 'p8000':
- - p8000
- This says that Salt's pillar should load some values for the proxy ``p8000``
- from the file ``/srv/pillar/p8000.sls`` (if you have not changed your default pillar_roots)
- 3. In the pillar root for your base environment, create the ``p8000.sls`` file with the
- following contents:
- .. code-block:: yaml
- proxy:
- proxytype: ssh_sample
- host: saltyVM
- username: salt
- password: badpass
- 4. Make sure your salt-master is running.
- 5. Start the salt-proxy in debug mode
- .. code-block:: bash
- salt-proxy --proxyid=p8000 -l debug
- 6. Accept your proxy's key on your salt-master
- .. code-block:: bash
- salt-key -y -a p8000
- The following keys are going to be accepted:
- Unaccepted Keys:
- p8000
- Key for minion p8000 accepted.
- 7. Now you should be able to run commands on your proxy.
- .. code-block:: bash
- salt p8000 pkg.list_pkgs
- 8. The SSH shell implements a degenerately simple pkg.
- To "install" a package, use a standard
- ``pkg.install``. If you pass '==' and a verrsion number after the package
- name then the service will parse that and accept that as the package's
- version.
|