mahdi22.postgresql

Ansible-Rolle postgresql

Eine Ansible-Rolle zur Installation von PostgreSQL auf Linux für RHEL/CentOS, Debian, Ubuntu und SUSE SLES Distributionen. Die Aufgaben dieser Rolle sind:

  • PostgreSQL installieren
  • PostgreSQL-Parameter und Authentifizierung konfigurieren
  • Benutzer erstellen
  • Datenbanken erstellen

Installation

$ ansible-galaxy install mahdi22.postgresql

Rollvariablen

variable/main.yml Setzen Sie die PostgreSQL-Konfigurationsparameter oder verwenden Sie Standardwerte

postgresql_config:
  - option: port
    value: 5432
  - option: log_destination
    value: syslog
  - option: log_directory
    value: /var/log/postgresql/

Setzen oder ändern Sie die PostgreSQL-Authentifizierungsparameter oder verwenden Sie Standardwerte

postgresql_authentication:
  - {type: local, database: all, user: postgres, auth_method: peer}
  - {type: local, database: all, user: all, auth_method: md5}
  - {type: host, database: all, user: all, address: '127.0.0.1/32', auth_method: md5}
  - {type: host, database: all, user: all, address: '::1/128', auth_method: md5}
  - {type: local, database: replication, user: all, auth_method: peer}
  - {type: host, database: replication, user: all, address: '127.0.0.1/32', auth_method: md5}
  - {type: host, database: replication, user: all, address: '::1/128', auth_method: md5}

Setzen Sie PostgreSQL-Datenbanken und Benutzer, die erstellt werden sollen, wenn in default/main.yml create_users: no und create_databases: no festgelegt ist.

Beispiel zum Erstellen mehrerer Datenbanken und Benutzer:

postgresql_databases_users: []
#postgresql_databases_users:
#  - {database: test, user: user1, userpassword: user1pass, priv: ALL}  #fügt die Datenbank 'test' und den Benutzer 'user1' mit Passwort 'user1pass' und Rechten 'ALL' hinzu
#  - {database: test1, user:'', userpassword: '', priv: ''}                  #fügt nur die Datenbank 'test1' hinzu
#  - {database: '', user: user2, userpassword: user2pass, priv: ''}          #fügt nur den Benutzer 'user2' mit Passwort 'user2pass' hinzu
  • Um nur eine Datenbank ohne Benutzer zu erstellen, setzen Sie database: databasename, user:''
  • Um nur einen Benutzer zu erstellen, setzen Sie database: '', user: benutzername, userpassword: passwort
  • Um eine Datenbank mit Benutzerrechten zu erstellen, setzen Sie database: databasename, user: benutzername, userpassword: passwort, priv: rechte

Grundkonfiguration

Variable Standard Anmerkungen
use_proxy 'False' Wenn gemanagte Hosts hinter einem Webproxy stehen, setzen Sie use_proxy: True
http_proxy 'http://proxy.lab.local:8080/' Setzen Sie Proxy-Server und Port, ersetzen Sie proxy.lab.local:8080
https_proxy 'http://proxy.lab.local:8080/' Setzen Sie Proxy-Server und Port, ersetzen Sie proxy.lab.local:8080
postgresql_version Die zu installierende PostgreSQL-Version
listen_addresses_host_ip ja ja, um PostgreSQL auf der Netzwerk-IP-Schnittstelle aktiv zu hören
create_users ja Erstellen Sie PostgreSQL-Benutzer, die in den Variablen konfiguriert sind
create_databases ja Erstellen Sie PostgreSQL-Datenbanken, die in den Variablen konfiguriert sind

Anmerkungen

(1) Wenn gemanagte Hosts hinter einem Webproxy stehen, setzen Sie die folgenden Variablen in der Datei defaults/main.yml:

use_proxy: False
proxy_env:
  http_proxy: http://proxy.local:8080/
  https_proxy: http://proxy.local:8080/

Beispiel-Playbook

- hosts: dbservers
  roles:
    - role: mahdi22.postgresql
      become: yes

Testen

Diese Rolle wird auf folgenden Linux-Distributionen getestet:

  • RHEL/CentOS 8 PostgreSQL-Version (9.5, 9.4, 10, 11, 12, 13)
  • RHEL/CentOS 7 PostgreSQL-Version (9.5, 9.4, 10, 11, 12, 13)
  • Debian 10 PostgreSQL-Version (9.5, 9.4, 10, 11, 12, 13)
  • Debian 9 PostgreSQL-Version (9.5, 9.4, 10, 11, 12, 13)
  • Ubuntu 20.04 PostgreSQL-Version (9.5, 9.4, 10, 11, 12, 13)
  • Ubuntu 18.04 PostgreSQL-Version (9.5, 9.4, 10, 11, 12, 13)
  • Ubuntu 16.04 PostgreSQL-Version (9.5, 9.4, 10, 11, 12, 13)
  • SUSE SLES 12 PostgreSQL-Version (9.5, 9.4, 10, 11, 12)
  • SUSE SLES 15 PostgreSQL-Version (11, 12, 13)
Über das Projekt

Install and configure Postgresql server on Rhel/CentOS, Debian, Ubuntu and SUSE SLES ditributions

Installieren
ansible-galaxy install mahdi22.postgresql
GitHub Repository
Lizenz
Unknown
Downloads
95
Besitzer