Difference between revisions of "SatNOGS Client Ansible"

From SatNOGS Wiki
(Installation: git checkout stable)
(Remark on the name selection for youruser.)
 
(8 intermediate revisions by 4 users not shown)
Line 1: Line 1:
 
==Introduction==
 
==Introduction==
  
'''SatNOGS Client Ansible''' makes the actual provisioning of the '''SatNOGS Client''' system. It is called, under the hood, when applying the configuration using [[SatNOGS Client Setup|SatNOGS Client Setup utility]]. It currently supports Raspbian and Debian (stretch and buster).  
+
{{Warning|Follow these instructions only if you are provisioning SatNOGS to Debian from another host or are installing on the same host. }}
 +
 
 +
'''SatNOGS Client Ansible''' makes the actual provisioning of the '''SatNOGS Client''' system. It is called, under the hood, when applying the configuration using [[SatNOGS Client Setup|SatNOGS Client Setup utility]]. It currently supports Raspbian and Debian (stretch and buster).
  
 
==Raspbian==
 
==Raspbian==
  
For Raspberry Pi, which is the reference platform for SatNOGS, a [[Raspberry Pi|Raspbian image]] with '''SatNOGS Client Ansible''' pre-installed is available.
+
For Raspberry Pi, which is the reference platform for SatNOGS, a custom Raspbian image with '''SatNOGS Client Ansible''' pre-installed is available. Installation instructions are given in the [[Raspberry_Pi| Raspberry Pi Setup Guide]].
  
 
==Debian==
 
==Debian==
  
{{Warning|Follow these instructions only if you are provisioning SatNOGS to Debian from another host or are installing on the same host. If you are using [[Raspberry_Pi|SatNOGS Raspbian]] image, follow [[SatNOGS_Client_Setup|SatNOGS Client Setup]] to set up your system. }}These sections contain generic instructions for installing SatNOGS Client on a Debian system.
+
These sections contain generic instructions for installing SatNOGS Client on a Debian system.
 +
 
 +
==Other distributions==
 +
 
 +
