uZer.keepalived

ansible-role-keepalived

Build Status

Diese Rolle installiert keepalived aus dem apt/yum Repository. Sie kann mehrere Service-Checks und mehrere VIPs einrichten.

Alle Variablen sollten in host_vars oder group_vars konfiguriert werden.

Abhängigkeiten

Sollte auf Centos, Redhat, Ubuntu, Debian funktionieren.

Ausführliches Anwendungsbeispiel

  • Host-Variablen (sollten in host_vars/... definiert werden):
keepalived_role:
  "VI_1": "MASTER"              # Kann MASTER oder SLAVE sein
  "VI_2": "MASTER"
  "VI_3": "SLAVE"
  • Gruppen-Variablen (sollten in group_vars/... pro keepalived Pod definiert werden):
keepalived_vrrp_instances:
  "VI_1":
    virtual_router_id: 51       # Wird als Schnittstellenbezeichner verwendet
    master_priority: 100         # Priorität. Je höher, desto größer
    slave_priority: 50
    shared_iface: eth0
    shared_vips:
      - '10.127.50.3'
    auth_pass: "{{ vault_vrrp_passwords["VI_1"] }}"

  "VI_2":
    virtual_router_id: 52
    master_priority: 100
    slave_priority: 50
    shared_iface: eth0
    shared_vips:
      - '10.127.50.4'
    auth_pass: "{{ vault_vrrp_passwords["VI_2"] }}"

  "VI_3":
    virtual_router_id: 53
    master_priority: 100
    slave_priority: 50
    shared_iface: eth0
    shared_vips:
      - '10.127.50.5'
    auth_pass: "{{ vault_vrrp_passwords["VI_3"] }}"
    checks:
      - chk_nginx
      - chk_keepalived
    settings:
      garp_master_refresh: 20

keepalived_checks:
  "chk_nginx":
    process: nginx              # Überwacht NGINX mit `killall -0`
    period: 2                   # alle 2 Sekunden
  "chk_keepalived":
    script: pgrep keepalived    # Überwacht Keepalived
    period: 2                   # alle 2 Sekunden

# Im Vault:
vault_keepalived_vrrp_passwords:
    "VI_1": 'YUiszRrpLEXbnMLqDapwWLvPAJ'
    "VI_2": 'rJEUkQnmSRahwRTpjUkFVid'
    "VI_3": 'itkcbxmaXwFBiUZJhePmtX'

# OPTIONALE EINSTELLUNGEN FÜR BENACHRICHTIGUNGEN UND FEINEINSTELLUNGEN
keepalived_advert_interval: 1
keepalived_notify_from: "keepalived@{{ ansible_fqdn }}"
keepalived_notify_smtp_server: "smtp.example.com"
keepalived_notify_smtp_timeout: "30"
keepalived_notify_list:
  - "[email protected]"
  - "[email protected]"
keepalived_global_defs:
  vrrp_garp_master_refresh: 60

Minimales Anwendungsbeispiel

Sie sollten mindestens diese Variablen definieren:

# Pro Host
keepalived_role:
  "VI_1": "MASTER"

# Pro Gruppe
keepalived_vrrp_instances:
  "VI_1":
    virtual_router_id: 10
    shared_iface: eth0
    shared_vips:
      - '10.127.50.5'
    auth_pass: 'NLxQZYzXUfhjkJqWzVrPMua'

Lizenz

"Die (erweiterte) BEER-WARE-LIZENZ" (Revision 42.0815):

Solange Sie diese Mitteilung beibehalten, können Sie mit diesem Zeug machen, was Sie wollen. Wenn wir uns eines Tages treffen und Sie denken, dass es das wert ist, können Sie mir dafür ein paar Biere kaufen.

Autor Informationen

Youenn Piolet

Über das Projekt

Keepalived Configuration

Installieren
ansible-galaxy install uZer.keepalived
GitHub Repository
Lizenz
other
Downloads
3.9k
Besitzer
What year is this?