Fonctionnalités

Ce rôle Ansible permet d'installer, de configurer et d'exploiter le proxy autonome Snowflake.

  • Prise en charge d'Ubuntu, Debian, Arch Linux, Fedora et FreeBSD.
  • Unité Systemd pour gérer le service Snowflake sur GNU/Linux et script rc pour FreeBSD.

Prérequis

  • Python
  • Ansible 2.9 ou plus

1. Installer Ansible

Vous pouvez installer Ansible en utilisant pip :

$ python -m pip install --user ansible

Ou trouver d'autres moyens pour installer Ansible.

2. Télécharger le rôle Ansible

Le rôle Ansible s'appelle nvjacobo.snowflake. Vous pouvez le trouver dans le dépôt Galaxy et l'installer à l'aide de la ligne de commande :

$ ansible-galaxy install nvjacobo.snowflake

3. Créer un playbook

Ensuite, créez un playbook Ansible pour exécuter le nouveau rôle :

- hosts: snowflake
  roles:
      - nvjacobo.snowflake

4. Créer un inventaire

Un inventaire est une liste de serveurs qu'Ansible gérera automatiquement par le biais du playbook.

[snowflake]
ip-address

5. Déployer

Enfin, en exécutant le playbook, Ansible déploiera le proxy autonome Snowflake. Vous pouvez l'exécuter en tant que root :

$ ansible-playbook -i inventory site.yml -u root

Ou avec sudo :

$ ansible-playbook -i inventory site.yml -u username -b

6. Gérer le proxy Snowflake

Si l'hôte du proxy Snowflake exécute systemd, vous pouvez gérer votre proxy Snowflake en utilisant les commandes systemd : start, status, et stop. Par exemple :

$ ansible all -i inventory -a 'systemctl status snowflake-proxy'

Pour FreeBSD, vous pouvez gérer votre proxy Snowflake en utilisant ces commandes de script rc. Par exemple :

$ ansible all -i inventory -a 'service snowflake status'

7. Mise à jour de votre proxy Snowflake

Il est important de maintenir votre proxy autonome Snowflake à jour. L'exécution du playbook Ansible installera les mises à jour :

$ ansible-playbook -i inventory site.yml -u root

8. (Facultatif) Limitation de l'utilisation

Vous pouvez limiter le nombre de clients (utilisateurs de Snowflake) en utilisant la variable client. Le nombre maximum de clients simultanés est illimité par défaut (0 = illimité).

Le playbook ci-dessous est limité à 300 clients simultanés :

- hosts: snowflake
   vars:
    clients: 300
  roles:
     - nvjacobo.snowflake

Note: Cette variable de rôle Ansible n'est pas disponible pour FreeBSD.