Other distributions are not supported by '''SatNOGS Client Ansible''', as the pre-built packages won't be compatible. Thus, while derived from Debian, '''SatNOGS Client Ansible''' is known to break for Ubuntu and Linux Mint. If you are an experienced user, a manual installation of all components could be possible.
  
 +
==Installation Guide==
 
===Prerequisites===
 
===Prerequisites===
  
 
*A target Debian system. To install Debian please follow the [https://www.debian.org/releases/stretch/installmanual Debian Installation Guide] and chose the net installer if you want to run a headless server. The target system can be the host itself.
 
*A target Debian system. To install Debian please follow the [https://www.debian.org/releases/stretch/installmanual Debian Installation Guide] and chose the net installer if you want to run a headless server. The target system can be the host itself.
*A user (referenced later as ''youruser'') which is member of 'sudo' group exists on the target system.
+
*A user (referenced later as ''youruser'') which is member of 'sudo' group exists on the target system. Don't use the username `satnogs` when you install the Debian system.
 
*An SSH server running on the target system.
 
*An SSH server running on the target system.
*A host system with Git and latest version of Ansible installed. To install Ansible on Debian, follow the [https://docs.ansible.com/ansible/latest/installation_guide/intro_installation.html#latest-releases-via-apt-debian Ansible Installation Guide].
+
*Install installation dependencies: `sudo apt-get install ansible git sshpass python-setuptools`
  
 
===Installation===
 
===Installation===
Line 22: Line 29:
 
On the host system run the following commands:
 
On the host system run the following commands:
 
  $ git clone <nowiki>https://gitlab.com/librespacefoundation/satnogs/satnogs-client-ansible.git</nowiki>    # Clone SatNOGS Client Ansible repository
 
  $ git clone <nowiki>https://gitlab.com/librespacefoundation/satnogs/satnogs-client-ansible.git</nowiki>    # Clone SatNOGS Client Ansible repository
  $ cd satnogs-client-ansible                             # Change to cloned repository directory
+
  $ cd satnogs-client-ansible                                   # Change to cloned repository directory
  $ git checkout stable                                   # Optionally, check out stable (Debian Buster 10) branch
+
  $ git checkout stable                                         # Optionally, check out stable (Debian Buster 10) branch
  $ cp -r production.dist production                       # Copy dist configuration
+
  $ cp -r production.dist production                             # Copy dist configuration
  $ vi production/inventory/hosts                         # Update file with your own target host e.g. 127.0.0.1, user and SSH password
+
  $ vi production/inventory/hosts                               # Update file with your own target host e.g. 127.0.0.1, user and SSH password
  $ ssh youruser@yourtargetsystem true                     # Test SSH connection to target system
+
  $ ssh youruser@yourtargetsystem true                           # Test SSH connection to target system
  $ ansible-playbook -i production/inventory -K site.yml  # Run Ansible playbook
+
  $ ansible-playbook -i production/inventory/hosts -K site.yml  # Run Ansible playbook
  $ ssh -t youruser@yourtargetsystem sudo satnogs-setup   # Setup SatNOGS client (see below)
+
  $ ssh -t youruser@yourtargetsystem sudo satnogs-setup         # Setup SatNOGS client (see below)
  
 
<br />
 
<br />
  
== See also ==
+
===Next Steps===
* [[SatNOGS Client Setup]]
+
 
 +
Follow [[SatNOGS_Client_Setup|SatNOGS Client Setup]] to configure your system and SatNOGS station.
  
 
[[Category:Build]]
 
[[Category:Build]]
 
[[Category:Software]]
 
[[Category:Software]]

Latest revision as of 17:13, 12 February 2022

Introduction

Important.png
Follow these instructions only if you are provisioning SatNOGS to Debian from another host or are installing on the same host.

SatNOGS Client Ansible makes the actual provisioning of the SatNOGS Client system. It is called, under the hood, when applying the configuration using SatNOGS Client Setup utility. It currently supports Raspbian and Debian (stretch and buster).

Raspbian

For Raspberry Pi, which is the reference platform for SatNOGS, a custom Raspbian image with SatNOGS Client Ansible pre-installed is available. Installation instructions are given in the Raspberry Pi Setup Guide.

Debian

These sections contain generic instructions for installing SatNOGS Client on a Debian system.

Other distributions

Other distributions are not supported by SatNOGS Client Ansible, as the pre-built packages won't be compatible. Thus, while derived from Debian, SatNOGS Client Ansible is known to break for Ubuntu and Linux Mint. If you are an experienced user, a manual installation of all components could be possible.

Installation Guide

Prerequisites

  • A target Debian system. To install Debian please follow the Debian Installation Guide and chose the net installer if you want to run a headless server. The target system can be the host itself.
  • A user (referenced later as youruser) which is member of 'sudo' group exists on the target system. Don't use the username `satnogs` when you install the Debian system.
  • An SSH server running on the target system.
  • Install installation dependencies: `sudo apt-get install ansible git sshpass python-setuptools`

Installation

On the host system run the following commands:

$ git clone https://gitlab.com/librespacefoundation/satnogs/satnogs-client-ansible.git    # Clone SatNOGS Client Ansible repository
$ cd satnogs-client-ansible                                    # Change to cloned repository directory
$ git checkout stable                                          # Optionally, check out stable (Debian Buster 10) branch
$ cp -r production.dist production                             # Copy dist configuration
$ vi production/inventory/hosts                                # Update file with your own target host e.g. 127.0.0.1, user and SSH password
$ ssh youruser@yourtargetsystem true                           # Test SSH connection to target system
$ ansible-playbook -i production/inventory/hosts -K site.yml   # Run Ansible playbook
$ ssh -t youruser@yourtargetsystem sudo satnogs-setup          # Setup SatNOGS client (see below)


Next Steps

Follow SatNOGS Client Setup to configure your system and SatNOGS station.