skoneka.anxs-postgresql
ANXS - PostgreSQL 
Hilfe gesucht! Wenn Sie in der Lage und bereit sind, bei der Wartung dieser Ansible-Rolle zu helfen, öffnen Sie bitte ein GitHub-Issue. Viele Menschen scheinen diese Rolle zu verwenden, und wir (offensichtlich) benötigen Unterstützung! 💖
Ansible-Rolle, die PostgreSQL, Erweiterungen, Datenbanken und Benutzer installiert und konfiguriert.
Installation
Das wurde mit Ansible 2.4.0 und höher getestet.
Zur Installation:
ansible-galaxy install ANXS.postgresql
Abhängigkeiten
- ANXS.monit (Galaxy/GH), wenn Sie Monit-Schutz möchten (in diesem Fall sollten Sie
monit_protection: true
setzen)
Kompatibilitätstabelle
Distribution / PostgreSQL | <= 9.2 | 9.3 | 9.4 | 9.5 | 9.6 | 10 | 11 |
---|---|---|---|---|---|---|---|
Ubuntu 14.04 | :no_entry: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :grey_question: |
Ubuntu 16.04 | :no_entry: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :grey_question: |
Debian 8.x | :no_entry: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :grey_question: |
Debian 9.x | :no_entry: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :grey_question: |
CentOS 6.x | :no_entry: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :grey_question: |
CentOS 7.x | :no_entry: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :grey_question: |
Fedora aktuelle Version | :no_entry: | :no_entry: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :grey_question: |
- :white_check_mark: - getestet, funktioniert gut
- :grey_question: - wird in Zukunft funktionieren (helfen Sie, wenn Sie können)
- :interrobang: - könnte funktionieren, nicht getestet
- :no_entry: - PostgreSQL hat das End-of-Life erreicht
Variablen
# Grundlegende Einstellungen
postgresql_version: 9.6
postgresql_encoding: "UTF-8"
postgresql_locale: "en_US.UTF-8"
postgresql_ctype: "en_US.UTF-8"
postgresql_admin_user: "postgres"
postgresql_default_auth_method: "trust"
postgresql_service_enabled: false # Soll der Dienst aktiviert sein? Standard ist true
postgresql_cluster_name: "main"
postgresql_cluster_reset: false
# Liste der zu erstellenden Datenbanken (optional)
# Hinweis: Für mehr Flexibilität bei Erweiterungen verwenden Sie die Einstellung postgresql_database_extensions.
postgresql_databases:
- name: foobar
owner: baz # optional; geben Sie den Besitzer der Datenbank an
hstore: yes # Flag zur Installation der hstore-Erweiterung in dieser Datenbank (ja/nein)
uuid_ossp: yes # Flag zur Installation der uuid-ossp-Erweiterung in dieser Datenbank (ja/nein)
citext: yes # Flag zur Installation der citext-Erweiterung in dieser Datenbank (ja/nein)
encoding: "UTF-8" # globale {{ postgresql_encoding }} Variable pro Datenbank überschreiben
lc_collate: "en_GB.UTF-8" # globale {{ postgresql_locale }} Variable pro Datenbank überschreiben
lc_ctype: "en_GB.UTF-8" # globale {{ postgresql_ctype }} Variable pro Datenbank überschreiben
# Liste der zu erstellenden Datenbankerweiterungen (optional)
postgresql_database_extensions:
- db: foobar
extensions:
- hstore
- citext
# Liste der zu erstellenden Benutzer (optional)
postgresql_users:
- name: baz
pass: pass
encrypted: no # zeigt an, ob das Passwort bereits verschlüsselt ist.
# Liste der zu erstellenden Schemata (optional)
postgresql_schemas:
- database: foobar # Datenbankname
schema: acme # Schema-Name
state: present
- database: foobar # Datenbankname
schema: acme_baz # Schema-Name
owner: baz # Besitzername
state: present
# Liste der anzuwendenden Benutzerprivilegien (optional)
postgresql_user_privileges:
- name: baz # Benutzername
db: foobar # Datenbank
priv: "ALL" # Berechtigungszeichenfolgenformat: beispiel: INSERT,UPDATE/tabelle:SELECT/andereTabelle:ALL
role_attr_flags: "CREATEDB" # Rolleneigenschaftsflags
Es gibt noch viele weitere Einstellungen, die Sie vornehmen können, die Sie in der defaults/main.yml finden können.
Testen
Dieses Projekt kommt mit einer Vagrant-Datei, die eine schnelle und einfache Möglichkeit bietet, Änderungen an der Rolle zu testen. Starten Sie sie mit vagrant up
.
Siehe Vagrant-Dokumentation für die Einrichtung mit Vagrant.
Sobald Ihre VM läuft, können Sie sie entweder mit vagrant provision
oder ansible-playbook tests/playbook.yml -i vagrant-inventory
neu bereitstellen.
Wenn Sie mit dem Test-Play experimentieren möchten, sehen Sie sich tests/playbook.yml an und ändern Sie die Variablen in tests/vars.yml.
Wenn Sie einen Beitrag leisten, testen Sie bitte zunächst Ihre Änderungen innerhalb der Vagrant-Umgebung (mit der gezielten Distribution), und wenn möglich, stellen Sie sicher, dass Ihre Änderung in den Tests, die in .travis.yml zu finden sind, abgedeckt ist.
Lizenz
Lizenziert unter der MIT-Lizenz. Siehe die LICENSE Datei für Details.
Danke
Ersteller:
Betreuer:
Hauptbeiträger:
Feedback, Fehlerberichte, Anfragen ...
Sind willkommen!
Install and configure PostgreSQL, dependencies, extensions, databases and users.
ansible-galaxy install skoneka.anxs-postgresql