PostgreSQL
September 10, 2022

Посмотреть информацию по кластеру

Для просмотра полезной информации о кластере существует целый ряд команд.

Посмотрим текущий список кластеров:

yc postgres cluster list
+----------------------+---------------+---------------------+--------+---------+
|          ID          |     NAME      |     CREATED AT      | HEALTH | STATUS  |
+----------------------+---------------+---------------------+--------+---------+
| c9qju518t3legaoe0pql | cam-postgres1 | 2022-09-08 18:26:24 | ALIVE  | RUNNING |
+----------------------+---------------+---------------------+--------+---------+

Из этой информации можно почерпнуть какие кластера есть и их текущее состояние. Живы они или нет. Это можно понять по полям HEALTH и STATUS.

Посмотрим на кластер подробнее:

yc postgres cluster get c9qju518t3legaoe0pql
id: c9qju518t3legaoe0pql
folder_id: FOLDER_ID
created_at: "2022-09-08T18:26:24.431820Z"
name: cam-postgres1
description: It's cluster will be kill
labels:
  prod: postgres
environment: PRODUCTION
monitoring:
  - name: Console
    description: Console charts
    link: link
config:
  version: "14"
  postgresql_config_14:
    user_config: {}
  resources:
    resource_preset_id: s2.medium
    disk_size: "128849018880"
    disk_type_id: network-ssd
  autofailover: false
  backup_window_start:
    hours: 1
  backup_retain_period_days: "7"
  access:
    data_lens: true
    web_sql: true
    serverless: true
  performance_diagnostics:
    enabled: true
    sessions_sampling_interval: "1"
    statements_sampling_interval: "60"
network_id: Network_ID
health: ALIVE
status: RUNNING
maintenance_window:
  anytime: {}
security_group_ids:
  - SG_ID

Здесь будет показано состояние кластера, настройки, версия, пресет, какая SG установлена на кластер, ссылка на мониторинг кластера и фолдер в котором он находится. На самом деле информации тут больше, просто это самая полезная.

Посмотрим какие бекапы есть у кластера:

yc postgres cluster list-backups c9qju518t3legaoe0pql
+-------------------------------------------+---------------------+----------------------+---------------------+
|                    ID                     |     CREATED AT      |  SOURCE CLUSTER ID   |     STARTED AT      |
+-------------------------------------------+---------------------+----------------------+---------------------+
| c9qju518t3legaoe0pql:mdbl1km0q9dsf02hgk90 | 2022-09-10 01:07:39 | c9qju518t3legaoe0pql | 2022-09-10 01:06:29 |
| c9qju518t3legaoe0pql:mdb9ho6pb9ppip4g6h3m | 2022-09-09 01:04:09 | c9qju518t3legaoe0pql | 2022-09-09 01:03:02 |
| c9qju518t3legaoe0pql:c9q3fh4n1drclq0liqer | 2022-09-08 18:37:13 | c9qju518t3legaoe0pql | 2022-09-08 18:36:08 |
+-------------------------------------------+---------------------+----------------------+---------------------+

Из этих бекапов можно создать новый кластер.

Посмотрим какие базы данных есть в этом кластере:

yc postgres database list --cluster-id c9qju518t3legaoe0pql
+-----------+----------------------+--------+------------+---------+--------------------------------+-------------------+
|   NAME    |      CLUSTER ID      | OWNER  | LC COLLATE | LC TYPE |           EXTENSIONS           | TEMPLATE DATABASE |
+-----------+----------------------+--------+------------+---------+--------------------------------+-------------------+
| db1       | c9qju518t3legaoe0pql | cameda | C          | C       | pg_buffercache:,               |                   |
|           |                      |        |            |         | pg_repack:, pg_stat_kcache:,   |                   |
|           |                      |        |            |         | pg_stat_statements:            |                   |
| demo      | c9qju518t3legaoe0pql | cameda | C          | C       | pg_buffercache:,               |                   |
|           |                      |        |            |         | pg_repack:, pg_stat_kcache:,   |                   |
|           |                      |        |            |         | pg_stat_statements:            |                   |
| dvdrental | c9qju518t3legaoe0pql | cameda | C          | C       |                                |                   |
+-----------+----------------------+--------+------------+---------+--------------------------------+-------------------+

Здесь можно увидеть какие базы есть в кластере, кто у них владелец и какие расширения установлены.

Посмотрим какие есть хосты в кластере:

yc postgres host list --cluster-id c9qju518t3legaoe0pql
+-------------------------------------------+----------------------+--------+--------+---------------+-----------+--------------------+
|                   NAME                    |      CLUSTER ID      |  ROLE  | HEALTH |    ZONE ID    | PUBLIC IP | REPLICATION SOURCE |
+-------------------------------------------+----------------------+--------+--------+---------------+-----------+--------------------+
| rc1a-i2vt33dz0quxc955.mdb.yandexcloud.net | c9qju518t3legaoe0pql | MASTER | ALIVE  | ru-central1-a | true      |                    |
+-------------------------------------------+----------------------+--------+--------+---------------+-----------+--------------------+

Из этой информации становится ясно, что из бекапа восстановился лишь мастер, реплики не бекапируются.

Посмотрим какие есть права у владельца базы и какие лимиты соединений у него установлены:

yc postgres user get cameda --cluster-id c9qju518t3legaoe0pql
name: cameda
cluster_id: c9qju518t3legaoe0pql
permissions:
  - database_name: db1
  - database_name: demo
  - database_name: dvdrental
conn_limit: "70"
settings: {}
login: true
grants:
  - mdb_admin

Посмотрим какие операции совершались в кластере:

yc postgres cluster list-operations c9qju518t3legaoe0pql
+----------------------+---------------------+----------------------+---------------------+--------+--------------------------------+
|          ID          |     CREATED AT      |      CREATED BY      |     MODIFIED AT     | STATUS |          DESCRIPTION           |
+----------------------+---------------------+----------------------+---------------------+--------+--------------------------------+
| c9qglbmp8jr39f022qbu | 2022-09-10 07:55:36 | aje05t11111oao11da0h | 2022-09-10 07:59:41 | DONE   | Modify PostgreSQL cluster      |
| c9quqflsgod833ttvi1p | 2022-09-10 06:27:53 | aje05t11111oao11da0h | 2022-09-10 06:31:01 | DONE   | Modify PostgreSQL cluster      |
| c9q1nl4oa5ik9hmoond7 | 2022-09-10 06:05:44 | aje05t11111oao11da0h | 2022-09-10 06:06:06 | DONE   | Update PostgreSQL cluster      |
|                      |                     |                      |                     |        | metadata                       |
| c9q3edp1o9lsnkttq27n | 2022-09-08 18:26:24 | aje25tpsqnkoaoccda0h | 2022-09-08 18:32:09 | DONE   | Create new PostgreSQL cluster  |
|                      |                     |                      |                     |        | from the backup                |
+----------------------+---------------------+----------------------+---------------------+--------+--------------------------------+

Здесь можно посмотреть что была за операция, когда началась, не вывалилась ли она с ошибкой и кто её запустил.
По полю STATUS можно понять, что в данном кластере все операции завершились успешно.