hifis.keepalived
Rola Keepalived
:warning: Ten projekt jest zarchiwizowany! :warning:
Ta rola została przeniesiona do naszej kolekcji hifis.toolkit
:
- https://github.com/hifis-net/ansible-collection-toolkit
- https://galaxy.ansible.com/ui/repo/published/hifis/toolkit/
Rola Ansible do skonfigurowania Keepalived w kontekście wysokiej dostępności i skalowalności.
Aktualnie obsługiwane platformy to:
- Ubuntu 22.04 LTS
- Ubuntu 20.04 LTS
Wymagania
Brak.
Zmienne roli
Wymagane zmienne, które nie są ustawione domyślnie
Adresy IP unicast peer Keepalived
Ustaw adresy IP unicast peer instancji Keepalived:
keepalived_unicast_peers:
- '192.168.33.15'
- '192.168.33.16'
Adres IP wirtualny instancji Keepalived
Ustaw wirtualny adres IP instancji Keepalived:
keepalived_virtual_ip_address: '192.168.33.100'
Opcjonalnie: Lista konfiguracji wirtualnych adresów IP
Jeśli musisz skonfigurować wiele wirtualnych adresów IP, możesz zdefiniować tę opcjonalną zmienną. Ma ona pierwszeństwo przed keepalived_virtual_ip_address
.
keepalived_virtual_ipaddress_configs:
- "10.0.10.15 dev eth0"
- "10.0.11.15 dev eht1"
Wszystkie inne zmienne domyślne
Wersja Keepalived
Zmienna do ustawienia wersji Keepalived na określoną wartość:
keepalived_version: '2.2.8'
Lista zależności Keepalived
Lista zależności Keepalived, które mają zostać zainstalowane:
keepalived_dependencies:
- 'build-essential'
- 'curl'
- 'gcc'
- 'libssl-dev'
- 'libnl-3-dev'
- 'libnl-genl-3-dev'
- 'libsnmp-dev'
Ścieżka do pliku wykonywalnego Keepalived
Ścieżka do pliku wykonywalnego Keepalived:
keepalived_executable_path: '/usr/local/sbin/keepalived'
URL do pobrania Keepalived
URL, z którego można pobrać Keepalived:
keepalived_download_url: 'https://www.keepalived.org/software/keepalived-{{ keepalived_version }}.tar.gz'
Nazwa szablonu pliku konfiguracyjnego Keepalived
Nazwa pliku szablonu dla pliku konfiguracyjnego Keepalived:
keepalived_conf_template: 'keepalived.conf.j2'
Katalog konfiguracyjny Keepalived
Katalog, który zawiera pliki konfiguracyjne Keepalived:
keepalived_conf_dir: '/etc/keepalived'
Ścieżka do pliku konfiguracyjnego Keepalived
Ścieżka do pliku konfiguracyjnego Keepalived:
keepalived_conf_file_path: '/etc/keepalived/keepalived.conf'
Ścieżka do pliku konfiguracyjnego sysconfig Keepalived
Ścieżka do pliku konfiguracyjnego sysconfig Keepalived:
keepalived_sysconfig_file_path: "/etc/keepalived/keepalived.sysconfig"
Nazwa szablonu pliku usługi systemd
Nazwa pliku szablonu dla usługi systemd:
keepalived_service_template: 'keepalived.service.j2'
Ścieżka do pliku usługi Keepalived
Ścieżka do pliku usługi Keepalived:
keepalived_service_file_path: '/etc/systemd/system/keepalived.service'
Ścieżka do pliku PID Keepalived
Ścieżka do pliku PID Keepalived:
keepalived_pid_file_path: "/run/keepalived/keepalived.pid"
Skonfiguruj adres e-mail do powiadomień
Skonfiguruj odbiorcę powiadomień e-mail:
keepalived_notification_email: 'name@localhost'
Skonfiguruj nadawcę powiadomień
Skonfiguruj nadawcę powiadomień e-mail:
keepalived_notification_email_from: 'keepalived@localhost'
Skonfiguruj serwer SMTP
Skonfiguruj adres IP lub FQDN serwera SMTP:
keepalived_smtp_server: '127.0.0.1'
Stan instancji Keepalived MASTER lub BACKUP
Ustaw stan instancji Keepalived na MASTER lub BACKUP:
keepalived_state: 'BACKUP'
Priorytet instancji Keepalived
Ustaw priorytet instancji Keepalived:
keepalived_priority: '99'
Maksymalny automatyczny priorytet
Maksymalny priorytet, do którego Keepalived może automatycznie zwiększyć (musi być w zakresie [0, 99] lub -1, aby wyłączyć):
keepalived_max_auto_priority: '99'
ID routera instancji Keepalived
Ustaw unikalną nazwę routera Keepalived:
keepalived_router_id: 'KEEPALIVED_2'
Waga instancji Keepalived
Skoryguj priorytet za pomocą tej wagi:
keepalived_weight: '0'
Adres IP źródłowy unicast instancji Keepalived
Ustaw adres IP źródłowy unicast instancji Keepalived:
keepalived_unicast_src_ip: '{{ ansible_default_ipv4.address }}'
Interfejs sieciowy instancji Keepalived
Ustaw interfejs sieciowy, z którym jest powiązany adres IP:
keepalived_interface: "{{ ansible_default_ipv4.interface }}"
Adres IP wirtualny i interfejs sieciowy instancji Keepalived
Ustaw wirtualny adres IP i interfejs sieciowy instancji Keepalived:
keepalived_virtual_ipaddress_config: "{{ keepalived_virtual_ip_address }} dev {{ keepalived_interface }}"
Hasło do autoryzacji instancji Keepalived
Ustaw hasło do autoryzacji instancji Keepalived:
keepalived_auth_pass: 'changeme'
Włącz bezpieczeństwo skryptów
Flaga do włączenia bezpieczeństwa skryptów, aby zapobiec uruchamianiu skryptów przez użytkownika root, jeśli jakakolwiek część ścieżki jest zapisywana przez nietwentującego użytkownika:
keepalived_set_script_security_flag: true
Użytkownik do wykonywania skryptu Keepalived
Określ nazwę użytkownika do wykonywania skryptu Keepalived:
keepalived_script_user: 'haproxy'
Grupa do wykonywania skryptu Keepalived
Określ nazwę grupy do wykonywania skryptu Keepalived:
keepalived_script_group: 'haproxy'
Flaga do aktywacji śledzenia procesów
Aktywuj śledzenie procesów w konfiguracji keepalived:
keepalived_enable_process_tracking: true
Zdefiniuj, który proces ma być śledzony
keepalived_track_process: 'haproxy'
Flaga do aktywacji skryptu do wykonania
Aktywuj skrypt, który jest wykonywany przez Keepalived:
keepalived_activate_script: false
Nazwa skryptu do wykonania
Określ nazwę skryptu do wykonania przez Keepalived:
keepalived_script_name: 'chk_haproxy_process'
Komenda skryptu do wykonania
Określ polecenie do wykonania przez Keepalived:
keepalived_script_command: '/usr/bin/killall -0 haproxy'
Zależności
Brak.
Uwaga: Ta rola jest przeznaczona dla użycia z, ale nie ogranicza się do, roli hifis.haproxy.
Przykład playbooka
- hosts: loadbalancers
roles:
- role: hifis.keepalived
vars:
keepalived_virtual_ip_address: '192.168.33.100'
keepalived_unicast_peers:
- '192.168.33.15'
- '192.168.33.16'
Licencja
Informacje o autorze
A role to set up Keepalived in a high availability and scalability context.
ansible-galaxy install hifis.keepalived