This role takes care of installing, configuring and starting the ThinLinc server software. The ThinLinc server software is not included in this role, and will have to be obtained separately.
GPLv3. (See LICENSE)
Pull requests and issues are welcome.
- ThinLinc Server requirements - but see
thinlinc-autoinstall-dependencies
below.
thinlinc_accept_eula: "no"
By changing this to "yes", you agree to the terms specified in the ThinLinc End User License Agreement. NOTE: Setting this to yes is a requirement for installing and using ThinLinc.
thinlinc_version: "4.14.0"
ThinLinc version number.
thinlinc_bundle_path: "tl-{{ thinlinc_version }}-server.zip"
The location of the ThinLinc Server Bundle to install. If not set, the default Ansible search paths and bundle filename will be used.
thinlinc_autoinstall_dependencies: "yes"
When set to "yes", this will automatically install any required dependencies along with the ThinLinc software. If set to "no", the role assumes that you will take care of it.
thinlinc_email: "root@localhost"
Administrative email address to receive license warnings.
thinlinc_printers: "yes"
Whether to install the optional CUPS printer queues for ThinLinc.
thinlinc_webaccess_port: 443
The port on which the ThinLinc Web Access service listens on. See the documentation for this parameter.
thinlinc_webaccess_login_page: "tl-master-01.example.com"
The URL to the login page of ThinLinc Web Access on the master server. See the documentation for this parameter.
thinlinc_webadm_port: 1010
The port on which the ThinLinc Web Administration service listens on. See the documentation for this parameter.
thinlinc_webadm_password: "$6$7cc31a35e02e55ec$hm.1MsloeBJqNKljx9RH88Z/eRKZCka5ZlabkZGj0nYXh0IaxaiYucsDD.fGJ5sNPthWf63pXkCn9Nu0ua2Ye1"
ThinLinc Web Administration password. This default password is
"thinlinc". Generate new hashes with /opt/thinlinc/sbin/tl-gen-auth
.
See the documentation for this
parameter.
thinlinc_agent_hostname: null
This allows you to modify the hostname reported by the agent server to the client on connecting. See ThinLinc in a NAT/Split-DNS Environment for details.
Setting thinlinc_agent_hostname
to null sets this parameter to ansible_fqdn
.
This role can be installed through ansible-galaxy with a
requirements.yml
file. Run ansible-galaxy install -r requirements.yml
to install the role:
---
- src: https:///github.com/cendio/ansible-role-thinlinc-server.git
scm: git
name: thinlinc-server
version: v1.10
The role uses three groups - thinlinc_masters, thinlinc_agents and thinlinc_servers. Here's an example inventory file with one master server and three agent servers:
[thinlinc_masters]
tl-master-01.example.com
[thinlinc_agents]
tl-agent-01.example.com
tl-agent-02.example.com
tl-agent-03.example.com
[thinlinc_servers:children]
thinlinc_masters
thinlinc_agents
Now that we got both a role and an inventory, connect the dots by
applying the thinlinc-server role to the thinlinc_servers group with a
thinlinc.yml
playbook:
- hosts: thinlinc_servers
roles:
- { role: thinlinc-server, thinlinc_accept_eula: "yes" }
The final step is to apply the playbook to the inventory, like this:
ansible-playbook -i inventory thinlinc.yml