puppet/README.md
2018-02-24 12:18:27 +01:00

109 lines
3.8 KiB
Markdown

# Rhizomatica Puppet repository
This is a puppet recipe to install and prepare an installation of RCCN on a Debian 9 system.
This is earmarked to be the future default install. For now it probably does not work for you.
Please also see the README in the master branch of this repo.
**INSTALLATION:**
Install Debian 9 (stretch) amd64 from
[https://www.debian.org/distrib/netinst](https://www.debian.org/distrib/netinst)
- During the Install process, create a user '**rhizomatica**'
- Partition as you please, otherwise "**Guided - use entire disk**"
- As above, otherwise "**All files in one partition**" is fine.
- Setup a minimal system. You don't need a **desktop environment**.
I suggest you install **SSH server** and **standard system utilities**.
- Boot into the new system, login, locally or via ssh.
- Get root with `su -` if needed and run the following:
`root@host~# apt-get install git puppet puppetmaster`
(Accept all the additional packages)
`root@host:~# cd /etc/puppet/code`
`root@host:/etc/puppet/code# mkdir environments`
`root@host:/etc/puppet/code# mkdir hiera`
`root@host:/etc/puppet/code/environments# git clone https://github.com/Rhizomatica/puppet.git production`
`root@host:/etc/puppet/code/environments# cd prodution`
`root@host:/etc/puppet/code/environments/production# git checkout whyteks/puppet4-debian`
`root@host:/etc/puppet/code/environments/production# git submodule init`
`root@host:/etc/puppet/code/environments/production# git submodule update`
`root@host:/etc/puppet/code/environments/production# cd /etc/puppet/code/hiera`
`root@host:/etc/puppet/code/environments/production# cp hiera.yaml /etc/puppet`
`root@host:/etc/puppet/code/environments/production# cp hieradata/* /etc/puppet/code/hiera# `
`root@host:/etc/puppet/code/environments/production# cd /etc/puppet/code/hiera`
`root@host:/etc/puppet/code/hiera# cp site_template.yaml $(hostname -f | awk '{print tolower($0)}').yaml`
`root@host:/etc/puppet/code/hiera# cd`
`root@host:~# echo "127.0.0.1 puppet" >> /etc/hosts`
`root@host:~# systemctl restart puppetmaster`
You are now ready to run the puppet agent to prepare and configure your system.
**CAVEAT:** FreeSwitch 1.6 is not fully supported yet on Debian 9, but the only problem is a dependency on libssl1.0.0, which is not packaged for Debian 9, so you only need to do the following by hand first: Don't forget, or freeswitch will not install.
```
wget http://http.debian.net/debian/pool/main/o/openssl/libssl1.0.0_1.0.1t-1%2bdeb8u7_amd64.deb
dpkg -i libssl1.0.0_1.0.1t-1+deb8u7_amd64.deb
rm libssl1.0.0_1.0.1t-1+deb8u7_amd64.deb
```
Now we can install :-)
`root@host:~# puppet agent --test`
This may take a while, it has to fetch all the packages and install them,
Some package installations will fail, so when it is finished you need to do it once more:
`root@host:~# puppet agent --test`
Done! Now you can run the final RCCN setup step:
`root@host:~# cd /var/rhizomatica/rccn`
`root@host:/var/rhizomatica/rccn# python ./install.py`
Now reboot your system and [file a bug report](https://github.com/Rhizomatica/puppet/issues/new) about whatever is still not working.
### Thanks for testing RCCN! ###
----------
**CAVEATS:**
Because you don't have the key to our private repo, you will not have any sounds in `/usr/share/freeswitch/sounds/rccn/`.
TIC is not publically distributing the sound files used on the TIC network. Someone needs to make some generic sounds.
There is one persistant error from puppet, but it doesn't seem to affect us:
```
Error: /Stage[main]/Postgresql::Server::Config/Concat[/etc/postgresql/9.6/main/pg_hba.conf]/Concat_file[/etc/postgresql/9.6/main/pg_hba.conf]: Failed to generate additional resources using 'eval_generate': comparison of Array with Array failed
```
----------