73 lines
No EOL
2.2 KiB
YAML
73 lines
No EOL
2.2 KiB
YAML
---
|
|
- name: Pre-upgrade checks for PostgreSQL via Proxmox
|
|
hosts: lab02 # Proxmox host
|
|
become: yes
|
|
gather_facts: no
|
|
vars:
|
|
container_id: 300
|
|
|
|
tasks:
|
|
- name: Check if container is running
|
|
command: pct status {{ container_id }}
|
|
register: container_status
|
|
changed_when: false
|
|
|
|
- name: Display container status
|
|
debug:
|
|
var: container_status.stdout
|
|
|
|
- name: Check current PostgreSQL version
|
|
command: pct exec {{ container_id }} -- sudo -u postgres psql -t -c "SELECT version();"
|
|
register: pg_version
|
|
changed_when: false
|
|
|
|
- name: Display current version
|
|
debug:
|
|
msg: "Current version: {{ pg_version.stdout }}"
|
|
|
|
- name: List PostgreSQL clusters
|
|
command: pct exec {{ container_id }} -- pg_lsclusters
|
|
register: pg_clusters
|
|
changed_when: false
|
|
|
|
- name: Display clusters
|
|
debug:
|
|
var: pg_clusters.stdout_lines
|
|
|
|
- name: Check disk space in container
|
|
command: pct exec {{ container_id }} -- df -h /var/lib/postgresql
|
|
register: disk_space
|
|
changed_when: false
|
|
|
|
- name: Display disk space
|
|
debug:
|
|
var: disk_space.stdout_lines
|
|
|
|
- name: List installed PostgreSQL packages
|
|
command: pct exec {{ container_id }} -- dpkg -l | grep postgresql
|
|
register: pg_packages
|
|
changed_when: false
|
|
|
|
- name: Display PostgreSQL packages
|
|
debug:
|
|
var: pg_packages.stdout_lines
|
|
|
|
- name: Get database sizes
|
|
command: |
|
|
pct exec {{ container_id }} -- sudo -u postgres psql -t -c "SELECT pg_database.datname, pg_size_pretty(pg_database_size(pg_database.datname)) FROM pg_database WHERE datname NOT IN ('template0', 'template1') ORDER BY pg_database_size(pg_database.datname) DESC;"
|
|
register: db_sizes
|
|
changed_when: false
|
|
|
|
- name: Display database sizes
|
|
debug:
|
|
var: db_sizes.stdout_lines
|
|
|
|
- name: Check active connections
|
|
command: |
|
|
pct exec {{ container_id }} -- sudo -u postgres psql -t -c "SELECT count(*) as connections, datname FROM pg_stat_activity GROUP BY datname ORDER BY connections DESC;"
|
|
register: active_connections
|
|
changed_when: false
|
|
|
|
- name: Display active connections
|
|
debug:
|
|
var: active_connections.stdout_lines |