{"id":29702527,"url":"https://github.com/devgateway/ansible-role-postgres-ha","last_synced_at":"2026-04-18T02:32:51.180Z","repository":{"id":78413136,"uuid":"136664397","full_name":"devgateway/ansible-role-postgres-ha","owner":"devgateway","description":"Ansible wrapper role to install a two-node failover Postgres cluster","archived":false,"fork":false,"pushed_at":"2018-10-25T22:55:38.000Z","size":8,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":6,"default_branch":"master","last_synced_at":"2025-07-23T13:00:06.600Z","etag":null,"topics":["ansible","ansible-role","cluster","clustering","corosync","failover","high-availability","pacemaker","postgres","postgres-server","postgresql"],"latest_commit_sha":null,"homepage":null,"language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/devgateway.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2018-06-08T20:43:50.000Z","updated_at":"2019-10-20T11:40:27.000Z","dependencies_parsed_at":"2023-04-29T10:30:19.847Z","dependency_job_id":null,"html_url":"https://github.com/devgateway/ansible-role-postgres-ha","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/devgateway/ansible-role-postgres-ha","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/devgateway%2Fansible-role-postgres-ha","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/devgateway%2Fansible-role-postgres-ha/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/devgateway%2Fansible-role-postgres-ha/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/devgateway%2Fansible-role-postgres-ha/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/devgateway","download_url":"https://codeload.github.com/devgateway/ansible-role-postgres-ha/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/devgateway%2Fansible-role-postgres-ha/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31953783,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-18T00:39:45.007Z","status":"online","status_checked_at":"2026-04-18T02:00:07.018Z","response_time":103,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ansible","ansible-role","cluster","clustering","corosync","failover","high-availability","pacemaker","postgres","postgres-server","postgresql"],"created_at":"2025-07-23T12:39:30.334Z","updated_at":"2026-04-18T02:32:51.174Z","avatar_url":"https://github.com/devgateway.png","language":null,"funding_links":[],"categories":[],"sub_categories":[],"readme":"# devgateway.postgres-ha\n\nWrapper role to set up a two-node replicating Postgres cluster, and configure firewall.\n\n## Required Variables\n\n### `pgha_pcmk_passwd`\n\nPassword for Pacemaker user `hacluster`.\n\n### `pgha_repl_passwd`\n\nPassword for Postgres replication user.\n\n### `pgha_virtual_ip`\n\nThe virtual IP address to assign to the master node.\n\n## Optional Variables\n\n### `pgha_configure_firewall`\n\nWhether to add `postgresql` and `high-availability` services to Firewalld.\n\nDefault: true\n\n### `pgha_pcmk_cluster_name`\n\nName of the cluster. Appears in `pcs` output.\n\nDefault: `postgres`\n\n### `pgha_pcmk_default_op_timeout`\n\nDefault timeout (in seconds) for resource operations.\n\nDefault: 60\n\n### `pgha_pcmk_monitoring_intervals`\n\nA dictionary with monitoring intervals (in seconds) for individual resources. Master and slave\nintervals must be different.\n\nDefaults:\n\n* `virtual_ip`: 10\n\n* `master`: 3\n\n* `slave`: 7\n\n### `pgha_postgres`\n\nA dictionary defining Postgres version, paths, and restore command.\n\nDefault:\n\n* `version`: 9.4\n\n* `data_dir`: /var/lib/pgsql/9.4/data\n\n* `bin_dir`: /usr/pgsql-9.4/bin\n\n* `archive_dir`: /var/lib/pgsql/9.4/archive\n\n* `service`: postgresql-9.4\n\n* `restore_command`: cp /var/lib/pgsql/9.4/archive/%f %p\n\n### `pgha_replace_motd`\n\nWhether to replace contents of `/etc/motd` with cluster management tips.\n\nDefault: true\n\n### `pgha_repl_user`\n\nPostgres user that replication runs as.\n\nDefault: `replication`\n\n## Dependencies\n\n* [devgateway.postgres-replication](https://github.com/devgateway/ansible-role-postgres-replication)\n\n* [devgateway.pacemaker](https://github.com/devgateway/ansible-role-pacemaker)\n\n## Example Playbook\n\n    ---\n    - hosts:\n        - alpha\n        - bravo\n      tasks:\n        - name: Set up high availability Postgres\n          include_role:\n            name: devgateway.postgres-ha\n          vars:\n            pgha_virtual_ip: 10.0.0.4\n            pgha_repl_passwd: hunter2\n            pgha_pcmk_passwd: qwerty\n\n## License\n\nGPL v3+\n\n# Author Information\n\nCopyright 2018, Development Gateway\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdevgateway%2Fansible-role-postgres-ha","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdevgateway%2Fansible-role-postgres-ha","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdevgateway%2Fansible-role-postgres-ha/lists"}