PostgreSQL
August 28, 2022

Создать кластер PostgreSQL 14

В этом мануале создадим кластер PostgreSQL с классом хостов s2.small. Публичный доступ. В Yandex Cloud.

Поехали!

export FOLDER=$(yc config get folder-id)
export ZONE=ru-central1-a
export SG=$(yc vpc sg get cam-db --format json | jq -r '.id')
export NETWORK=$(yc vpc network get cameda-test --format json | jq -r '.id')
export SUBNET=$(yc vpc subnet get subnet-a --format json | jq -r '.id')

yc postgresql cluster create \
 --folder-id $FOLDER \
 --name cam-postgres \
 --description 'PostgreSQL main' \
 --postgresql-version 14 \
 --environment production \
 --labels prod=postgres \
 --network-name cameda-test \
 --resource-preset s2.small \
 --host zone-id=$ZONE,subnet-id=$SUBNET,assign-public-ip \
 --disk-type network-ssd \
 --disk-size 60 \
 --user name=cameda,password=passpass,conn-limit=50 \
 --database name=db1,owner=cameda \
 --security-group-ids $SG \
 --backup-window-start 01:00:00 \
 --backup-retain-period-days 7 \
 --websql-access \
 --serverless-access \
 --datalens-access \
 --datatransfer-access \
 --deletion-protection=false \
 --async
--backup-retain-period-days 7 - срок хранения резервных копий в днях. Может быть увеличено до 60 дней.
--backup-window-start 01:00:00 - время начала создания резервной копии.

Подключаемся к кластеру:

mkdir -p ~/.postgresql && \
wget "https://storage.yandexcloud.net/cloud-certs/CA.pem" -O ~/.postgresql/root.crt && \
chmod 0600 ~/.postgresql/root.crt

Строчку для подключения берём в UI облака. Кнопка "Подключиться".
Вводим пароль. Пароль использую простой n******2

Готово!

export POSTGRES=$(yc postgresql cluster get cam-postgres --format=json | jq -r ".id")

Полезные ссылки.

Создаём сеть тут: https://teletype.in/@cameda/ZbTkF70KWK9
Про зоны доступности говорим здесь: https://teletype.in/@cameda/S34zdiTcbUM
Классы хостов PostgreSQL:
https://cloud.yandex.ru/docs/managed-postgresql/concepts/instance-types
Про создание кластера описано хорошо тут:
https://cloud.yandex.ru/docs/managed-postgresql/operations/cluster-create
Про квоты пишу здесь: https://teletype.in/@cameda/yTu0k42dbw0
SG для БД создаём тут: https://teletype.in/@cameda/RKN8F91c6Q7