https://github.com/juniper/docker-saltstack-junos
Dockerfile to create a working Saltstack container for Junos
https://github.com/juniper/docker-saltstack-junos
Last synced: about 1 year ago
JSON representation
Dockerfile to create a working Saltstack container for Junos
- Host: GitHub
- URL: https://github.com/juniper/docker-saltstack-junos
- Owner: Juniper
- Created: 2016-11-08T13:18:14.000Z (over 9 years ago)
- Default Branch: master
- Last Pushed: 2017-01-13T12:13:38.000Z (over 9 years ago)
- Last Synced: 2025-05-05T21:35:17.803Z (about 1 year ago)
- Language: Python
- Size: 83 KB
- Stars: 21
- Watchers: 19
- Forks: 7
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# SaltStack Docker Containers for Junos
[](https://travis-ci.org/Juniper/docker-saltstack-junos)
This project has been designed to help you to get started easily with SaltStack on Junos.
In this project you'll find:
- **A docker container** with all SaltStack and all Junos Libraries
- **Make script** to easily start, stop and clean any number of docker containers
- **A Use-Case with SaltStack Engine** to collect Syslog from Junos and convert them into Events in SaltStack
- **A Use-Case with SaltStack Beacon** to monitor a Junos string in a file and convert it into Event in SaltStack
# Table of Content
* [SaltStack Docker Containers for Junos](#saltstack-docker-containers-for-junos)
* [Getting Started / 'Hello World' with Engine](#getting-started--hello-world-with-engine)
* [1- Define Proxies](#1--define-proxies)
* [2- Start Salt Master, Engine and Proxies Automatically](#2--start-salt-master-engine-and-proxies-automatically)
* [4- Access Salt Master Shell](#4--access-salt-master-shell)
* [5- (optional) Verify Proxy is running](#5--optional-verify-proxy-is-running)
* [Contributer](#contributer)
* [Known Issues](#known-issues)
# More Content
* [The Use Case Engine](uc-engine/README.md)
* [The Use Case Beacon](uc-beacon/README.md)
* [The Makefile](docs/MAKEFILE.md)
* [Operation](docs/OPERATION.md)
# Getting Started / 'Hello World' with Engine
## 1- Define Proxies
Define `uc-engine/pillar/top.sls` for example:
```bash
root@host# cat uc-engine/pillar/top.sls
base:
proxy01:
- proxy01
```
and associate under `uc-engine/pillar/`:
```bash
root@host# cat uc-engine/pillar/proxy01.sls
proxy:
proxytype: junos
host: 172.17.254.1
username: admin
passwd: juniper1
```
## 2- Start Salt Master, Engine and Proxies Automatically
Under the main directory execute:
```bash
root@host# make master-start
```
or
```bash
#make clean will not work if starting docker like that
root@host# docker run -d juniper/saltstack salt-master -l debug
```
*Note:* Proxies are getting automatically started within the Salt Master Engine
## 3- Verify
Verify that `saltmaster-engine` is running:
```bash
root@host# docker ps
```
## 4- Access Salt Master Shell
```
root@host# make master-shell
```
## 5- (optional) Verify Proxy is running
Check if proxy01 is running under the saltmaster-engine
```
root@saltmaster-engine# ps -ef | grep proxy01
```
# Contributer
- Damien Garros
- Iddo Cohen
- Nitin Kumar
- Stephen Steiner
# Known Issues
- **urllib3\util\ssl_.py - 'SNIMissingWarning, InsecurePlatform' Warnings:** Solution is to upgrade Python from 2.7.6 to 2.7.9 or ```pip install pyOpenSSL ndg-httpsclient pyasn1```. Please note it does not effect salt-master, salt-minion or salt-proxy, in their functionality.
- **Currently netconf port 830 must be open on the Junos device** Solution is to ```set system services netconf ssh```. Please note an option for using port 22 is being added.