In the past I have installed Chirpstack v3 dozens of times using the ansible playbook method of performing a remote (non-Vagrant) installation and it always just worked.
So - I figured I’d give the v4 ansible installer a try today:
ansible-playbook -i inventory deploy.yml
[WARNING]: Could not match supplied host pattern, ignoring: vagrant
PLAY [install python] ************************************************************************************************
TASK [install python-minimal] ****************************************************************************************
changed: [v4testchirp]
PLAY [single-server ChirpStack setup] ********************************************************************************
TASK [Gathering Facts] ***********************************************************************************************
ok: [v4testchirp]
TASK [base : upgrade installed packages] *****************************************************************************
ok: [v4testchirp]
TASK [base : install packages] ***************************************************************************************
ok: [v4testchirp] => (item=apt-transport-https)
ok: [v4testchirp] => (item=iptables-persistent)
ok: [v4testchirp] => (item=sudo)
ok: [v4testchirp] => (item=gpg)
ok: [v4testchirp] => (item=golang-cfssl)
TASK [base : import ChirpStack gpg key] ******************************************************************************
ok: [v4testchirp]
TASK [base : add ChirpStack deb repository] **************************************************************************
ok: [v4testchirp]
TASK [chirpstack-ca : create directory] ******************************************************************************
ok: [v4testchirp]
TASK [chirpstack-ca : copy configuration] ****************************************************************************
ok: [v4testchirp] => (item=ca-config.json)
ok: [v4testchirp] => (item=ca-csr.json)
TASK [chirpstack-ca : generate chirpstack ca] ************************************************************************
ok: [v4testchirp]
TASK [iptables : allow connections on configured ports] **************************************************************
fatal: [v4testchirp]: FAILED! => {"msg": "'iptables' is undefined"}
PLAY RECAP ***********************************************************************************************************
v4testchirp : ok=9 changed=1 unreachable=0 failed=1 skipped=0 rescued=0 ignored=0
I’m assuming it is complaining about something in my
group_vars/single_server.yml
However - it looks OK to me:
# iptable configuration
#
# all ports will be blocked, except the ports listed below
iptables:
accept:
-
port: 22
source: 0.0.0.0/0
protocol: tcp
-
port: 80
source: 0.0.0.0/0
protocol: tcp
-
port: 443
source: 0.0.0.0/0
protocol: tcp
-
port: 1883
source: 0.0.0.0/0
protocol: tcp
-
port: 1884
source: 0.0.0.0/0
protocol: tcp
-
port: 3001
source: 0.0.0.0/0
protocol: tcp
-
port: 8083
source: 0.0.0.0/0
protocol: tcp
-
port: 8883
source: 0.0.0.0/0
protocol: tcp
-
port: 1700
source: 0.0.0.0/0
protocol: udp
# Mosquitto configuration (MQTT)
mosquitto:
# the full domain by which the MQTT broker is reachable
# e.g. subdomain.example.com
fqdn: v4testchirp.(removed)
# ChirpStack Gateway Bridge configuration
chirpstack_gateway_bridge:
# Region.
# This is used as MQTT topic prefix, and must match one of the available
# regions that are configured in the chirpstack.toml configuration file.
region: us915
# ChirpStack configuration.
chirpstack:
# The full domain by which ChirpStack is reachable.
# e.g. subdomain.example.com
fqdn: v4testchirp.(removed)
# If enabled, a Let's Encrypt certificate will be configured. Else a
# self-signed certificate will be used.
letsencrypt:
email: (removed)
request: true
# API configuration.
api:
# You must replace this value!
# To generate random secret:
# openssl rand -base64 32
secret: ppzBJbseqPD9wKTrapjntrL8N3E54ZwcIdTIEwIeb8M=
# PostgreSQL database credentials.
# The role and database will be created by Ansible.
postgresql:
db: chirpstack
user: chirpstack
password: (removed)
host: localhost