supertarto.postgresql

Ansible PostgreSQL

Installieren und Konfigurieren von PostgreSQL mit Ansible. Diese Rolle wurde nur mit Debian getestet.

Getestete Plattformen

  • Debian 10 (Buster)
  • Debian 11 (Bullseye)
  • Debian 12 (Bookworm)

Rollenvariablen

Eine Liste von Paketen, die installiert werden sollen.

postgresql_packages:
  - postgresql
  - postgresql-contrib
  - libpq-dev

Informationen über PostgreSQL: Welche Version zu installieren ist, der Daemon-Name und die verwendeten Verzeichnisse.

postgresql_version: "11"
postgresql_daemon: postgresql@{{ postgresql_version }}-main
postgresql_data_dir: "/var/lib/postgresql/{{ postgresql_version }}/main"
postgresql_bin_path: "/usr/lib/postgresql/{{ postgresql_version }}/bin"
postgresql_config_path: "/etc/postgresql/{{ postgresql_version }}/main"

Verwenden Sie das bereitgestellte Dump-Skript.

postgresql_use_dump_script: true
postgresql_dump_path: "/var/local/dump_sql"
postgresql_dump_path_script: "/var/local/scripts"

Name der zu installierenden psycopg2-Bibliothek. Wird bei der Benutzererstellung verwendet.

postgresql_python_library: python-psycopg2

Standard-Locale

postgresql_locales:
  - 'fr_FR.UTF-8'

Name des Benutzers und der Gruppe, die von PostgreSQL verwendet werden.

postgresql_user: postgres
postgresql_group: postgres

Informationen über den Socket.

postgresql_global_config_options:
  - option: unix_socket_directories
    value: '{{ postgresql_unix_socket_directories | join(",") }}'

postgresql_unix_socket_directories:
  - /var/run/postgresql

Liste der zu erstellenden Benutzer. Nur der Name ist erforderlich.

postgresql_users:
# - name: testuser # erforderlich; der Rest ist optional
#   password: # Standardmäßig nicht gesetzt
#   encrypted: # Standardmäßig nicht gesetzt
#   priv: # Standardmäßig nicht gesetzt
#   role_attr_flags: # Standardmäßig nicht gesetzt
#   db: # Standardmäßig nicht gesetzt
#   login_host: # Standardmäßig 'localhost'
#   login_password: # Standardmäßig nicht gesetzt
#   login_user: # Standardmäßig '{{ postgresql_user }}'
#   login_unix_socket: # Standardmäßig 1. von postgresql_unix_socket_directories
#   port: # Standardmäßig nicht gesetzt
#   state: # Standardmäßig 'present'

Liste der zu erstellenden Datenbanken. Nur der Name ist erforderlich.

postgresql_databases:
# - name: exampledb # erforderlich; der Rest ist optional
#   lc_collate: # Standardmäßig 'fr_FR.UTF-8'
#   lc_ctype: # Standardmäßig 'fr_FR.UTF-8'
#   encoding: # Standardmäßig 'UTF-8'
#   template: # Standardmäßig 'template0'
#   login_host: # Standardmäßig 'localhost'
#   login_password: # Standardmäßig nicht gesetzt
#   login_user: # Standardmäßig '{{ postgresql_user }}'
#   login_unix_socket: # Standardmäßig 1. von postgresql_unix_socket_directories
#   port: # Standardmäßig nicht gesetzt
#   owner: # Standardmäßig postgresql_user
#   state: # Standardmäßig 'present'

Beispiele

---
- name: Converge
  hosts: all
  roles:
    - role: supertarto.postgresql

  vars:
    postgresql_databases:
      - name: example
    postgresql_users:
      - name: testuser

Installation

ansible-galaxy install supertarto.postgresql

Lizenz

GPL V3.0

Über das Projekt

Install and configure postgresql.

Installieren
ansible-galaxy install supertarto.postgresql
GitHub Repository
Lizenz
gpl-3.0
Downloads
529
Besitzer