Características

Esta función de Ansible instalará, configurará y operará el proxy autónomo de Snowflake.

  • Soporte para Ubuntu, Debian, Arch Linux, Fedora y FreeBSD.
  • Unidad sistematizada para gestionar el servicio Snowflake en GNU/Linux y rc script para FreeBSD.

Requisitos

  • Python
  • Ansible 2.9 o superior

1. Instalar Ansible

Puedes instalar Ansible usando pip:

$ python -m pip install --user ansible

O encuentra otras maneras de instalar Ansible.

2. Descargar el rol de Ansible

La función de Ansible se llama nvjacobo.snowflake. Puedes encontrarlo en Galaxy repository e instalarlo usando la línea de comandos:

$ ansible-galaxy install nvjacobo.snowflake

3. Crear un playbook

A continuación, crea un playbook de Ansible para ejecutar el nuevo rol:

- hosts: snowflake
  roles:
      - nvjacobo.snowflake

4. Crear un inventario

Un inventario es una lista de servidores que Ansible gestionará automáticamente a través del playbook.

[snowflake]
ip-address

5. Desplegar

Por último, al ejecutar playbook, Ansible desplegará el proxy independiente de Snowflake. Puedes ejecutarlo como root:

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

O con sudo:

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

6. Gestionar el proxy Snowflake

Si el host del proxy Snowflake está ejecutando systemd, puedes gestionar tu proxy Snowflake utilizando los comandos de systemd: start, status y stop. Por ejemplo:

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

Para FreeBSD, puedes gestionar tu proxy Snowflake usando estos comandos de script rc. Por ejemplo:

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

7. Actualizar tu proxy Snowflake

Es importante mantener actualizado tu proxy independiente Snowflake. Al ejecutar el playbook Ansible se instalarán las actualizaciones:

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

8. (Opcional) Limitar el uso

Puedes limitar el número de clientes (usuarios de Snowflake) utilizando la variable client. Por defecto, el máximo de clientes concurrentes es ilimitado (0 = sin límite).

El siguiente playbook tiene un límite de 300 clientes simultáneos:

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

Nota: Esta variable de rol de Ansible no está disponible para FreeBSD.