mirror of
https://github.com/pgbackrest/pgbackrest.git
synced 2024-12-12 10:04:14 +02:00
42fd6ce4e0
Bug Fixes: * Allow "global" as a stanza prefix. (Reviewed by Stefan Fercot. Reported by Younes Alhroub.) * Fix segfault on invalid GCS key file. (Reviewed by Stephen Frost. Reported by Henrik Feldt.) Improvements: * Allow link-map option to create new links. (Reviewed by Don Seiler, Stefan Fercot, Chris Bandy. Suggested by Don Seiler.) * Increase max index allowed for pg/repo options to 256. (Reviewed by Cynthia Shang.) * Add WebIdentity authentication for AWS S3. (Reviewed by James Callahan, Reid Thompson, Benjamin Blattberg, Andrew L'Ecuyer.) * Report backup file validation errors in backup.info. (Contributed by Stefan Fercot. Reviewed by David Steele.) * Add recovery start time to online backup restore log. (Reviewed by Tom Swartz, Stefan Fercot. Suggested by Tom Swartz.) * Report original error and retries on local job failure. (Reviewed by Stefan Fercot.) * Rename page checksum error to error list in info text output. (Reviewed by Stefan Fercot.) * Add hints to standby replay timeout message. (Reviewed by Cynthia Shang, Stefan Fercot. Suggested by Leigh Downs.)
11496 lines
438 KiB
Plaintext
11496 lines
438 KiB
Plaintext
{
|
|
"default" : {
|
|
"all" : {
|
|
"contributing" : [
|
|
{
|
|
"key" : {
|
|
"id" : "contrib",
|
|
"image" : "pgbackrest/doc:contrib",
|
|
"name" : "pgbackrest-dev",
|
|
"option" : "-v /var/run/docker.sock:/var/run/docker.sock -v /home/vagrant/test:/home/vagrant/test",
|
|
"os" : "u20",
|
|
"update-hosts" : true
|
|
},
|
|
"type" : "host",
|
|
"value" : {
|
|
"ip" : "172.17.0.8"
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo apt-get update"
|
|
],
|
|
"host" : "pgbackrest-dev",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo apt-get install rsync git devscripts build-essential valgrind lcov autoconf \\",
|
|
" autoconf-archive libssl-dev zlib1g-dev libxml2-dev libpq-dev pkg-config \\",
|
|
" libxml-checker-perl libyaml-perl libdbd-pg-perl liblz4-dev liblz4-tool \\",
|
|
" zstd libzstd-dev bzip2 libbz2-dev libyaml-dev"
|
|
],
|
|
"cmd-extra" : "-y 2>&1",
|
|
"host" : "pgbackrest-dev",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"pgbackrest/test/test.pl --clean-only"
|
|
],
|
|
"host" : "pgbackrest-dev",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"curl -fsSL https://get.docker.com | sudo sh"
|
|
],
|
|
"cmd-extra" : "2>&1",
|
|
"host" : "pgbackrest-dev",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo usermod -aG docker `whoami`"
|
|
],
|
|
"host" : "pgbackrest-dev",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo chmod 666 /var/run/docker.sock"
|
|
],
|
|
"host" : "pgbackrest-dev",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"pgbackrest/test/test.pl --vm=none --dry-run"
|
|
],
|
|
"cmd-extra" : "--no-log-timestamp",
|
|
"highlight" : {
|
|
"filter" : true,
|
|
"filter-context" : 2,
|
|
"list" : [
|
|
"[0-9]+ tests selected|DRY RUN COMPLETED SUCCESSFULLY"
|
|
]
|
|
},
|
|
"host" : "pgbackrest-dev",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
"P00 INFO: test begin on x86_64 - log level info",
|
|
"P00 INFO: configure build",
|
|
"P00 INFO: builds required: bin",
|
|
"P00 INFO: 74 tests selected",
|
|
" ",
|
|
"P00 INFO: P1-T01/74 - vm=none, module=common, test=error",
|
|
" [filtered 71 lines of output]",
|
|
"P00 INFO: P1-T73/74 - vm=none, module=performance, test=type",
|
|
"P00 INFO: P1-T74/74 - vm=none, module=performance, test=storage",
|
|
"P00 INFO: DRY RUN COMPLETED SUCCESSFULLY"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"pgbackrest/test/test.pl --vm=none --vm-out --module=common --test=wait"
|
|
],
|
|
"cmd-extra" : "--no-log-timestamp",
|
|
"host" : "pgbackrest-dev",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
"P00 INFO: test begin on x86_64 - log level info",
|
|
"P00 INFO: autogenerate configure",
|
|
"P00 INFO: autogenerated version in configure.ac script: no changes",
|
|
"P00 INFO: autogenerated configure script: no changes",
|
|
"P00 INFO: autogenerate code",
|
|
"P00 INFO: cleanup old data",
|
|
"P00 INFO: builds required: none",
|
|
"P00 INFO: 1 test selected",
|
|
" ",
|
|
"P00 INFO: P1-T1/1 - vm=none, module=common, test=wait",
|
|
" ",
|
|
" run 1 - waitNew(), waitMore, and waitFree()",
|
|
" L0018 expect AssertError: assertion 'waitTime <= 999999000' failed",
|
|
" ",
|
|
" run 1/1 ------------- L0021 0ms wait",
|
|
" L0025 new wait",
|
|
" L0026 check remaining time",
|
|
" L0027 check wait time",
|
|
" L0028 check sleep time",
|
|
" L0029 check sleep prev time",
|
|
" L0030 no wait more",
|
|
" L0033 new wait = 0.2 sec",
|
|
" L0034 check remaining time",
|
|
" L0035 check wait time",
|
|
" L0036 check sleep time",
|
|
" L0037 check sleep prev time",
|
|
" L0038 check begin time",
|
|
" L0044 lower range check",
|
|
" L0045 upper range check",
|
|
" L0047 free wait",
|
|
" L0052 new wait = 1.1 sec",
|
|
" L0053 check wait time",
|
|
" L0054 check sleep time",
|
|
" L0055 check sleep prev time",
|
|
" L0056 check begin time",
|
|
" L0062 lower range check",
|
|
" L0063 upper range check",
|
|
" L0065 free wait",
|
|
" ",
|
|
" TESTS COMPLETED SUCCESSFULLY",
|
|
"",
|
|
"P00 INFO: P1-T1/1 - vm=none, module=common, test=wait",
|
|
"P00 INFO: tested modules have full coverage",
|
|
"P00 INFO: writing C coverage report",
|
|
"P00 INFO: TESTS COMPLETED SUCCESSFULLY"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"pgbackrest/test/test.pl --vm=none --module=postgres"
|
|
],
|
|
"cmd-extra" : "--no-log-timestamp",
|
|
"host" : "pgbackrest-dev",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
"P00 INFO: test begin on x86_64 - log level info",
|
|
"P00 INFO: autogenerate configure",
|
|
"P00 INFO: autogenerated version in configure.ac script: no changes",
|
|
"P00 INFO: autogenerated configure script: no changes",
|
|
"P00 INFO: autogenerate code",
|
|
"P00 INFO: cleanup old data",
|
|
"P00 INFO: builds required: none",
|
|
"P00 INFO: 2 tests selected",
|
|
" ",
|
|
"P00 INFO: P1-T1/2 - vm=none, module=postgres, test=client",
|
|
"P00 INFO: P1-T2/2 - vm=none, module=postgres, test=interface",
|
|
"P00 INFO: tested modules have full coverage",
|
|
"P00 INFO: writing C coverage report",
|
|
"P00 INFO: TESTS COMPLETED SUCCESSFULLY"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"pgbackrest/test/test.pl --vm-build --vm=u20"
|
|
],
|
|
"cmd-extra" : "--no-log-timestamp",
|
|
"host" : "pgbackrest-dev",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
"P00 INFO: test begin on x86_64 - log level info",
|
|
"P00 INFO: Using cached pgbackrest/test:u20-base-20210930A image (7ffb73ceb9a2e3aad2cba7eb5c8e28fc3982db18) ...",
|
|
"P00 INFO: Building pgbackrest/test:u20-test image ...",
|
|
"P00 INFO: Build Complete"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"pgbackrest/test/test.pl --vm=u20 --module=mock --test=archive --run=2"
|
|
],
|
|
"cmd-extra" : "--no-log-timestamp",
|
|
"host" : "pgbackrest-dev",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
"P00 INFO: test begin on x86_64 - log level info",
|
|
"P00 INFO: autogenerate configure",
|
|
"P00 INFO: autogenerated version in configure.ac script: no changes",
|
|
"P00 INFO: autogenerated configure script: no changes",
|
|
"P00 INFO: autogenerate code",
|
|
"P00 INFO: cleanup old data and containers",
|
|
"P00 INFO: builds required: bin, bin host",
|
|
"P00 INFO: build bin for u20 (/home/vagrant/test/bin/u20)",
|
|
"P00 INFO: bin dependencies have changed, rebuilding",
|
|
"P00 INFO: build bin for none (/home/vagrant/test/bin/none)",
|
|
"P00 INFO: bin dependencies have changed, rebuilding",
|
|
"P00 INFO: 1 test selected",
|
|
" ",
|
|
"P00 INFO: P1-T1/1 - vm=u20, module=mock, test=archive, run=2",
|
|
"P00 INFO: no code modules had all tests run required for coverage",
|
|
"P00 INFO: TESTS COMPLETED SUCCESSFULLY"
|
|
]
|
|
}
|
|
}
|
|
],
|
|
"user-guide" : [
|
|
{
|
|
"key" : {
|
|
"id" : "azure",
|
|
"image" : "mcr.microsoft.com/azure-storage/azurite",
|
|
"name" : "azure-server",
|
|
"option" : "-m 128m -v {[host-repo-path]}/doc/resource/fake-cert/azure-server.crt:/root/public.crt:ro -v {[host-repo-path]}/doc/resource/fake-cert/azure-server.key:/root/private.key:ro -e AZURITE_ACCOUNTS='pgbackrest:YXpLZXk='",
|
|
"os" : "debian",
|
|
"param" : "azurite-blob --blobPort 443 --blobHost 0.0.0.0 --cert=/root/public.crt --key=/root/private.key",
|
|
"update-hosts" : false
|
|
},
|
|
"type" : "host",
|
|
"value" : {
|
|
"ip" : "172.17.0.2"
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"id" : "s3",
|
|
"image" : "minio/minio",
|
|
"name" : "s3-server",
|
|
"option" : "-m 128m -v {[host-repo-path]}/doc/resource/fake-cert/s3-server.crt:/root/.minio/certs/public.crt:ro -v {[host-repo-path]}/doc/resource/fake-cert/s3-server.key:/root/.minio/certs/private.key:ro -e MINIO_REGION=us-east-1 -e MINIO_DOMAIN=s3.us-east-1.amazonaws.com -e MINIO_BROWSER=off -e MINIO_ACCESS_KEY=accessKey1 -e MINIO_SECRET_KEY=verySecretKey1",
|
|
"os" : "debian",
|
|
"param" : "server /data --address :443",
|
|
"update-hosts" : false
|
|
},
|
|
"type" : "host",
|
|
"value" : {
|
|
"ip" : "172.17.0.3"
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"id" : "build",
|
|
"image" : "pgbackrest/doc:debian",
|
|
"name" : "build",
|
|
"option" : "-m 256m -v /sys/fs/cgroup:/sys/fs/cgroup:rw -v /tmp/$(mktemp -d):/run",
|
|
"os" : "debian",
|
|
"update-hosts" : true
|
|
},
|
|
"type" : "host",
|
|
"value" : {
|
|
"ip" : "172.17.0.4"
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo mkdir -p /build/pgbackrest-release-2.36"
|
|
],
|
|
"host" : "build",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo cp -r /pgbackrest/src /build/pgbackrest-release-2.36"
|
|
],
|
|
"host" : "build",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo chown -R vagrant /build/pgbackrest-release-2.36"
|
|
],
|
|
"host" : "build",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo apt-get update"
|
|
],
|
|
"host" : "build",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo apt-get install make gcc libpq-dev libssl-dev libxml2-dev pkg-config \\",
|
|
" liblz4-dev libzstd-dev libbz2-dev libz-dev libyaml-dev"
|
|
],
|
|
"cmd-extra" : "-y 2>&1",
|
|
"host" : "build",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"cd /build/pgbackrest-release-2.36/src && ./configure && make"
|
|
],
|
|
"cmd-extra" : "-j 4",
|
|
"host" : "build",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"id" : "pg1",
|
|
"image" : "pgbackrest/doc:debian",
|
|
"name" : "pg-primary",
|
|
"option" : "-m 512m -v /sys/fs/cgroup:/sys/fs/cgroup:rw -v /tmp/$(mktemp -d):/run",
|
|
"os" : "debian",
|
|
"update-hosts" : true
|
|
},
|
|
"type" : "host",
|
|
"value" : {
|
|
"ip" : "172.17.0.5"
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo apt-get install postgresql-client libxml2"
|
|
],
|
|
"cmd-extra" : "-y 2>&1",
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo scp build:/build/pgbackrest-release-2.36/src/pgbackrest /usr/bin"
|
|
],
|
|
"cmd-extra" : "2>&1",
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo chmod 755 /usr/bin/pgbackrest"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo mkdir -p -m 770 /var/log/pgbackrest"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo chown postgres:postgres /var/log/pgbackrest"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo mkdir -p /etc/pgbackrest"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo mkdir -p /etc/pgbackrest/conf.d"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo touch /etc/pgbackrest/pgbackrest.conf"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo chmod 640 /etc/pgbackrest/pgbackrest.conf"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo chown postgres:postgres /etc/pgbackrest/pgbackrest.conf"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres pgbackrest"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
"pgBackRest 2.36 - General help",
|
|
"",
|
|
"Usage:",
|
|
" pgbackrest [options] [command]",
|
|
"",
|
|
"Commands:",
|
|
" archive-get Get a WAL segment from the archive.",
|
|
" archive-push Push a WAL segment to the archive.",
|
|
" backup Backup a database cluster.",
|
|
" check Check the configuration.",
|
|
" expire Expire backups that exceed retention.",
|
|
" help Get help.",
|
|
" info Retrieve information about backups.",
|
|
" repo-get Get a file from a repository.",
|
|
" repo-ls List files in a repository.",
|
|
" restore Restore a database cluster.",
|
|
" stanza-create Create the required stanza data.",
|
|
" stanza-delete Delete a stanza.",
|
|
" stanza-upgrade Upgrade a stanza.",
|
|
" start Allow pgBackRest processes to run.",
|
|
" stop Stop pgBackRest processes from running.",
|
|
" version Get version.",
|
|
"",
|
|
"Use 'pgbackrest help [command]' for more information."
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres /usr/lib/postgresql/12/bin/initdb \\",
|
|
" -D /var/lib/postgresql/12/demo -k -A peer"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo pg_createcluster 12 demo"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
"Configuring already existing cluster (configuration: /etc/postgresql/12/demo, data: /var/lib/postgresql/12/demo, owner: 102:103)",
|
|
"Ver Cluster Port Status Owner Data directory Log file",
|
|
"12 demo 5432 down postgres /var/lib/postgresql/12/demo /var/log/postgresql/postgresql-12-demo.log"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"echo 'shared_buffers = 16MB' >> /etc/postgresql/12/demo/postgresql.conf"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : "root"
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"file" : "/etc/postgresql/12/demo/postgresql.conf",
|
|
"host" : "pg-primary",
|
|
"option" : {
|
|
"listen_addresses" : {
|
|
"value" : "'*'"
|
|
}
|
|
}
|
|
},
|
|
"type" : "cfg-postgresql",
|
|
"value" : {
|
|
"config" : [
|
|
"listen_addresses = '*'"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"file" : "/etc/postgresql/12/demo/postgresql.conf",
|
|
"host" : "pg-primary",
|
|
"option" : {
|
|
"log_line_prefix" : {
|
|
"value" : "''"
|
|
}
|
|
}
|
|
},
|
|
"type" : "cfg-postgresql",
|
|
"value" : {
|
|
"config" : [
|
|
"listen_addresses = '*'",
|
|
"log_line_prefix = ''"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"file" : "/etc/pgbackrest/pgbackrest.conf",
|
|
"host" : "pg-primary",
|
|
"option" : {
|
|
"demo" : {
|
|
"pg1-path" : {
|
|
"value" : "/var/lib/postgresql/12/demo"
|
|
}
|
|
},
|
|
"global" : {
|
|
"log-level-stderr" : {
|
|
"value" : "off"
|
|
},
|
|
"log-timestamp" : {
|
|
"value" : "n"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"type" : "cfg-pgbackrest",
|
|
"value" : {
|
|
"config" : [
|
|
"[demo]",
|
|
"pg1-path=/var/lib/postgresql/12/demo"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres bash -c ' \\",
|
|
" export PGBACKREST_LOG_PATH=/path/set/by/env && \\",
|
|
" pgbackrest --log-level-console=error help backup log-path'"
|
|
],
|
|
"highlight" : {
|
|
"filter" : false,
|
|
"filter-context" : 2,
|
|
"list" : [
|
|
"current\\: \\/path\\/set\\/by\\/env"
|
|
]
|
|
},
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
"pgBackRest 2.36 - 'backup' command - 'log-path' option help",
|
|
"",
|
|
"Path where log files are stored.",
|
|
"",
|
|
"The log path provides a location for pgBackRest to store log files. Note that",
|
|
"if log-level-file=off then no log path is required.",
|
|
"",
|
|
"current: /path/set/by/env",
|
|
"default: /var/log/pgbackrest"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo mkdir -p /var/lib/pgbackrest"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo chmod 750 /var/lib/pgbackrest"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo chown postgres:postgres /var/lib/pgbackrest"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"file" : "/etc/pgbackrest/pgbackrest.conf",
|
|
"host" : "pg-primary",
|
|
"option" : {
|
|
"global" : {
|
|
"repo1-path" : {
|
|
"value" : "/var/lib/pgbackrest"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"type" : "cfg-pgbackrest",
|
|
"value" : {
|
|
"config" : [
|
|
"[demo]",
|
|
"pg1-path=/var/lib/postgresql/12/demo",
|
|
"",
|
|
"[global]",
|
|
"repo1-path=/var/lib/pgbackrest"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"file" : "/etc/postgresql/12/demo/postgresql.conf",
|
|
"host" : "pg-primary",
|
|
"option" : {
|
|
"archive_command" : {
|
|
"value" : "'pgbackrest --stanza=demo archive-push %p'"
|
|
},
|
|
"archive_mode" : {
|
|
"value" : "on"
|
|
},
|
|
"max_wal_senders" : {
|
|
"value" : "3"
|
|
},
|
|
"wal_level" : {
|
|
"value" : "replica"
|
|
}
|
|
}
|
|
},
|
|
"type" : "cfg-postgresql",
|
|
"value" : {
|
|
"config" : [
|
|
"archive_command = 'pgbackrest --stanza=demo archive-push %p'",
|
|
"archive_mode = on",
|
|
"listen_addresses = '*'",
|
|
"log_line_prefix = ''",
|
|
"max_wal_senders = 3",
|
|
"wal_level = replica"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo pg_ctlcluster 12 demo restart"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres sleep 2"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"file" : "/etc/pgbackrest/pgbackrest.conf",
|
|
"host" : "pg-primary",
|
|
"option" : {
|
|
"global:archive-push" : {
|
|
"compress-level" : {
|
|
"value" : "3"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"type" : "cfg-pgbackrest",
|
|
"value" : {
|
|
"config" : [
|
|
"[demo]",
|
|
"pg1-path=/var/lib/postgresql/12/demo",
|
|
"",
|
|
"[global]",
|
|
"repo1-path=/var/lib/pgbackrest",
|
|
"",
|
|
"[global:archive-push]",
|
|
"compress-level=3"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"file" : "/etc/pgbackrest/pgbackrest.conf",
|
|
"host" : "pg-primary",
|
|
"option" : {
|
|
"global" : {
|
|
"repo1-retention-full" : {
|
|
"value" : "2"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"type" : "cfg-pgbackrest",
|
|
"value" : {
|
|
"config" : [
|
|
"[demo]",
|
|
"pg1-path=/var/lib/postgresql/12/demo",
|
|
"",
|
|
"[global]",
|
|
"repo1-path=/var/lib/pgbackrest",
|
|
"repo1-retention-full=2",
|
|
"",
|
|
"[global:archive-push]",
|
|
"compress-level=3"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"file" : "/etc/pgbackrest/pgbackrest.conf",
|
|
"host" : "pg-primary",
|
|
"option" : {
|
|
"global" : {
|
|
"repo1-cipher-pass" : {
|
|
"value" : "zWaf6XtpjIVZC5444yXB+cgFDFl7MxGlgkZSaoPvTGirhPygu4jOKOXf9LO4vjfO"
|
|
},
|
|
"repo1-cipher-type" : {
|
|
"value" : "aes-256-cbc"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"type" : "cfg-pgbackrest",
|
|
"value" : {
|
|
"config" : [
|
|
"[demo]",
|
|
"pg1-path=/var/lib/postgresql/12/demo",
|
|
"",
|
|
"[global]",
|
|
"repo1-cipher-pass=zWaf6XtpjIVZC5444yXB+cgFDFl7MxGlgkZSaoPvTGirhPygu4jOKOXf9LO4vjfO",
|
|
"repo1-cipher-type=aes-256-cbc",
|
|
"repo1-path=/var/lib/pgbackrest",
|
|
"repo1-retention-full=2",
|
|
"",
|
|
"[global:archive-push]",
|
|
"compress-level=3"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres pgbackrest --stanza=demo --log-level-console=info stanza-create"
|
|
],
|
|
"highlight" : {
|
|
"filter" : true,
|
|
"filter-context" : 2,
|
|
"list" : [
|
|
"completed successfully"
|
|
]
|
|
},
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
"P00 INFO: stanza-create command begin 2.36: --exec-id=1366-f2772c57 --log-level-console=info --log-level-stderr=off --no-log-timestamp --pg1-path=/var/lib/postgresql/12/demo --repo1-cipher-pass=<redacted> --repo1-cipher-type=aes-256-cbc --repo1-path=/var/lib/pgbackrest --stanza=demo",
|
|
"P00 INFO: stanza-create for stanza 'demo' on repo1",
|
|
"P00 INFO: stanza-create command end: completed successfully"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres pgbackrest --stanza=demo --log-level-console=info check"
|
|
],
|
|
"highlight" : {
|
|
"filter" : true,
|
|
"filter-context" : 2,
|
|
"list" : [
|
|
" successfully archived to "
|
|
]
|
|
},
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
"P00 INFO: check command begin 2.36: --exec-id=1377-3cf7b456 --log-level-console=info --log-level-stderr=off --no-log-timestamp --pg1-path=/var/lib/postgresql/12/demo --repo1-cipher-pass=<redacted> --repo1-cipher-type=aes-256-cbc --repo1-path=/var/lib/pgbackrest --stanza=demo",
|
|
"P00 INFO: check repo1 configuration (primary)",
|
|
"P00 INFO: check repo1 archive for WAL (primary)",
|
|
"P00 INFO: WAL segment 000000010000000000000001 successfully archived to '/var/lib/pgbackrest/archive/demo/12-1/0000000100000000/000000010000000000000001-121842c5b2b35528b72ba937561b957d77d6b7b1.gz' on repo1",
|
|
"P00 INFO: check command end: completed successfully"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"file" : "/etc/pgbackrest/pgbackrest.conf",
|
|
"host" : "pg-primary",
|
|
"option" : {
|
|
"global" : {
|
|
"start-fast" : {
|
|
"value" : "y"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"type" : "cfg-pgbackrest",
|
|
"value" : {
|
|
"config" : [
|
|
"[demo]",
|
|
"pg1-path=/var/lib/postgresql/12/demo",
|
|
"",
|
|
"[global]",
|
|
"repo1-cipher-pass=zWaf6XtpjIVZC5444yXB+cgFDFl7MxGlgkZSaoPvTGirhPygu4jOKOXf9LO4vjfO",
|
|
"repo1-cipher-type=aes-256-cbc",
|
|
"repo1-path=/var/lib/pgbackrest",
|
|
"repo1-retention-full=2",
|
|
"start-fast=y",
|
|
"",
|
|
"[global:archive-push]",
|
|
"compress-level=3"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres pgbackrest --stanza=demo \\",
|
|
" --log-level-console=info backup"
|
|
],
|
|
"highlight" : {
|
|
"filter" : true,
|
|
"filter-context" : 2,
|
|
"list" : [
|
|
"no prior backup exists|full backup size"
|
|
]
|
|
},
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
"P00 INFO: backup command begin 2.36: --exec-id=1408-368138d0 --log-level-console=info --log-level-stderr=off --no-log-timestamp --pg1-path=/var/lib/postgresql/12/demo --repo1-cipher-pass=<redacted> --repo1-cipher-type=aes-256-cbc --repo1-path=/var/lib/pgbackrest --repo1-retention-full=2 --stanza=demo --start-fast",
|
|
"P00 WARN: no prior backup exists, incr backup has been changed to full",
|
|
"P00 INFO: execute non-exclusive pg_start_backup(): backup begins after the requested immediate checkpoint completes",
|
|
"P00 INFO: backup start archive = 000000010000000000000002, lsn = 0/2000028",
|
|
" [filtered 2 lines of output]",
|
|
"P00 INFO: check archive for segment(s) 000000010000000000000002:000000010000000000000002",
|
|
"P00 INFO: new backup label = 20211029-120551F",
|
|
"P00 INFO: full backup size = 23.4MB, file total = 976",
|
|
"P00 INFO: backup command end: completed successfully",
|
|
"P00 INFO: expire command begin 2.36: --exec-id=1408-368138d0 --log-level-console=info --log-level-stderr=off --no-log-timestamp --repo1-cipher-pass=<redacted> --repo1-cipher-type=aes-256-cbc --repo1-path=/var/lib/pgbackrest --repo1-retention-full=2 --stanza=demo"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres pgbackrest repo-ls backup/demo --filter=\"(F|D|I)$\" --sort=desc | head -1"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
"20211029-120551F"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres pgbackrest --stanza=demo --type=diff \\",
|
|
" --log-level-console=info backup"
|
|
],
|
|
"highlight" : {
|
|
"filter" : true,
|
|
"filter-context" : 2,
|
|
"list" : [
|
|
"diff backup size"
|
|
]
|
|
},
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
" [filtered 6 lines of output]",
|
|
"P00 INFO: check archive for segment(s) 000000010000000000000003:000000010000000000000003",
|
|
"P00 INFO: new backup label = 20211029-120551F_20211029-120555D",
|
|
"P00 INFO: diff backup size = 8KB, file total = 976",
|
|
"P00 INFO: backup command end: completed successfully",
|
|
"P00 INFO: expire command begin 2.36: --exec-id=1437-325c4353 --log-level-console=info --log-level-stderr=off --no-log-timestamp --repo1-cipher-pass=<redacted> --repo1-cipher-type=aes-256-cbc --repo1-path=/var/lib/pgbackrest --repo1-retention-full=2 --stanza=demo"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres pgbackrest info"
|
|
],
|
|
"highlight" : {
|
|
"filter" : false,
|
|
"filter-context" : 2,
|
|
"list" : [
|
|
"(full|incr|diff) backup"
|
|
]
|
|
},
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
"stanza: demo",
|
|
" status: ok",
|
|
" cipher: aes-256-cbc",
|
|
"",
|
|
" db (current)",
|
|
" wal archive min/max (12): 000000010000000000000001/000000010000000000000003",
|
|
"",
|
|
" full backup: 20211029-120551F",
|
|
" timestamp start/stop: 2021-10-29 12:05:51 / 2021-10-29 12:05:54",
|
|
" wal start/stop: 000000010000000000000002 / 000000010000000000000002",
|
|
" database size: 23.4MB, database backup size: 23.4MB",
|
|
" repo1: backup set size: 2.8MB, backup size: 2.8MB",
|
|
"",
|
|
" diff backup: 20211029-120551F_20211029-120555D",
|
|
" timestamp start/stop: 2021-10-29 12:05:55 / 2021-10-29 12:05:56",
|
|
" wal start/stop: 000000010000000000000003 / 000000010000000000000003",
|
|
" database size: 23.4MB, database backup size: 8.3KB",
|
|
" repo1: backup set size: 2.8MB, backup size: 480B",
|
|
" backup reference list: 20211029-120551F"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo pg_ctlcluster 12 demo stop"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres rm /var/lib/postgresql/12/demo/global/pg_control"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo pg_ctlcluster 12 demo start"
|
|
],
|
|
"err-expect" : "1",
|
|
"highlight" : {
|
|
"filter" : true,
|
|
"filter-context" : 2,
|
|
"list" : [
|
|
"could not find the database system"
|
|
]
|
|
},
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
"Error: /usr/lib/postgresql/12/bin/pg_ctl /usr/lib/postgresql/12/bin/pg_ctl start -D /var/lib/postgresql/12/demo -l /var/log/postgresql/postgresql-12-demo.log -s -o -c config_file=\"/etc/postgresql/12/demo/postgresql.conf\" exited with status 1: ",
|
|
"postgres: could not find the database system",
|
|
"Expected to find it in the directory \"/var/lib/postgresql/12/demo\",",
|
|
"but could not open file \"/var/lib/postgresql/12/demo/global/pg_control\": No such file or directory",
|
|
"Examine the log output."
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres find /var/lib/postgresql/12/demo -mindepth 1 -delete"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres pgbackrest --stanza=demo restore"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo pg_ctlcluster 12 demo start"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres sleep 2"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres mkdir -p /var/lib/postgresql/pgbackrest/doc/example"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres cp -r /pgbackrest/doc/example/* \\",
|
|
" /var/lib/postgresql/pgbackrest/doc/example"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres cat \\",
|
|
" /var/lib/postgresql/pgbackrest/doc/example/pgsql-pgbackrest-info.sql"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
"-- An example of monitoring pgBackRest from within PostgreSQL",
|
|
"--",
|
|
"-- Use copy to export data from the pgBackRest info command into the jsonb",
|
|
"-- type so it can be queried directly by PostgreSQL.",
|
|
"",
|
|
"-- Create monitor schema",
|
|
"create schema monitor;",
|
|
"",
|
|
"-- Get pgBackRest info in JSON format",
|
|
"create function monitor.pgbackrest_info()",
|
|
" returns jsonb AS $$",
|
|
"declare",
|
|
" data jsonb;",
|
|
"begin",
|
|
" -- Create a temp table to hold the JSON data",
|
|
" create temp table temp_pgbackrest_data (data jsonb);",
|
|
"",
|
|
" -- Copy data into the table directly from the pgBackRest info command",
|
|
" copy temp_pgbackrest_data (data)",
|
|
" from program",
|
|
" 'pgbackrest --output=json info' (format text);",
|
|
"",
|
|
" select temp_pgbackrest_data.data",
|
|
" into data",
|
|
" from temp_pgbackrest_data;",
|
|
"",
|
|
" drop table temp_pgbackrest_data;",
|
|
"",
|
|
" return data;",
|
|
"end $$ language plpgsql;"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres psql -f \\",
|
|
" /var/lib/postgresql/pgbackrest/doc/example/pgsql-pgbackrest-info.sql"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres cat \\",
|
|
" /var/lib/postgresql/pgbackrest/doc/example/pgsql-pgbackrest-query.sql"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
"-- Get last successful backup for each stanza",
|
|
"--",
|
|
"-- Requires the monitor.pgbackrest_info function.",
|
|
"with stanza as",
|
|
"(",
|
|
" select data->'name' as name,",
|
|
" data->'backup'->(",
|
|
" jsonb_array_length(data->'backup') - 1) as last_backup,",
|
|
" data->'archive'->(",
|
|
" jsonb_array_length(data->'archive') - 1) as current_archive",
|
|
" from jsonb_array_elements(monitor.pgbackrest_info()) as data",
|
|
")",
|
|
"select name,",
|
|
" to_timestamp(",
|
|
" (last_backup->'timestamp'->>'stop')::numeric) as last_successful_backup,",
|
|
" current_archive->>'max' as last_archived_wal",
|
|
" from stanza;"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres psql -f \\",
|
|
" /var/lib/postgresql/pgbackrest/doc/example/pgsql-pgbackrest-query.sql"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
" name | last_successful_backup | last_archived_wal ",
|
|
"--------+------------------------+--------------------------",
|
|
" \"demo\" | 2021-10-29 12:05:56+00 | 000000010000000000000003",
|
|
"(1 row)"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo apt-get install jq"
|
|
],
|
|
"cmd-extra" : "-y 2>&1",
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres pgbackrest --output=json --stanza=demo info | \\",
|
|
" jq '.[0] | .backup[-1] | .timestamp.stop'"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
"1635509156"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres pgbackrest --output=json --stanza=demo info | \\",
|
|
" jq '.[0] | .archive[-1] | .max'"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
"\"000000010000000000000003\""
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"file" : "/etc/pgbackrest/pgbackrest.conf",
|
|
"host" : "pg-primary",
|
|
"option" : {
|
|
"global" : {
|
|
"repo1-retention-full" : {
|
|
"value" : "2"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"type" : "cfg-pgbackrest",
|
|
"value" : {
|
|
"config" : [
|
|
"[demo]",
|
|
"pg1-path=/var/lib/postgresql/12/demo",
|
|
"",
|
|
"[global]",
|
|
"repo1-cipher-pass=zWaf6XtpjIVZC5444yXB+cgFDFl7MxGlgkZSaoPvTGirhPygu4jOKOXf9LO4vjfO",
|
|
"repo1-cipher-type=aes-256-cbc",
|
|
"repo1-path=/var/lib/pgbackrest",
|
|
"repo1-retention-full=2",
|
|
"start-fast=y",
|
|
"",
|
|
"[global:archive-push]",
|
|
"compress-level=3"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres pgbackrest --stanza=demo --type=full \\",
|
|
" --log-level-console=detail backup"
|
|
],
|
|
"highlight" : {
|
|
"filter" : true,
|
|
"filter-context" : 2,
|
|
"list" : [
|
|
"archive retention on backup 20211029-120551F|remove archive"
|
|
]
|
|
},
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
" [filtered 984 lines of output]",
|
|
"P00 INFO: backup command end: completed successfully",
|
|
"P00 INFO: expire command begin 2.36: --exec-id=1736-ff9ce9ad --log-level-console=detail --log-level-stderr=off --no-log-timestamp --repo1-cipher-pass=<redacted> --repo1-cipher-type=aes-256-cbc --repo1-path=/var/lib/pgbackrest --repo1-retention-full=2 --stanza=demo",
|
|
"P00 DETAIL: repo1: 12-1 archive retention on backup 20211029-120551F, start = 000000010000000000000002",
|
|
"P00 INFO: repo1: 12-1 remove archive, start = 000000010000000000000001, stop = 000000010000000000000001",
|
|
"P00 INFO: expire command end: completed successfully"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres pgbackrest repo-ls backup/demo --filter=\"(F|D|I)$\" --sort=desc | head -1"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
"20211029-120606F"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres pgbackrest --stanza=demo --type=full \\",
|
|
" --log-level-console=info backup"
|
|
],
|
|
"highlight" : {
|
|
"filter" : true,
|
|
"filter-context" : 2,
|
|
"list" : [
|
|
"expire full backup set 20211029-120551F|archive retention on backup 20211029-120606F|remove archive"
|
|
]
|
|
},
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
" [filtered 8 lines of output]",
|
|
"P00 INFO: backup command end: completed successfully",
|
|
"P00 INFO: expire command begin 2.36: --exec-id=1766-5c7c95b7 --log-level-console=info --log-level-stderr=off --no-log-timestamp --repo1-cipher-pass=<redacted> --repo1-cipher-type=aes-256-cbc --repo1-path=/var/lib/pgbackrest --repo1-retention-full=2 --stanza=demo",
|
|
"P00 INFO: repo1: expire full backup set 20211029-120551F, 20211029-120551F_20211029-120555D",
|
|
"P00 INFO: repo1: remove expired backup 20211029-120551F_20211029-120555D",
|
|
"P00 INFO: repo1: remove expired backup 20211029-120551F",
|
|
"P00 INFO: repo1: 12-1 remove archive, start = 0000000100000000, stop = 000000020000000000000004",
|
|
"P00 INFO: expire command end: completed successfully"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"file" : "/etc/pgbackrest/pgbackrest.conf",
|
|
"host" : "pg-primary",
|
|
"option" : {
|
|
"global" : {
|
|
"repo1-retention-diff" : {
|
|
"value" : "1"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"type" : "cfg-pgbackrest",
|
|
"value" : {
|
|
"config" : [
|
|
"[demo]",
|
|
"pg1-path=/var/lib/postgresql/12/demo",
|
|
"",
|
|
"[global]",
|
|
"repo1-cipher-pass=zWaf6XtpjIVZC5444yXB+cgFDFl7MxGlgkZSaoPvTGirhPygu4jOKOXf9LO4vjfO",
|
|
"repo1-cipher-type=aes-256-cbc",
|
|
"repo1-path=/var/lib/pgbackrest",
|
|
"repo1-retention-diff=1",
|
|
"repo1-retention-full=2",
|
|
"start-fast=y",
|
|
"",
|
|
"[global:archive-push]",
|
|
"compress-level=3"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres pgbackrest --stanza=demo --type=diff backup"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres pgbackrest repo-ls backup/demo --filter=\"(F|D|I)$\" --sort=desc | head -1"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
"20211029-120610F_20211029-120613D"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres pgbackrest --stanza=demo --type=incr backup"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres pgbackrest --stanza=demo --type=diff \\",
|
|
" --log-level-console=info backup"
|
|
],
|
|
"highlight" : {
|
|
"filter" : true,
|
|
"filter-context" : 2,
|
|
"list" : [
|
|
"expire diff backup set 20211029-120610F_20211029-120613D"
|
|
]
|
|
},
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
" [filtered 9 lines of output]",
|
|
"P00 INFO: backup command end: completed successfully",
|
|
"P00 INFO: expire command begin 2.36: --exec-id=1848-52792cb8 --log-level-console=info --log-level-stderr=off --no-log-timestamp --repo1-cipher-pass=<redacted> --repo1-cipher-type=aes-256-cbc --repo1-path=/var/lib/pgbackrest --repo1-retention-diff=1 --repo1-retention-full=2 --stanza=demo",
|
|
"P00 INFO: repo1: expire diff backup set 20211029-120610F_20211029-120613D, 20211029-120610F_20211029-120615I",
|
|
"P00 INFO: repo1: remove expired backup 20211029-120610F_20211029-120615I",
|
|
"P00 INFO: repo1: remove expired backup 20211029-120610F_20211029-120613D",
|
|
"P00 INFO: expire command end: completed successfully"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"file" : "/etc/pgbackrest/pgbackrest.conf",
|
|
"host" : "pg-primary",
|
|
"option" : {
|
|
"global" : {
|
|
"repo1-retention-diff" : {
|
|
"value" : "2"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"type" : "cfg-pgbackrest",
|
|
"value" : {
|
|
"config" : [
|
|
"[demo]",
|
|
"pg1-path=/var/lib/postgresql/12/demo",
|
|
"",
|
|
"[global]",
|
|
"repo1-cipher-pass=zWaf6XtpjIVZC5444yXB+cgFDFl7MxGlgkZSaoPvTGirhPygu4jOKOXf9LO4vjfO",
|
|
"repo1-cipher-type=aes-256-cbc",
|
|
"repo1-path=/var/lib/pgbackrest",
|
|
"repo1-retention-diff=2",
|
|
"repo1-retention-full=2",
|
|
"start-fast=y",
|
|
"",
|
|
"[global:archive-push]",
|
|
"compress-level=3"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres pgbackrest repo-ls backup/demo --filter=\"(F|D|I)$\" --sort=desc | head -1"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
"20211029-120610F_20211029-120618D"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres psql -c \" \\",
|
|
" select pg_create_restore_point('generate WAL'); select pg_switch_wal(); \\",
|
|
" select pg_create_restore_point('generate WAL'); select pg_switch_wal();\""
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres pgbackrest --stanza=demo --type=diff \\",
|
|
" --log-level-console=info backup"
|
|
],
|
|
"highlight" : {
|
|
"filter" : true,
|
|
"filter-context" : 2,
|
|
"list" : [
|
|
"new backup label"
|
|
]
|
|
},
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
" [filtered 5 lines of output]",
|
|
"P00 INFO: backup stop archive = 00000002000000000000000D, lsn = 0/D000100",
|
|
"P00 INFO: check archive for segment(s) 00000002000000000000000D:00000002000000000000000D",
|
|
"P00 INFO: new backup label = 20211029-120610F_20211029-120620D",
|
|
"P00 INFO: diff backup size = 8KB, file total = 976",
|
|
"P00 INFO: backup command end: completed successfully",
|
|
" [filtered 2 lines of output]"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres pgbackrest repo-ls backup/demo --filter=\"(F|D|I)$\" --sort=desc | head -1"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
"20211029-120610F_20211029-120620D"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres pgbackrest --stanza=demo --log-level-console=detail \\",
|
|
" --repo1-retention-archive-type=diff --repo1-retention-archive=1 expire"
|
|
],
|
|
"highlight" : {
|
|
"filter" : true,
|
|
"filter-context" : 2,
|
|
"list" : [
|
|
"archive retention on backup 20211029-120610F_20211029-120618D|remove archive"
|
|
]
|
|
},
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
"P00 INFO: expire command begin 2.36: --exec-id=1939-1405cf84 --log-level-console=detail --log-level-stderr=off --no-log-timestamp --repo1-cipher-pass=<redacted> --repo1-cipher-type=aes-256-cbc --repo1-path=/var/lib/pgbackrest --repo1-retention-archive=1 --repo1-retention-archive-type=diff --repo1-retention-diff=2 --repo1-retention-full=2 --stanza=demo",
|
|
"P00 DETAIL: repo1: 12-1 archive retention on backup 20211029-120606F, start = 000000020000000000000005, stop = 000000020000000000000005",
|
|
"P00 DETAIL: repo1: 12-1 archive retention on backup 20211029-120610F, start = 000000020000000000000006, stop = 000000020000000000000006",
|
|
"P00 DETAIL: repo1: 12-1 archive retention on backup 20211029-120610F_20211029-120618D, start = 00000002000000000000000A, stop = 00000002000000000000000A",
|
|
"P00 DETAIL: repo1: 12-1 archive retention on backup 20211029-120610F_20211029-120620D, start = 00000002000000000000000D",
|
|
"P00 INFO: repo1: 12-1 remove archive, start = 000000020000000000000007, stop = 000000020000000000000009",
|
|
"P00 INFO: repo1: 12-1 remove archive, start = 00000002000000000000000B, stop = 00000002000000000000000C",
|
|
"P00 INFO: expire command end: completed successfully"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo pg_ctlcluster 12 demo stop"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres pgbackrest --stanza=demo --delta \\",
|
|
" --log-level-console=detail restore"
|
|
],
|
|
"highlight" : {
|
|
"filter" : true,
|
|
"filter-context" : 2,
|
|
"list" : [
|
|
"demo\\/PG_VERSION - exists and matches backup|remove invalid files|rename global\\/pg_control"
|
|
]
|
|
},
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
" [filtered 2 lines of output]",
|
|
"P00 DETAIL: check '/var/lib/postgresql/12/demo' exists",
|
|
"P00 DETAIL: remove 'global/pg_control' so cluster will not start if restore does not complete",
|
|
"P00 INFO: remove invalid files/links/paths from '/var/lib/postgresql/12/demo'",
|
|
"P00 DETAIL: remove invalid file '/var/lib/postgresql/12/demo/backup_label.old'",
|
|
"P00 DETAIL: remove invalid file '/var/lib/postgresql/12/demo/base/1/pg_internal.init'",
|
|
" [filtered 815 lines of output]",
|
|
"P01 DETAIL: restore file /var/lib/postgresql/12/demo/base/13397/PG_VERSION - exists and matches backup (3B, 99%) checksum ad552e6dc057d1d825bf49df79d6b98eba846ebe",
|
|
"P01 DETAIL: restore file /var/lib/postgresql/12/demo/base/1/PG_VERSION - exists and matches backup (3B, 99%) checksum ad552e6dc057d1d825bf49df79d6b98eba846ebe",
|
|
"P01 DETAIL: restore file /var/lib/postgresql/12/demo/PG_VERSION - exists and matches backup (3B, 100%) checksum ad552e6dc057d1d825bf49df79d6b98eba846ebe",
|
|
"P01 DETAIL: restore file /var/lib/postgresql/12/demo/global/6100 - exists and is zero size (0B, 100%)",
|
|
"P01 DETAIL: restore file /var/lib/postgresql/12/demo/global/6000 - exists and is zero size (0B, 100%)",
|
|
" [filtered 202 lines of output]"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo pg_ctlcluster 12 demo start"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres sleep 2"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres psql -c \"create database test1;\""
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
"CREATE DATABASE"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres psql -c \"create database test2;\""
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
"CREATE DATABASE"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres psql -c \"create table test1_table (id int); \\",
|
|
" insert into test1_table (id) values (1);\" test1"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
"INSERT 0 1"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres psql -c \"create table test2_table (id int); \\",
|
|
" insert into test2_table (id) values (2);\" test2"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
"INSERT 0 1"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres pgbackrest --stanza=demo --type=incr backup"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres psql -Atc \"select oid from pg_database where datname = 'test1'\""
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
"24576"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres du -sh /var/lib/postgresql/12/demo/base/24576"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
"7.8M\t/var/lib/postgresql/12/demo/base/24576"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres pgbackrest repo-ls backup/demo --filter=\"(F|D|I)$\" --sort=desc | head -1"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
"20211029-120610F_20211029-120629I"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres pgbackrest --stanza=demo \\",
|
|
" --set=20211029-120610F_20211029-120629I info"
|
|
],
|
|
"highlight" : {
|
|
"filter" : true,
|
|
"filter-context" : 2,
|
|
"list" : [
|
|
"database list"
|
|
]
|
|
},
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
" [filtered 11 lines of output]",
|
|
" repo1: backup set size: 4.7MB, backup size: 1.9MB",
|
|
" backup reference list: 20211029-120610F, 20211029-120610F_20211029-120620D",
|
|
" database list: postgres (13398), test1 (24576), test2 (24577)"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo pg_ctlcluster 12 demo stop"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres pgbackrest --stanza=demo --delta \\",
|
|
" --db-include=test2 --type=immediate --target-action=promote restore"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo pg_ctlcluster 12 demo start"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres sleep 2"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres psql -c \"select * from test2_table;\" test2"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
" id ",
|
|
"----",
|
|
" 2",
|
|
"(1 row)"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres psql -c \"select * from test1_table;\" test1"
|
|
],
|
|
"err-expect" : "2",
|
|
"highlight" : {
|
|
"filter" : false,
|
|
"filter-context" : 2,
|
|
"list" : [
|
|
"relation mapping file.*contains invalid data"
|
|
]
|
|
},
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
"psql: error: connection to server on socket \"/var/run/postgresql/.s.PGSQL.5432\" failed: FATAL: relation mapping file \"base/24576/pg_filenode.map\" contains invalid data"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres du -sh /var/lib/postgresql/12/demo/base/24576"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
"16K\t/var/lib/postgresql/12/demo/base/24576"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres psql -c \"drop database test1;\""
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
"DROP DATABASE"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres psql -c \"select oid, datname from pg_database order by oid;\""
|
|
],
|
|
"highlight" : {
|
|
"filter" : false,
|
|
"filter-context" : 2,
|
|
"list" : [
|
|
"test2"
|
|
]
|
|
},
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
" oid | datname ",
|
|
"-------+-----------",
|
|
" 1 | template1",
|
|
" 13397 | template0",
|
|
" 13398 | postgres",
|
|
" 24577 | test2",
|
|
"(4 rows)"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres pgbackrest --stanza=demo --type=diff backup"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres psql -c \"begin; \\",
|
|
" create table important_table (message text); \\",
|
|
" insert into important_table values ('Important Data'); \\",
|
|
" commit; \\",
|
|
" select * from important_table;\""
|
|
],
|
|
"highlight" : {
|
|
"filter" : true,
|
|
"filter-context" : 2,
|
|
"list" : [
|
|
"Important Data"
|
|
]
|
|
},
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
" message ",
|
|
"----------------",
|
|
" Important Data",
|
|
"(1 row)"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres sleep 1"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres psql -Atc \"select current_timestamp\""
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
"2021-10-29 12:06:41.23673+00"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres sleep 1"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres psql -c \"begin; \\",
|
|
" drop table important_table; \\",
|
|
" commit; \\",
|
|
" select * from important_table;\""
|
|
],
|
|
"err-expect" : "1",
|
|
"highlight" : {
|
|
"filter" : true,
|
|
"filter-context" : 2,
|
|
"list" : [
|
|
"does not exist"
|
|
]
|
|
},
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
"ERROR: relation \"important_table\" does not exist",
|
|
"LINE 1: ...le important_table; commit; select * from important_...",
|
|
" ^"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo pg_ctlcluster 12 demo stop"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres pgbackrest --stanza=demo --delta \\",
|
|
" --type=time \"--target=2021-10-29 12:06:41.23673+00\" \\",
|
|
" --target-action=promote restore"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo rm /var/log/postgresql/postgresql-12-demo.log"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres cat /var/lib/postgresql/12/demo/postgresql.auto.conf"
|
|
],
|
|
"highlight" : {
|
|
"filter" : true,
|
|
"filter-context" : 2,
|
|
"list" : [
|
|
"recovery_target_time"
|
|
]
|
|
},
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
" [filtered 14 lines of output]",
|
|
"# Recovery settings generated by pgBackRest restore on 2021-10-29 12:06:43",
|
|
"restore_command = 'pgbackrest --stanza=demo archive-get %f \"%p\"'",
|
|
"recovery_target_time = '2021-10-29 12:06:41.23673+00'",
|
|
"recovery_target_action = 'promote'"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo pg_ctlcluster 12 demo start"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres sleep 2"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres psql -c \"select * from important_table\""
|
|
],
|
|
"highlight" : {
|
|
"filter" : true,
|
|
"filter-context" : 2,
|
|
"list" : [
|
|
"Important Data"
|
|
]
|
|
},
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
" message ",
|
|
"----------------",
|
|
" Important Data",
|
|
"(1 row)"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres cat /var/log/postgresql/postgresql-12-demo.log"
|
|
],
|
|
"highlight" : {
|
|
"filter" : true,
|
|
"filter-context" : 2,
|
|
"list" : [
|
|
"recovery stopping before|last completed transaction|starting point-in-time recovery"
|
|
]
|
|
},
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
" [filtered 3 lines of output]",
|
|
"LOG: listening on Unix socket \"/var/run/postgresql/.s.PGSQL.5432\"",
|
|
"LOG: database system was interrupted; last known up at 2021-10-29 12:06:38 UTC",
|
|
"LOG: starting point-in-time recovery to 2021-10-29 12:06:41.23673+00",
|
|
"LOG: restored log file \"00000004.history\" from archive",
|
|
"LOG: restored log file \"000000040000000000000010\" from archive",
|
|
" [filtered 2 lines of output]",
|
|
"LOG: database system is ready to accept read only connections",
|
|
"LOG: restored log file \"000000040000000000000011\" from archive",
|
|
"LOG: recovery stopping before commit of transaction 495, time 2021-10-29 12:06:42.508122+00",
|
|
"LOG: redo done at 0/11019DD8",
|
|
"LOG: last completed transaction was at log time 2021-10-29 12:06:39.99863+00",
|
|
"LOG: selected new timeline ID: 5",
|
|
"LOG: archive recovery complete",
|
|
" [filtered 2 lines of output]"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres psql -c \"begin; \\",
|
|
" drop table important_table; \\",
|
|
" commit; \\",
|
|
" select * from important_table;\""
|
|
],
|
|
"err-expect" : "1",
|
|
"highlight" : {
|
|
"filter" : true,
|
|
"filter-context" : 2,
|
|
"list" : [
|
|
"does not exist"
|
|
]
|
|
},
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
"ERROR: relation \"important_table\" does not exist",
|
|
"LINE 1: ...le important_table; commit; select * from important_...",
|
|
" ^"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres pgbackrest --stanza=demo --type=incr backup"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres pgbackrest repo-ls backup/demo --filter=\"(F|D|I)$\" --sort=desc | head -1"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
"20211029-120610F_20211029-120649I"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres pgbackrest info"
|
|
],
|
|
"highlight" : {
|
|
"filter" : false,
|
|
"filter-context" : 2,
|
|
"list" : [
|
|
"20211029-120610F_20211029-120649I"
|
|
]
|
|
},
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
"stanza: demo",
|
|
" status: ok",
|
|
" cipher: aes-256-cbc",
|
|
"",
|
|
" db (current)",
|
|
" wal archive min/max (12): 000000020000000000000005/000000050000000000000012",
|
|
"",
|
|
" full backup: 20211029-120606F",
|
|
" timestamp start/stop: 2021-10-29 12:06:06 / 2021-10-29 12:06:09",
|
|
" wal start/stop: 000000020000000000000005 / 000000020000000000000005",
|
|
" database size: 23.4MB, database backup size: 23.4MB",
|
|
" repo1: backup set size: 2.8MB, backup size: 2.8MB",
|
|
"",
|
|
" full backup: 20211029-120610F",
|
|
" timestamp start/stop: 2021-10-29 12:06:10 / 2021-10-29 12:06:12",
|
|
" wal start/stop: 000000020000000000000006 / 000000020000000000000006",
|
|
" database size: 23.4MB, database backup size: 23.4MB",
|
|
" repo1: backup set size: 2.8MB, backup size: 2.8MB",
|
|
"",
|
|
" diff backup: 20211029-120610F_20211029-120620D",
|
|
" timestamp start/stop: 2021-10-29 12:06:20 / 2021-10-29 12:06:22",
|
|
" wal start/stop: 00000002000000000000000D / 00000002000000000000000D",
|
|
" database size: 23.4MB, database backup size: 8.3KB",
|
|
" repo1: backup set size: 2.8MB, backup size: 496B",
|
|
" backup reference list: 20211029-120610F",
|
|
"",
|
|
" incr backup: 20211029-120610F_20211029-120629I",
|
|
" timestamp start/stop: 2021-10-29 12:06:29 / 2021-10-29 12:06:30",
|
|
" wal start/stop: 00000003000000000000000F / 00000003000000000000000F",
|
|
" database size: 38.7MB, database backup size: 15.8MB",
|
|
" repo1: backup set size: 4.7MB, backup size: 1.9MB",
|
|
" backup reference list: 20211029-120610F, 20211029-120610F_20211029-120620D",
|
|
"",
|
|
" diff backup: 20211029-120610F_20211029-120638D",
|
|
" timestamp start/stop: 2021-10-29 12:06:38 / 2021-10-29 12:06:39",
|
|
" wal start/stop: 000000040000000000000010 / 000000040000000000000010",
|
|
" database size: 31MB, database backup size: 8.2MB",
|
|
" repo1: backup set size: 3.8MB, backup size: 1011.1KB",
|
|
" backup reference list: 20211029-120610F",
|
|
"",
|
|
" incr backup: 20211029-120610F_20211029-120649I",
|
|
" timestamp start/stop: 2021-10-29 12:06:49 / 2021-10-29 12:06:50",
|
|
" wal start/stop: 000000050000000000000012 / 000000050000000000000012",
|
|
" database size: 31MB, database backup size: 2.2MB",
|
|
" repo1: backup set size: 3.8MB, backup size: 234KB",
|
|
" backup reference list: 20211029-120610F, 20211029-120610F_20211029-120638D"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo pg_ctlcluster 12 demo stop"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres pgbackrest --stanza=demo --delta \\",
|
|
" --set=20211029-120610F_20211029-120649I \\",
|
|
" --type=time \"--target=2021-10-29 12:06:41.23673+00\" --target-action=promote restore"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo rm /var/log/postgresql/postgresql-12-demo.log"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo pg_ctlcluster 12 demo start"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres sleep 2"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres psql -c \"select * from important_table\""
|
|
],
|
|
"err-expect" : "1",
|
|
"highlight" : {
|
|
"filter" : true,
|
|
"filter-context" : 2,
|
|
"list" : [
|
|
"does not exist"
|
|
]
|
|
},
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
"ERROR: relation \"important_table\" does not exist",
|
|
"LINE 1: select * from important_table",
|
|
" ^"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres cat /var/log/postgresql/postgresql-12-demo.log"
|
|
],
|
|
"highlight" : {
|
|
"filter" : true,
|
|
"filter-context" : 2,
|
|
"list" : [
|
|
"starting point-in-time recovery|consistent recovery state reached"
|
|
]
|
|
},
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
" [filtered 3 lines of output]",
|
|
"LOG: listening on Unix socket \"/var/run/postgresql/.s.PGSQL.5432\"",
|
|
"LOG: database system was interrupted; last known up at 2021-10-29 12:06:49 UTC",
|
|
"LOG: starting point-in-time recovery to 2021-10-29 12:06:41.23673+00",
|
|
"LOG: restored log file \"00000005.history\" from archive",
|
|
"LOG: restored log file \"000000050000000000000012\" from archive",
|
|
"LOG: redo starts at 0/12000028",
|
|
"LOG: consistent recovery state reached at 0/12000100",
|
|
"LOG: database system is ready to accept read only connections",
|
|
"LOG: redo done at 0/12000100",
|
|
" [filtered 7 lines of output]"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo pg_ctlcluster 12 demo stop"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres pgbackrest --stanza=demo --delta \\",
|
|
" --type=time \"--target=2021-10-29 12:06:41.23673+00\" \\",
|
|
" --target-action=promote restore"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo rm /var/log/postgresql/postgresql-12-demo.log"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo pg_ctlcluster 12 demo start"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres sleep 2"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres psql -c \"select * from important_table\""
|
|
],
|
|
"highlight" : {
|
|
"filter" : true,
|
|
"filter-context" : 2,
|
|
"list" : [
|
|
"Important Data"
|
|
]
|
|
},
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
" message ",
|
|
"----------------",
|
|
" Important Data",
|
|
"(1 row)"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres cat /var/log/postgresql/postgresql-12-demo.log"
|
|
],
|
|
"highlight" : {
|
|
"filter" : true,
|
|
"filter-context" : 2,
|
|
"list" : [
|
|
"recovery stopping before|last completed transaction|starting point-in-time recovery"
|
|
]
|
|
},
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
" [filtered 5 lines of output]",
|
|
"LOG: restored log file \"00000005.history\" from archive",
|
|
"LOG: restored log file \"00000006.history\" from archive",
|
|
"LOG: starting point-in-time recovery to 2021-10-29 12:06:41.23673+00",
|
|
"LOG: restored log file \"00000006.history\" from archive",
|
|
"LOG: restored log file \"000000040000000000000010\" from archive",
|
|
" [filtered 4 lines of output]",
|
|
"LOG: database system is ready to accept read only connections",
|
|
"LOG: restored log file \"000000050000000000000011\" from archive",
|
|
"LOG: recovery stopping before commit of transaction 496, time 2021-10-29 12:06:48.410664+00",
|
|
"LOG: redo done at 0/11022408",
|
|
"LOG: last completed transaction was at log time 2021-10-29 12:06:39.99863+00",
|
|
"LOG: selected new timeline ID: 7",
|
|
"LOG: archive recovery complete",
|
|
" [filtered 2 lines of output]"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"file" : "/etc/pgbackrest/pgbackrest.conf",
|
|
"host" : "pg-primary",
|
|
"option" : {
|
|
"global" : {
|
|
"process-max" : {
|
|
"value" : "4"
|
|
},
|
|
"repo2-azure-account" : {
|
|
"value" : "pgbackrest"
|
|
},
|
|
"repo2-azure-container" : {
|
|
"value" : "demo-container"
|
|
},
|
|
"repo2-azure-key" : {
|
|
"value" : "YXpLZXk="
|
|
},
|
|
"repo2-path" : {
|
|
"value" : "/demo-repo"
|
|
},
|
|
"repo2-retention-full" : {
|
|
"value" : "4"
|
|
},
|
|
"repo2-type" : {
|
|
"value" : "azure"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"type" : "cfg-pgbackrest",
|
|
"value" : {
|
|
"config" : [
|
|
"[demo]",
|
|
"pg1-path=/var/lib/postgresql/12/demo",
|
|
"",
|
|
"[global]",
|
|
"process-max=4",
|
|
"repo1-cipher-pass=zWaf6XtpjIVZC5444yXB+cgFDFl7MxGlgkZSaoPvTGirhPygu4jOKOXf9LO4vjfO",
|
|
"repo1-cipher-type=aes-256-cbc",
|
|
"repo1-path=/var/lib/pgbackrest",
|
|
"repo1-retention-diff=2",
|
|
"repo1-retention-full=2",
|
|
"repo2-azure-account=pgbackrest",
|
|
"repo2-azure-container=demo-container",
|
|
"repo2-azure-key=YXpLZXk=",
|
|
"repo2-path=/demo-repo",
|
|
"repo2-retention-full=4",
|
|
"repo2-type=azure",
|
|
"start-fast=y",
|
|
"",
|
|
"[global:archive-push]",
|
|
"compress-level=3"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"echo \"172.17.0.2 pgbackrest.blob.core.windows.net\" | tee -a /etc/hosts"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : "root"
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres pgbackrest --repo=2 repo-create"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres pgbackrest --stanza=demo --log-level-console=info stanza-create"
|
|
],
|
|
"highlight" : {
|
|
"filter" : true,
|
|
"filter-context" : 2,
|
|
"list" : [
|
|
"completed successfully"
|
|
]
|
|
},
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
" [filtered 2 lines of output]",
|
|
"P00 INFO: stanza 'demo' already exists on repo1 and is valid",
|
|
"P00 INFO: stanza-create for stanza 'demo' on repo2",
|
|
"P00 INFO: stanza-create command end: completed successfully"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres pgbackrest --stanza=demo --repo=2 \\",
|
|
" --log-level-console=info backup"
|
|
],
|
|
"highlight" : {
|
|
"filter" : true,
|
|
"filter-context" : 2,
|
|
"list" : [
|
|
"no prior backup exists|full backup size"
|
|
]
|
|
},
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
"P00 INFO: backup command begin 2.36: --exec-id=2798-0931aac5 --log-level-console=info --log-level-stderr=off --no-log-timestamp --pg1-path=/var/lib/postgresql/12/demo --process-max=4 --repo=2 --repo2-azure-account=<redacted> --repo2-azure-container=demo-container --repo2-azure-key=<redacted> --repo1-cipher-pass=<redacted> --repo1-cipher-type=aes-256-cbc --repo1-path=/var/lib/pgbackrest --repo2-path=/demo-repo --repo1-retention-diff=2 --repo1-retention-full=2 --repo2-retention-full=4 --repo2-type=azure --stanza=demo --start-fast",
|
|
"P00 WARN: no prior backup exists, incr backup has been changed to full",
|
|
"P00 INFO: execute non-exclusive pg_start_backup(): backup begins after the requested immediate checkpoint completes",
|
|
"P00 INFO: backup start archive = 000000070000000000000012, lsn = 0/12000028",
|
|
" [filtered 2 lines of output]",
|
|
"P00 INFO: check archive for segment(s) 000000070000000000000012:000000070000000000000012",
|
|
"P00 INFO: new backup label = 20211029-120704F",
|
|
"P00 INFO: full backup size = 31MB, file total = 1282",
|
|
"P00 INFO: backup command end: completed successfully",
|
|
"P00 INFO: expire command begin 2.36: --exec-id=2798-0931aac5 --log-level-console=info --log-level-stderr=off --no-log-timestamp --repo=2 --repo2-azure-account=<redacted> --repo2-azure-container=demo-container --repo2-azure-key=<redacted> --repo1-cipher-pass=<redacted> --repo1-cipher-type=aes-256-cbc --repo1-path=/var/lib/pgbackrest --repo2-path=/demo-repo --repo1-retention-diff=2 --repo1-retention-full=2 --repo2-retention-full=4 --repo2-type=azure --stanza=demo"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"file" : "/etc/pgbackrest/pgbackrest.conf",
|
|
"host" : "pg-primary",
|
|
"option" : {
|
|
"global" : {
|
|
"process-max" : {
|
|
"value" : "4"
|
|
},
|
|
"repo3-path" : {
|
|
"value" : "/demo-repo"
|
|
},
|
|
"repo3-retention-full" : {
|
|
"value" : "4"
|
|
},
|
|
"repo3-s3-bucket" : {
|
|
"value" : "demo-bucket"
|
|
},
|
|
"repo3-s3-endpoint" : {
|
|
"value" : "s3.us-east-1.amazonaws.com"
|
|
},
|
|
"repo3-s3-key" : {
|
|
"value" : "accessKey1"
|
|
},
|
|
"repo3-s3-key-secret" : {
|
|
"value" : "verySecretKey1"
|
|
},
|
|
"repo3-s3-region" : {
|
|
"value" : "us-east-1"
|
|
},
|
|
"repo3-type" : {
|
|
"value" : "s3"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"type" : "cfg-pgbackrest",
|
|
"value" : {
|
|
"config" : [
|
|
"[demo]",
|
|
"pg1-path=/var/lib/postgresql/12/demo",
|
|
"",
|
|
"[global]",
|
|
"process-max=4",
|
|
"repo1-cipher-pass=zWaf6XtpjIVZC5444yXB+cgFDFl7MxGlgkZSaoPvTGirhPygu4jOKOXf9LO4vjfO",
|
|
"repo1-cipher-type=aes-256-cbc",
|
|
"repo1-path=/var/lib/pgbackrest",
|
|
"repo1-retention-diff=2",
|
|
"repo1-retention-full=2",
|
|
"repo2-azure-account=pgbackrest",
|
|
"repo2-azure-container=demo-container",
|
|
"repo2-azure-key=YXpLZXk=",
|
|
"repo2-path=/demo-repo",
|
|
"repo2-retention-full=4",
|
|
"repo2-type=azure",
|
|
"repo3-path=/demo-repo",
|
|
"repo3-retention-full=4",
|
|
"repo3-s3-bucket=demo-bucket",
|
|
"repo3-s3-endpoint=s3.us-east-1.amazonaws.com",
|
|
"repo3-s3-key=accessKey1",
|
|
"repo3-s3-key-secret=verySecretKey1",
|
|
"repo3-s3-region=us-east-1",
|
|
"repo3-type=s3",
|
|
"start-fast=y",
|
|
"",
|
|
"[global:archive-push]",
|
|
"compress-level=3"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"echo \"172.17.0.3 demo-bucket.s3.us-east-1.amazonaws.com s3.us-east-1.amazonaws.com\" | tee -a /etc/hosts"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : "root"
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres pgbackrest --repo=3 repo-create"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres pgbackrest --stanza=demo --log-level-console=info stanza-create"
|
|
],
|
|
"highlight" : {
|
|
"filter" : true,
|
|
"filter-context" : 2,
|
|
"list" : [
|
|
"completed successfully"
|
|
]
|
|
},
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
" [filtered 4 lines of output]",
|
|
"P00 INFO: stanza 'demo' already exists on repo2 and is valid",
|
|
"P00 INFO: stanza-create for stanza 'demo' on repo3",
|
|
"P00 INFO: stanza-create command end: completed successfully"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres pgbackrest --stanza=demo --repo=3 \\",
|
|
" --log-level-console=info backup"
|
|
],
|
|
"highlight" : {
|
|
"filter" : true,
|
|
"filter-context" : 2,
|
|
"list" : [
|
|
"no prior backup exists|full backup size"
|
|
]
|
|
},
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
"P00 INFO: backup command begin 2.36: --exec-id=2873-6aad5a60 --log-level-console=info --log-level-stderr=off --no-log-timestamp --pg1-path=/var/lib/postgresql/12/demo --process-max=4 --repo=3 --repo2-azure-account=<redacted> --repo2-azure-container=demo-container --repo2-azure-key=<redacted> --repo1-cipher-pass=<redacted> --repo1-cipher-type=aes-256-cbc --repo1-path=/var/lib/pgbackrest --repo2-path=/demo-repo --repo3-path=/demo-repo --repo1-retention-diff=2 --repo1-retention-full=2 --repo2-retention-full=4 --repo3-retention-full=4 --repo3-s3-bucket=demo-bucket --repo3-s3-endpoint=s3.us-east-1.amazonaws.com --repo3-s3-key=<redacted> --repo3-s3-key-secret=<redacted> --repo3-s3-region=us-east-1 --repo2-type=azure --repo3-type=s3 --stanza=demo --start-fast",
|
|
"P00 WARN: no prior backup exists, incr backup has been changed to full",
|
|
"P00 INFO: execute non-exclusive pg_start_backup(): backup begins after the requested immediate checkpoint completes",
|
|
"P00 INFO: backup start archive = 000000070000000000000013, lsn = 0/13000028",
|
|
" [filtered 2 lines of output]",
|
|
"P00 INFO: check archive for segment(s) 000000070000000000000013:000000070000000000000013",
|
|
"P00 INFO: new backup label = 20211029-120709F",
|
|
"P00 INFO: full backup size = 31MB, file total = 1282",
|
|
"P00 INFO: backup command end: completed successfully",
|
|
"P00 INFO: expire command begin 2.36: --exec-id=2873-6aad5a60 --log-level-console=info --log-level-stderr=off --no-log-timestamp --repo=3 --repo2-azure-account=<redacted> --repo2-azure-container=demo-container --repo2-azure-key=<redacted> --repo1-cipher-pass=<redacted> --repo1-cipher-type=aes-256-cbc --repo1-path=/var/lib/pgbackrest --repo2-path=/demo-repo --repo3-path=/demo-repo --repo1-retention-diff=2 --repo1-retention-full=2 --repo2-retention-full=4 --repo3-retention-full=4 --repo3-s3-bucket=demo-bucket --repo3-s3-endpoint=s3.us-east-1.amazonaws.com --repo3-s3-key=<redacted> --repo3-s3-key-secret=<redacted> --repo3-s3-region=us-east-1 --repo2-type=azure --repo3-type=s3 --stanza=demo"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"file" : "/etc/pgbackrest/pgbackrest.conf",
|
|
"host" : "pg-primary",
|
|
"option" : {
|
|
"global" : {
|
|
"process-max" : {
|
|
"value" : "4"
|
|
},
|
|
"repo4-gcs-bucket" : {
|
|
"value" : "demo-bucket"
|
|
},
|
|
"repo4-gcs-key" : {
|
|
"value" : "/etc/pgbackrest/gcs-key.json"
|
|
},
|
|
"repo4-path" : {
|
|
"value" : "/demo-repo"
|
|
},
|
|
"repo4-type" : {
|
|
"value" : "gcs"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"type" : "cfg-pgbackrest",
|
|
"value" : {
|
|
"config" : [
|
|
"[demo]",
|
|
"pg1-path=/var/lib/postgresql/12/demo",
|
|
"",
|
|
"[global]",
|
|
"process-max=4",
|
|
"repo1-cipher-pass=zWaf6XtpjIVZC5444yXB+cgFDFl7MxGlgkZSaoPvTGirhPygu4jOKOXf9LO4vjfO",
|
|
"repo1-cipher-type=aes-256-cbc",
|
|
"repo1-path=/var/lib/pgbackrest",
|
|
"repo1-retention-diff=2",
|
|
"repo1-retention-full=2",
|
|
"repo2-azure-account=pgbackrest",
|
|
"repo2-azure-container=demo-container",
|
|
"repo2-azure-key=YXpLZXk=",
|
|
"repo2-path=/demo-repo",
|
|
"repo2-retention-full=4",
|
|
"repo2-type=azure",
|
|
"repo3-path=/demo-repo",
|
|
"repo3-retention-full=4",
|
|
"repo3-s3-bucket=demo-bucket",
|
|
"repo3-s3-endpoint=s3.us-east-1.amazonaws.com",
|
|
"repo3-s3-key=accessKey1",
|
|
"repo3-s3-key-secret=verySecretKey1",
|
|
"repo3-s3-region=us-east-1",
|
|
"repo3-type=s3",
|
|
"repo4-gcs-bucket=demo-bucket",
|
|
"repo4-gcs-key=/etc/pgbackrest/gcs-key.json",
|
|
"repo4-path=/demo-repo",
|
|
"repo4-type=gcs",
|
|
"start-fast=y",
|
|
"",
|
|
"[global:archive-push]",
|
|
"compress-level=3"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo pg_ctlcluster 12 demo stop"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres pgbackrest --stanza=demo --log-level-console=info stop"
|
|
],
|
|
"highlight" : {
|
|
"filter" : true,
|
|
"filter-context" : 2,
|
|
"list" : [
|
|
"completed successfully"
|
|
]
|
|
},
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
"P00 INFO: stop command begin 2.36: --exec-id=2937-e18e99b9 --log-level-console=info --log-level-stderr=off --no-log-timestamp --stanza=demo",
|
|
"P00 INFO: stop command end: completed successfully"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres pgbackrest --stanza=demo --repo=1 \\",
|
|
" --log-level-console=info stanza-delete"
|
|
],
|
|
"highlight" : {
|
|
"filter" : true,
|
|
"filter-context" : 2,
|
|
"list" : [
|
|
"completed successfully"
|
|
]
|
|
},
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
"P00 INFO: stanza-delete command begin 2.36: --exec-id=2947-b29fa5d9 --log-level-console=info --log-level-stderr=off --no-log-timestamp --pg1-path=/var/lib/postgresql/12/demo --repo=1 --repo2-azure-account=<redacted> --repo2-azure-container=demo-container --repo2-azure-key=<redacted> --repo1-cipher-pass=<redacted> --repo1-cipher-type=aes-256-cbc --repo4-gcs-bucket=demo-bucket --repo4-gcs-key=<redacted> --repo1-path=/var/lib/pgbackrest --repo2-path=/demo-repo --repo3-path=/demo-repo --repo4-path=/demo-repo --repo3-s3-bucket=demo-bucket --repo3-s3-endpoint=s3.us-east-1.amazonaws.com --repo3-s3-key=<redacted> --repo3-s3-key-secret=<redacted> --repo3-s3-region=us-east-1 --repo2-type=azure --repo3-type=s3 --repo4-type=gcs --stanza=demo",
|
|
"P00 INFO: stanza-delete command end: completed successfully"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo pg_ctlcluster 12 demo start"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"id" : "repo1",
|
|
"image" : "pgbackrest/doc:debian",
|
|
"name" : "repository",
|
|
"option" : "-m 512m -v /sys/fs/cgroup:/sys/fs/cgroup:rw -v /tmp/$(mktemp -d):/run",
|
|
"os" : "debian",
|
|
"update-hosts" : true
|
|
},
|
|
"type" : "host",
|
|
"value" : {
|
|
"ip" : "172.17.0.6"
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo adduser --disabled-password --gecos \"\" pgbackrest"
|
|
],
|
|
"host" : "repository",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo apt-get install postgresql-client libxml2"
|
|
],
|
|
"cmd-extra" : "-y 2>&1",
|
|
"host" : "repository",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo scp build:/build/pgbackrest-release-2.36/src/pgbackrest /usr/bin"
|
|
],
|
|
"cmd-extra" : "2>&1",
|
|
"host" : "repository",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo chmod 755 /usr/bin/pgbackrest"
|
|
],
|
|
"host" : "repository",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo mkdir -p -m 770 /var/log/pgbackrest"
|
|
],
|
|
"host" : "repository",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo chown pgbackrest:pgbackrest /var/log/pgbackrest"
|
|
],
|
|
"host" : "repository",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo mkdir -p /etc/pgbackrest"
|
|
],
|
|
"host" : "repository",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo mkdir -p /etc/pgbackrest/conf.d"
|
|
],
|
|
"host" : "repository",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo touch /etc/pgbackrest/pgbackrest.conf"
|
|
],
|
|
"host" : "repository",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo chmod 640 /etc/pgbackrest/pgbackrest.conf"
|
|
],
|
|
"host" : "repository",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo chown pgbackrest:pgbackrest /etc/pgbackrest/pgbackrest.conf"
|
|
],
|
|
"host" : "repository",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo mkdir -p /var/lib/pgbackrest"
|
|
],
|
|
"host" : "repository",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo chmod 750 /var/lib/pgbackrest"
|
|
],
|
|
"host" : "repository",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo chown pgbackrest:pgbackrest /var/lib/pgbackrest"
|
|
],
|
|
"host" : "repository",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u pgbackrest mkdir -m 750 /home/pgbackrest/.ssh"
|
|
],
|
|
"host" : "repository",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u pgbackrest ssh-keygen -f /home/pgbackrest/.ssh/id_rsa \\",
|
|
" -t rsa -b 4096 -N \"\""
|
|
],
|
|
"host" : "repository",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres mkdir -m 750 -p /var/lib/postgresql/.ssh"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres ssh-keygen -f /var/lib/postgresql/.ssh/id_rsa \\",
|
|
" -t rsa -b 4096 -N \"\""
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"(echo -n 'no-agent-forwarding,no-X11-forwarding,no-port-forwarding,' && \\",
|
|
" echo -n 'command=\"/usr/bin/pgbackrest ${SSH_ORIGINAL_COMMAND#* }\" ' && \\",
|
|
" sudo ssh root@pg-primary cat /var/lib/postgresql/.ssh/id_rsa.pub) | \\",
|
|
" sudo -u pgbackrest tee -a /home/pgbackrest/.ssh/authorized_keys"
|
|
],
|
|
"host" : "repository",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : "root"
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"(echo -n 'no-agent-forwarding,no-X11-forwarding,no-port-forwarding,' && \\",
|
|
" echo -n 'command=\"/usr/bin/pgbackrest ${SSH_ORIGINAL_COMMAND#* }\" ' && \\",
|
|
" sudo ssh root@repository cat /home/pgbackrest/.ssh/id_rsa.pub) | \\",
|
|
" sudo -u postgres tee -a /var/lib/postgresql/.ssh/authorized_keys"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : "root"
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u pgbackrest ssh postgres@pg-primary"
|
|
],
|
|
"cmd-extra" : "-o StrictHostKeyChecking=no",
|
|
"host" : "repository",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres ssh pgbackrest@repository"
|
|
],
|
|
"cmd-extra" : "-o StrictHostKeyChecking=no",
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"file" : "/etc/pgbackrest/pgbackrest.conf",
|
|
"host" : "repository",
|
|
"option" : {
|
|
"global" : {
|
|
"repo1-path" : {
|
|
"value" : "/var/lib/pgbackrest"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"type" : "cfg-pgbackrest",
|
|
"value" : {
|
|
"config" : [
|
|
"[global]",
|
|
"repo1-path=/var/lib/pgbackrest"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"file" : "/etc/pgbackrest/pgbackrest.conf",
|
|
"host" : "repository",
|
|
"option" : {
|
|
"demo" : {
|
|
"pg1-host" : {
|
|
"value" : "pg-primary"
|
|
},
|
|
"pg1-path" : {
|
|
"value" : "/var/lib/postgresql/12/demo"
|
|
}
|
|
},
|
|
"global" : {
|
|
"log-level-stderr" : {
|
|
"value" : "off"
|
|
},
|
|
"log-timestamp" : {
|
|
"value" : "n"
|
|
},
|
|
"repo1-retention-full" : {
|
|
"value" : "2"
|
|
},
|
|
"start-fast" : {
|
|
"value" : "y"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"type" : "cfg-pgbackrest",
|
|
"value" : {
|
|
"config" : [
|
|
"[demo]",
|
|
"pg1-host=pg-primary",
|
|
"pg1-path=/var/lib/postgresql/12/demo",
|
|
"",
|
|
"[global]",
|
|
"repo1-path=/var/lib/pgbackrest",
|
|
"repo1-retention-full=2",
|
|
"start-fast=y"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"file" : "/etc/pgbackrest/pgbackrest.conf",
|
|
"host" : "pg-primary",
|
|
"option" : {
|
|
"demo" : {
|
|
"pg1-path" : {
|
|
"value" : "/var/lib/postgresql/12/demo"
|
|
}
|
|
},
|
|
"global" : {
|
|
"log-level-file" : {
|
|
"value" : "detail"
|
|
},
|
|
"log-level-stderr" : {
|
|
"value" : "off"
|
|
},
|
|
"log-timestamp" : {
|
|
"value" : "n"
|
|
},
|
|
"repo1-host" : {
|
|
"value" : "repository"
|
|
}
|
|
}
|
|
},
|
|
"reset" : true
|
|
},
|
|
"type" : "cfg-pgbackrest",
|
|
"value" : {
|
|
"config" : [
|
|
"[demo]",
|
|
"pg1-path=/var/lib/postgresql/12/demo",
|
|
"",
|
|
"[global]",
|
|
"log-level-file=detail",
|
|
"repo1-host=repository"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u pgbackrest pgbackrest --stanza=demo stanza-create"
|
|
],
|
|
"host" : "repository",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres pgbackrest --stanza=demo check"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u pgbackrest pgbackrest --stanza=demo check"
|
|
],
|
|
"host" : "repository",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u pgbackrest pgbackrest --stanza=demo backup"
|
|
],
|
|
"host" : "repository",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
"P00 WARN: no prior backup exists, incr backup has been changed to full"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo pg_ctlcluster 12 demo stop"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres pgbackrest --stanza=demo --delta restore"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo pg_ctlcluster 12 demo start"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres sleep 2"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u pgbackrest pgbackrest --stanza=demo --type=full backup"
|
|
],
|
|
"host" : "repository",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"file" : "/etc/pgbackrest/pgbackrest.conf",
|
|
"host" : "repository",
|
|
"option" : {
|
|
"global" : {
|
|
"process-max" : {
|
|
"value" : "3"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"type" : "cfg-pgbackrest",
|
|
"value" : {
|
|
"config" : [
|
|
"[demo]",
|
|
"pg1-host=pg-primary",
|
|
"pg1-path=/var/lib/postgresql/12/demo",
|
|
"",
|
|
"[global]",
|
|
"process-max=3",
|
|
"repo1-path=/var/lib/pgbackrest",
|
|
"repo1-retention-full=2",
|
|
"start-fast=y"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u pgbackrest pgbackrest --stanza=demo --type=full backup"
|
|
],
|
|
"host" : "repository",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u pgbackrest pgbackrest info"
|
|
],
|
|
"highlight" : {
|
|
"filter" : false,
|
|
"filter-context" : 2,
|
|
"list" : [
|
|
"timestamp start/stop"
|
|
]
|
|
},
|
|
"host" : "repository",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
"stanza: demo",
|
|
" status: ok",
|
|
" cipher: none",
|
|
"",
|
|
" db (current)",
|
|
" wal archive min/max (12): 00000008000000000000001A/00000008000000000000001B",
|
|
"",
|
|
" full backup: 20211029-120743F",
|
|
" timestamp start/stop: 2021-10-29 12:07:43 / 2021-10-29 12:07:46",
|
|
" wal start/stop: 00000008000000000000001A / 00000008000000000000001A",
|
|
" database size: 31MB, database backup size: 31MB",
|
|
" repo1: backup set size: 3.7MB, backup size: 3.7MB",
|
|
"",
|
|
" full backup: 20211029-120748F",
|
|
" timestamp start/stop: 2021-10-29 12:07:48 / 2021-10-29 12:07:50",
|
|
" wal start/stop: 00000008000000000000001B / 00000008000000000000001B",
|
|
" database size: 31MB, database backup size: 31MB",
|
|
" repo1: backup set size: 3.7MB, backup size: 3.7MB"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres pgbackrest stop"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u pgbackrest pgbackrest --stanza=demo backup"
|
|
],
|
|
"err-expect" : "56",
|
|
"highlight" : {
|
|
"filter" : true,
|
|
"filter-context" : 2,
|
|
"list" : [
|
|
"\\: stop file exists for all stanzas"
|
|
]
|
|
},
|
|
"host" : "repository",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
"P00 WARN: unable to check pg-1: [StopError] raised from remote-0 ssh protocol on 'pg-primary': stop file exists for all stanzas",
|
|
"P00 ERROR: [056]: unable to find primary cluster - cannot proceed"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres pgbackrest stop"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
"P00 WARN: stop file already exists for all stanzas"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres pgbackrest start"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres pgbackrest --stanza=demo stop"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u pgbackrest pgbackrest --stanza=demo backup"
|
|
],
|
|
"err-expect" : "56",
|
|
"highlight" : {
|
|
"filter" : true,
|
|
"filter-context" : 2,
|
|
"list" : [
|
|
"\\: stop file exists for stanza demo"
|
|
]
|
|
},
|
|
"host" : "repository",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
"P00 WARN: unable to check pg-1: [StopError] raised from remote-0 ssh protocol on 'pg-primary': stop file exists for stanza demo",
|
|
"P00 ERROR: [056]: unable to find primary cluster - cannot proceed"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres pgbackrest --stanza=demo start"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"id" : "pg2",
|
|
"image" : "pgbackrest/doc:debian",
|
|
"name" : "pg-standby",
|
|
"option" : "-m 512m -v /sys/fs/cgroup:/sys/fs/cgroup:rw -v /tmp/$(mktemp -d):/run",
|
|
"os" : "debian",
|
|
"update-hosts" : true
|
|
},
|
|
"type" : "host",
|
|
"value" : {
|
|
"ip" : "172.17.0.7"
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo apt-get install postgresql-client libxml2"
|
|
],
|
|
"cmd-extra" : "-y 2>&1",
|
|
"host" : "pg-standby",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo scp build:/build/pgbackrest-release-2.36/src/pgbackrest /usr/bin"
|
|
],
|
|
"cmd-extra" : "2>&1",
|
|
"host" : "pg-standby",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo chmod 755 /usr/bin/pgbackrest"
|
|
],
|
|
"host" : "pg-standby",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo mkdir -p -m 770 /var/log/pgbackrest"
|
|
],
|
|
"host" : "pg-standby",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo chown postgres:postgres /var/log/pgbackrest"
|
|
],
|
|
"host" : "pg-standby",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo mkdir -p /etc/pgbackrest"
|
|
],
|
|
"host" : "pg-standby",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo mkdir -p /etc/pgbackrest/conf.d"
|
|
],
|
|
"host" : "pg-standby",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo touch /etc/pgbackrest/pgbackrest.conf"
|
|
],
|
|
"host" : "pg-standby",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo chmod 640 /etc/pgbackrest/pgbackrest.conf"
|
|
],
|
|
"host" : "pg-standby",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo chown postgres:postgres /etc/pgbackrest/pgbackrest.conf"
|
|
],
|
|
"host" : "pg-standby",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres mkdir -m 750 -p /var/lib/postgresql/.ssh"
|
|
],
|
|
"host" : "pg-standby",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres ssh-keygen -f /var/lib/postgresql/.ssh/id_rsa \\",
|
|
" -t rsa -b 4096 -N \"\""
|
|
],
|
|
"host" : "pg-standby",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"(echo -n 'no-agent-forwarding,no-X11-forwarding,no-port-forwarding,' && \\",
|
|
" echo -n 'command=\"/usr/bin/pgbackrest ${SSH_ORIGINAL_COMMAND#* }\" ' && \\",
|
|
" sudo ssh root@pg-standby cat /var/lib/postgresql/.ssh/id_rsa.pub) | \\",
|
|
" sudo -u pgbackrest tee -a /home/pgbackrest/.ssh/authorized_keys"
|
|
],
|
|
"host" : "repository",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : "root"
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"(echo -n 'no-agent-forwarding,no-X11-forwarding,no-port-forwarding,' && \\",
|
|
" echo -n 'command=\"/usr/bin/pgbackrest ${SSH_ORIGINAL_COMMAND#* }\" ' && \\",
|
|
" sudo ssh root@repository cat /home/pgbackrest/.ssh/id_rsa.pub) | \\",
|
|
" sudo -u postgres tee -a /var/lib/postgresql/.ssh/authorized_keys"
|
|
],
|
|
"host" : "pg-standby",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : "root"
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u pgbackrest ssh postgres@pg-standby"
|
|
],
|
|
"cmd-extra" : "-o StrictHostKeyChecking=no",
|
|
"host" : "repository",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres ssh pgbackrest@repository"
|
|
],
|
|
"cmd-extra" : "-o StrictHostKeyChecking=no",
|
|
"host" : "pg-standby",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"file" : "/etc/pgbackrest/pgbackrest.conf",
|
|
"host" : "pg-standby",
|
|
"option" : {
|
|
"demo" : {
|
|
"pg1-path" : {
|
|
"value" : "/var/lib/postgresql/12/demo"
|
|
}
|
|
},
|
|
"global" : {
|
|
"log-level-file" : {
|
|
"value" : "detail"
|
|
},
|
|
"log-level-stderr" : {
|
|
"value" : "off"
|
|
},
|
|
"log-timestamp" : {
|
|
"value" : "n"
|
|
},
|
|
"repo1-host" : {
|
|
"value" : "repository"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"type" : "cfg-pgbackrest",
|
|
"value" : {
|
|
"config" : [
|
|
"[demo]",
|
|
"pg1-path=/var/lib/postgresql/12/demo",
|
|
"",
|
|
"[global]",
|
|
"log-level-file=detail",
|
|
"repo1-host=repository"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo pg_createcluster 12 demo"
|
|
],
|
|
"host" : "pg-standby",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres pgbackrest --stanza=demo --delta --type=standby restore"
|
|
],
|
|
"host" : "pg-standby",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres cat /var/lib/postgresql/12/demo/postgresql.auto.conf"
|
|
],
|
|
"host" : "pg-standby",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
"# Do not edit this file manually!",
|
|
"# It will be overwritten by the ALTER SYSTEM command.",
|
|
"",
|
|
"# Recovery settings generated by pgBackRest restore on 2021-10-29 12:05:58",
|
|
"restore_command = 'pgbackrest --stanza=demo archive-get %f \"%p\"'",
|
|
"",
|
|
"# Recovery settings generated by pgBackRest restore on 2021-10-29 12:06:23",
|
|
"restore_command = 'pgbackrest --stanza=demo archive-get %f \"%p\"'",
|
|
"",
|
|
"# Recovery settings generated by pgBackRest restore on 2021-10-29 12:06:32",
|
|
"restore_command = 'pgbackrest --stanza=demo archive-get %f \"%p\"'",
|
|
"# Removed by pgBackRest restore on 2021-10-29 12:06:56 # recovery_target = 'immediate'",
|
|
"# Removed by pgBackRest restore on 2021-10-29 12:06:56 # recovery_target_action = 'promote'",
|
|
"",
|
|
"# Recovery settings generated by pgBackRest restore on 2021-10-29 12:06:56",
|
|
"restore_command = 'pgbackrest --stanza=demo archive-get %f \"%p\"'",
|
|
"# Removed by pgBackRest restore on 2021-10-29 12:07:38 # recovery_target_time = '2021-10-29 12:06:41.23673+00'",
|
|
"# Removed by pgBackRest restore on 2021-10-29 12:07:38 # recovery_target_action = 'promote'",
|
|
"",
|
|
"# Recovery settings generated by pgBackRest restore on 2021-10-29 12:07:38",
|
|
"restore_command = 'pgbackrest --stanza=demo archive-get %f \"%p\"'",
|
|
"",
|
|
"# Recovery settings generated by pgBackRest restore on 2021-10-29 12:08:01",
|
|
"restore_command = 'pgbackrest --stanza=demo archive-get %f \"%p\"'"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"echo 'shared_buffers = 16MB' >> /etc/postgresql/12/demo/postgresql.conf"
|
|
],
|
|
"host" : "pg-standby",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : "root"
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"file" : "/etc/postgresql/12/demo/postgresql.conf",
|
|
"host" : "pg-standby",
|
|
"option" : {
|
|
"archive_command" : {
|
|
"value" : "'pgbackrest --stanza=demo archive-push %p'"
|
|
},
|
|
"archive_mode" : {
|
|
"value" : "on"
|
|
},
|
|
"hot_standby" : {
|
|
"value" : "on"
|
|
},
|
|
"log_filename" : {
|
|
"value" : "'postgresql.log'"
|
|
},
|
|
"log_line_prefix" : {
|
|
"value" : "''"
|
|
},
|
|
"max_wal_senders" : {
|
|
"value" : "3"
|
|
},
|
|
"wal_level" : {
|
|
"value" : "replica"
|
|
}
|
|
}
|
|
},
|
|
"type" : "cfg-postgresql",
|
|
"value" : {
|
|
"config" : [
|
|
"archive_command = 'pgbackrest --stanza=demo archive-push %p'",
|
|
"archive_mode = on",
|
|
"hot_standby = on",
|
|
"log_filename = 'postgresql.log'",
|
|
"log_line_prefix = ''",
|
|
"max_wal_senders = 3",
|
|
"wal_level = replica"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo rm /var/log/postgresql/postgresql-12-demo.log"
|
|
],
|
|
"host" : "pg-standby",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo pg_ctlcluster 12 demo start"
|
|
],
|
|
"host" : "pg-standby",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres sleep 2"
|
|
],
|
|
"host" : "pg-standby",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres cat /var/log/postgresql/postgresql-12-demo.log"
|
|
],
|
|
"highlight" : {
|
|
"filter" : true,
|
|
"filter-context" : 2,
|
|
"list" : [
|
|
"entering standby mode|database system is ready to accept read only connections"
|
|
]
|
|
},
|
|
"host" : "pg-standby",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
" [filtered 4 lines of output]",
|
|
"LOG: listening on Unix socket \"/var/run/postgresql/.s.PGSQL.5432\"",
|
|
"LOG: database system was interrupted; last known up at 2021-10-29 12:07:48 UTC",
|
|
"LOG: entering standby mode",
|
|
"LOG: restored log file \"00000008.history\" from archive",
|
|
"LOG: restored log file \"00000008000000000000001B\" from archive",
|
|
"LOG: redo starts at 0/1B000028",
|
|
"LOG: consistent recovery state reached at 0/1B000100",
|
|
"LOG: database system is ready to accept read only connections"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres psql -c \" \\",
|
|
" begin; \\",
|
|
" create table replicated_table (message text); \\",
|
|
" insert into replicated_table values ('Important Data'); \\",
|
|
" commit; \\",
|
|
" select * from replicated_table\";"
|
|
],
|
|
"highlight" : {
|
|
"filter" : true,
|
|
"filter-context" : 2,
|
|
"list" : [
|
|
"Important Data"
|
|
]
|
|
},
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
" message ",
|
|
"----------------",
|
|
" Important Data",
|
|
"(1 row)"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres psql -c \"select * from replicated_table;\""
|
|
],
|
|
"err-expect" : "1",
|
|
"highlight" : {
|
|
"filter" : true,
|
|
"filter-context" : 2,
|
|
"list" : [
|
|
"does not exist"
|
|
]
|
|
},
|
|
"host" : "pg-standby",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
"ERROR: relation \"replicated_table\" does not exist",
|
|
"LINE 1: select * from replicated_table;",
|
|
" ^"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres psql -c \"select *, current_timestamp from pg_switch_wal()\";"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
" pg_switch_wal | current_timestamp ",
|
|
"---------------+-------------------------------",
|
|
" 0/1C021718 | 2021-10-29 12:08:07.549186+00",
|
|
"(1 row)"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres psql -c \" \\",
|
|
" select *, current_timestamp from replicated_table\""
|
|
],
|
|
"highlight" : {
|
|
"filter" : false,
|
|
"filter-context" : 2,
|
|
"list" : [
|
|
"Important Data"
|
|
]
|
|
},
|
|
"host" : "pg-standby",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
" message | current_timestamp ",
|
|
"----------------+-------------------------------",
|
|
" Important Data | 2021-10-29 12:08:08.414679+00",
|
|
"(1 row)"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres pgbackrest --stanza=demo --log-level-console=info check"
|
|
],
|
|
"highlight" : {
|
|
"filter" : true,
|
|
"filter-context" : 2,
|
|
"list" : [
|
|
"because this is a standby"
|
|
]
|
|
},
|
|
"host" : "pg-standby",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
"P00 INFO: check command begin 2.36: --exec-id=1417-21ffb037 --log-level-console=info --log-level-file=detail --log-level-stderr=off --no-log-timestamp --pg1-path=/var/lib/postgresql/12/demo --repo1-host=repository --stanza=demo",
|
|
"P00 INFO: check repo1 (standby)",
|
|
"P00 INFO: switch wal not performed because this is a standby",
|
|
"P00 INFO: check command end: completed successfully"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres psql -c \" \\",
|
|
" create user replicator password 'jw8s0F4' replication\";"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
"CREATE ROLE"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres sh -c 'echo \\",
|
|
" \"host replication replicator 172.17.0.7/32 md5\" \\",
|
|
" >> /etc/postgresql/12/demo/pg_hba.conf'"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo pg_ctlcluster 12 demo reload"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"file" : "/etc/pgbackrest/pgbackrest.conf",
|
|
"host" : "pg-standby",
|
|
"option" : {
|
|
"demo" : {
|
|
"recovery-option" : {
|
|
"value" : "primary_conninfo=host=172.17.0.5 port=5432 user=replicator"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"type" : "cfg-pgbackrest",
|
|
"value" : {
|
|
"config" : [
|
|
"[demo]",
|
|
"pg1-path=/var/lib/postgresql/12/demo",
|
|
"recovery-option=primary_conninfo=host=172.17.0.5 port=5432 user=replicator",
|
|
"",
|
|
"[global]",
|
|
"log-level-file=detail",
|
|
"repo1-host=repository"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres sh -c 'echo \\",
|
|
" \"172.17.0.5:*:replication:replicator:jw8s0F4\" \\",
|
|
" >> /var/lib/postgresql/.pgpass'"
|
|
],
|
|
"host" : "pg-standby",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres chmod 600 /var/lib/postgresql/.pgpass"
|
|
],
|
|
"host" : "pg-standby",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo pg_ctlcluster 12 demo stop"
|
|
],
|
|
"host" : "pg-standby",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres pgbackrest --stanza=demo --delta --type=standby restore"
|
|
],
|
|
"host" : "pg-standby",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres cat /var/lib/postgresql/12/demo/postgresql.auto.conf"
|
|
],
|
|
"host" : "pg-standby",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
"# Do not edit this file manually!",
|
|
"# It will be overwritten by the ALTER SYSTEM command.",
|
|
"",
|
|
"# Recovery settings generated by pgBackRest restore on 2021-10-29 12:05:58",
|
|
"restore_command = 'pgbackrest --stanza=demo archive-get %f \"%p\"'",
|
|
"",
|
|
"# Recovery settings generated by pgBackRest restore on 2021-10-29 12:06:23",
|
|
"restore_command = 'pgbackrest --stanza=demo archive-get %f \"%p\"'",
|
|
"",
|
|
"# Recovery settings generated by pgBackRest restore on 2021-10-29 12:06:32",
|
|
"restore_command = 'pgbackrest --stanza=demo archive-get %f \"%p\"'",
|
|
"# Removed by pgBackRest restore on 2021-10-29 12:06:56 # recovery_target = 'immediate'",
|
|
"# Removed by pgBackRest restore on 2021-10-29 12:06:56 # recovery_target_action = 'promote'",
|
|
"",
|
|
"# Recovery settings generated by pgBackRest restore on 2021-10-29 12:06:56",
|
|
"restore_command = 'pgbackrest --stanza=demo archive-get %f \"%p\"'",
|
|
"# Removed by pgBackRest restore on 2021-10-29 12:07:38 # recovery_target_time = '2021-10-29 12:06:41.23673+00'",
|
|
"# Removed by pgBackRest restore on 2021-10-29 12:07:38 # recovery_target_action = 'promote'",
|
|
"",
|
|
"# Recovery settings generated by pgBackRest restore on 2021-10-29 12:07:38",
|
|
"restore_command = 'pgbackrest --stanza=demo archive-get %f \"%p\"'",
|
|
"",
|
|
"# Recovery settings generated by pgBackRest restore on 2021-10-29 12:08:11",
|
|
"primary_conninfo = 'host=172.17.0.5 port=5432 user=replicator'",
|
|
"restore_command = 'pgbackrest --stanza=demo archive-get %f \"%p\"'"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo rm /var/log/postgresql/postgresql-12-demo.log"
|
|
],
|
|
"host" : "pg-standby",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo pg_ctlcluster 12 demo start"
|
|
],
|
|
"host" : "pg-standby",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres sleep 2"
|
|
],
|
|
"host" : "pg-standby",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres cat /var/log/postgresql/postgresql-12-demo.log"
|
|
],
|
|
"highlight" : {
|
|
"filter" : true,
|
|
"filter-context" : 2,
|
|
"list" : [
|
|
"started streaming WAL from primary"
|
|
]
|
|
},
|
|
"host" : "pg-standby",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
" [filtered 11 lines of output]",
|
|
"LOG: database system is ready to accept read only connections",
|
|
"LOG: restored log file \"00000008000000000000001C\" from archive",
|
|
"LOG: started streaming WAL from primary at 0/1D000000 on timeline 8"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres psql -c \" \\",
|
|
" begin; \\",
|
|
" create table stream_table (message text); \\",
|
|
" insert into stream_table values ('Important Data'); \\",
|
|
" commit; \\",
|
|
" select *, current_timestamp from stream_table\";"
|
|
],
|
|
"highlight" : {
|
|
"filter" : true,
|
|
"filter-context" : 2,
|
|
"list" : [
|
|
"Important Data"
|
|
]
|
|
},
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
" message | current_timestamp ",
|
|
"----------------+-------------------------------",
|
|
" Important Data | 2021-10-29 12:08:16.746025+00",
|
|
"(1 row)"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres psql -c \" \\",
|
|
" select *, current_timestamp from stream_table\""
|
|
],
|
|
"highlight" : {
|
|
"filter" : false,
|
|
"filter-context" : 2,
|
|
"list" : [
|
|
"Important Data"
|
|
]
|
|
},
|
|
"host" : "pg-standby",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
" message | current_timestamp ",
|
|
"----------------+------------------------------",
|
|
" Important Data | 2021-10-29 12:08:16.93526+00",
|
|
"(1 row)"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo mkdir -p -m 750 /var/spool/pgbackrest"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo chown postgres:postgres /var/spool/pgbackrest"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo mkdir -p -m 750 /var/spool/pgbackrest"
|
|
],
|
|
"host" : "pg-standby",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo chown postgres:postgres /var/spool/pgbackrest"
|
|
],
|
|
"host" : "pg-standby",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"file" : "/etc/pgbackrest/pgbackrest.conf",
|
|
"host" : "pg-primary",
|
|
"option" : {
|
|
"global" : {
|
|
"archive-async" : {
|
|
"value" : "y"
|
|
},
|
|
"spool-path" : {
|
|
"value" : "/var/spool/pgbackrest"
|
|
}
|
|
},
|
|
"global:archive-get" : {
|
|
"process-max" : {
|
|
"value" : "2"
|
|
}
|
|
},
|
|
"global:archive-push" : {
|
|
"process-max" : {
|
|
"value" : "2"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"type" : "cfg-pgbackrest",
|
|
"value" : {
|
|
"config" : [
|
|
"[demo]",
|
|
"pg1-path=/var/lib/postgresql/12/demo",
|
|
"",
|
|
"[global]",
|
|
"archive-async=y",
|
|
"log-level-file=detail",
|
|
"repo1-host=repository",
|
|
"spool-path=/var/spool/pgbackrest",
|
|
"",
|
|
"[global:archive-get]",
|
|
"process-max=2",
|
|
"",
|
|
"[global:archive-push]",
|
|
"process-max=2"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"file" : "/etc/pgbackrest/pgbackrest.conf",
|
|
"host" : "pg-standby",
|
|
"option" : {
|
|
"global" : {
|
|
"archive-async" : {
|
|
"value" : "y"
|
|
},
|
|
"spool-path" : {
|
|
"value" : "/var/spool/pgbackrest"
|
|
}
|
|
},
|
|
"global:archive-get" : {
|
|
"process-max" : {
|
|
"value" : "2"
|
|
}
|
|
},
|
|
"global:archive-push" : {
|
|
"process-max" : {
|
|
"value" : "2"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"type" : "cfg-pgbackrest",
|
|
"value" : {
|
|
"config" : [
|
|
"[demo]",
|
|
"pg1-path=/var/lib/postgresql/12/demo",
|
|
"recovery-option=primary_conninfo=host=172.17.0.5 port=5432 user=replicator",
|
|
"",
|
|
"[global]",
|
|
"archive-async=y",
|
|
"log-level-file=detail",
|
|
"repo1-host=repository",
|
|
"spool-path=/var/spool/pgbackrest",
|
|
"",
|
|
"[global:archive-get]",
|
|
"process-max=2",
|
|
"",
|
|
"[global:archive-push]",
|
|
"process-max=2"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres psql -c \"alter user replicator password 'bogus'\""
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
"ALTER ROLE"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo pg_ctlcluster 12 demo restart"
|
|
],
|
|
"host" : "pg-standby",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres rm -f /var/log/pgbackrest/demo-archive-push-async.log"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres psql -c \" \\",
|
|
" select pg_create_restore_point('test async push'); select pg_switch_wal(); \\",
|
|
" select pg_create_restore_point('test async push'); select pg_switch_wal(); \\",
|
|
" select pg_create_restore_point('test async push'); select pg_switch_wal(); \\",
|
|
" select pg_create_restore_point('test async push'); select pg_switch_wal(); \\",
|
|
" select pg_create_restore_point('test async push'); select pg_switch_wal();\""
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres pgbackrest --stanza=demo --log-level-console=info check"
|
|
],
|
|
"highlight" : {
|
|
"filter" : true,
|
|
"filter-context" : 2,
|
|
"list" : [
|
|
"WAL segment"
|
|
]
|
|
},
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
"P00 INFO: check command begin 2.36: --exec-id=3602-14941921 --log-level-console=info --log-level-file=detail --log-level-stderr=off --no-log-timestamp --pg1-path=/var/lib/postgresql/12/demo --repo1-host=repository --stanza=demo",
|
|
"P00 INFO: check repo1 configuration (primary)",
|
|
"P00 INFO: check repo1 archive for WAL (primary)",
|
|
"P00 INFO: WAL segment 000000080000000000000022 successfully archived to '/var/lib/pgbackrest/archive/demo/12-1/0000000800000000/000000080000000000000022-256032fd13a8e92807d2fbf916d91843a34c484f.gz' on repo1",
|
|
"P00 INFO: check command end: completed successfully"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres cat /var/log/pgbackrest/demo-archive-push-async.log"
|
|
],
|
|
"highlight" : {
|
|
"filter" : true,
|
|
"filter-context" : 2,
|
|
"list" : [
|
|
" WAL file\\(s\\) to archive|pushed WAL file \\'0000000"
|
|
]
|
|
},
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
"-------------------PROCESS START-------------------",
|
|
"P00 INFO: archive-push:async command begin 2.36: [/var/lib/postgresql/12/demo/pg_wal] --archive-async --exec-id=3587-0eaf57f4 --log-level-console=off --log-level-file=detail --log-level-stderr=off --no-log-timestamp --pg1-path=/var/lib/postgresql/12/demo --process-max=2 --repo1-host=repository --spool-path=/var/spool/pgbackrest --stanza=demo",
|
|
"P00 INFO: push 1 WAL file(s) to archive: 00000008000000000000001D",
|
|
"P01 DETAIL: pushed WAL file '00000008000000000000001D' to the archive",
|
|
"P00 INFO: archive-push:async command end: completed successfully",
|
|
"",
|
|
"-------------------PROCESS START-------------------",
|
|
"P00 INFO: archive-push:async command begin 2.36: [/var/lib/postgresql/12/demo/pg_wal] --archive-async --exec-id=3605-804d267f --log-level-console=off --log-level-file=detail --log-level-stderr=off --no-log-timestamp --pg1-path=/var/lib/postgresql/12/demo --process-max=2 --repo1-host=repository --spool-path=/var/spool/pgbackrest --stanza=demo",
|
|
"P00 INFO: push 4 WAL file(s) to archive: 00000008000000000000001E...000000080000000000000021",
|
|
"P01 DETAIL: pushed WAL file '00000008000000000000001E' to the archive",
|
|
"P02 DETAIL: pushed WAL file '00000008000000000000001F' to the archive",
|
|
"P02 DETAIL: pushed WAL file '000000080000000000000021' to the archive",
|
|
"P01 DETAIL: pushed WAL file '000000080000000000000020' to the archive",
|
|
"P00 INFO: archive-push:async command end: completed successfully",
|
|
"",
|
|
"-------------------PROCESS START-------------------",
|
|
"P00 INFO: archive-push:async command begin 2.36: [/var/lib/postgresql/12/demo/pg_wal] --archive-async --exec-id=3621-7c1ac38a --log-level-console=off --log-level-file=detail --log-level-stderr=off --no-log-timestamp --pg1-path=/var/lib/postgresql/12/demo --process-max=2 --repo1-host=repository --spool-path=/var/spool/pgbackrest --stanza=demo",
|
|
"P00 INFO: push 1 WAL file(s) to archive: 000000080000000000000022",
|
|
"P01 DETAIL: pushed WAL file '000000080000000000000022' to the archive",
|
|
"P00 INFO: archive-push:async command end: completed successfully"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres sleep 5"
|
|
],
|
|
"host" : "pg-standby",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres cat /var/log/pgbackrest/demo-archive-get-async.log"
|
|
],
|
|
"highlight" : {
|
|
"filter" : true,
|
|
"filter-context" : 2,
|
|
"list" : [
|
|
"found [0-F]{24} in the .* archive"
|
|
]
|
|
},
|
|
"host" : "pg-standby",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
"-------------------PROCESS START-------------------",
|
|
"P00 INFO: archive-get:async command begin 2.36: [00000008000000000000001B, 00000008000000000000001C, 00000008000000000000001D, 00000008000000000000001E, 00000008000000000000001F, 000000080000000000000020, 000000080000000000000021, 000000080000000000000022] --archive-async --exec-id=1652-36029fb1 --log-level-console=off --log-level-file=detail --log-level-stderr=off --no-log-timestamp --pg1-path=/var/lib/postgresql/12/demo --process-max=2 --repo1-host=repository --spool-path=/var/spool/pgbackrest --stanza=demo",
|
|
"P00 INFO: get 8 WAL file(s) from archive: 00000008000000000000001B...000000080000000000000022",
|
|
"P02 DETAIL: found 00000008000000000000001C in the repo1: 12-1 archive",
|
|
"P01 DETAIL: found 00000008000000000000001B in the repo1: 12-1 archive",
|
|
"P00 DETAIL: unable to find 00000008000000000000001D in the archive",
|
|
"P00 INFO: archive-get:async command end: completed successfully",
|
|
" [filtered 14 lines of output]",
|
|
"P00 INFO: archive-get:async command begin 2.36: [00000008000000000000001D, 00000008000000000000001E, 00000008000000000000001F, 000000080000000000000020, 000000080000000000000021, 000000080000000000000022, 000000080000000000000023, 000000080000000000000024] --archive-async --exec-id=1694-87354168 --log-level-console=off --log-level-file=detail --log-level-stderr=off --no-log-timestamp --pg1-path=/var/lib/postgresql/12/demo --process-max=2 --repo1-host=repository --spool-path=/var/spool/pgbackrest --stanza=demo",
|
|
"P00 INFO: get 8 WAL file(s) from archive: 00000008000000000000001D...000000080000000000000024",
|
|
"P02 DETAIL: found 00000008000000000000001E in the repo1: 12-1 archive",
|
|
"P02 DETAIL: found 00000008000000000000001F in the repo1: 12-1 archive",
|
|
"P01 DETAIL: found 00000008000000000000001D in the repo1: 12-1 archive",
|
|
"P02 DETAIL: found 000000080000000000000020 in the repo1: 12-1 archive",
|
|
"P01 DETAIL: found 000000080000000000000021 in the repo1: 12-1 archive",
|
|
"P02 DETAIL: found 000000080000000000000022 in the repo1: 12-1 archive",
|
|
"P00 DETAIL: unable to find 000000080000000000000023 in the archive",
|
|
"P00 INFO: archive-get:async command end: completed successfully",
|
|
" [filtered 11 lines of output]"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres psql -c \"alter user replicator password 'jw8s0F4'\""
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
"ALTER ROLE"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"file" : "/etc/pgbackrest/pgbackrest.conf",
|
|
"host" : "repository",
|
|
"option" : {
|
|
"demo" : {
|
|
"pg2-host" : {
|
|
"value" : "pg-standby"
|
|
},
|
|
"pg2-path" : {
|
|
"value" : "/var/lib/postgresql/12/demo"
|
|
}
|
|
},
|
|
"global" : {
|
|
"backup-standby" : {
|
|
"value" : "y"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"type" : "cfg-pgbackrest",
|
|
"value" : {
|
|
"config" : [
|
|
"[demo]",
|
|
"pg1-host=pg-primary",
|
|
"pg1-path=/var/lib/postgresql/12/demo",
|
|
"pg2-host=pg-standby",
|
|
"pg2-path=/var/lib/postgresql/12/demo",
|
|
"",
|
|
"[global]",
|
|
"backup-standby=y",
|
|
"process-max=3",
|
|
"repo1-path=/var/lib/pgbackrest",
|
|
"repo1-retention-full=2",
|
|
"start-fast=y"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u pgbackrest pgbackrest --stanza=demo --log-level-console=detail backup"
|
|
],
|
|
"highlight" : {
|
|
"filter" : true,
|
|
"filter-context" : 2,
|
|
"list" : [
|
|
"backup file pg-primary|replay on the standby"
|
|
]
|
|
},
|
|
"host" : "repository",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
" [filtered 2 lines of output]",
|
|
"P00 INFO: execute non-exclusive pg_start_backup(): backup begins after the requested immediate checkpoint completes",
|
|
"P00 INFO: backup start archive = 000000080000000000000024, lsn = 0/24000028",
|
|
"P00 INFO: wait for replay on the standby to reach 0/24000028",
|
|
"P00 INFO: replay on the standby reached 0/24000028",
|
|
"P02 DETAIL: backup file pg-standby:/var/lib/postgresql/12/demo/base/13398/2608 (456KB, 19%) checksum 8a1b4147f0cd9e6232ebcf971f34a1b726af93c5",
|
|
"P02 DETAIL: backup file pg-standby:/var/lib/postgresql/12/demo/base/13398/2673 (280KB, 31%) checksum 13cf784264de5d300e755082fe0d91be52847cb5",
|
|
" [filtered 14 lines of output]",
|
|
"P02 DETAIL: backup file pg-standby:/var/lib/postgresql/12/demo/base/13398/2679 (16KB, 62%) checksum 6405582b3965a1cc4cefa4d89a075bf392bfee62",
|
|
"P02 DETAIL: backup file pg-standby:/var/lib/postgresql/12/demo/base/13398/2678 (16KB, 63%) checksum f7c84518351ccdb7384c91142454a10665eb4985",
|
|
"P01 DETAIL: backup file pg-primary:/var/lib/postgresql/12/demo/global/pg_control (8KB, 63%) checksum 221cf7dcd1912b900bc386e092297f2b3e4b1068",
|
|
"P02 DETAIL: backup file pg-standby:/var/lib/postgresql/12/demo/pg_xact/0000 (8KB, 63%) checksum 32d68ad3e1925c9bfa1fff50781196c74861f1b3",
|
|
"P01 DETAIL: backup file pg-primary:/var/lib/postgresql/12/demo/pg_logical/replorigin_checkpoint (8B, 63%) checksum 347fc8f2df71bd4436e38bd1516ccd7ea0d46532",
|
|
"P03 DETAIL: backup file pg-standby:/var/lib/postgresql/12/demo/base/13398/1249 (440KB, 82%) checksum b7e359434670a0611273a3626a1feb0250243414",
|
|
"P04 DETAIL: backup file pg-standby:/var/lib/postgresql/12/demo/base/13398/2674 (344KB, 97%) checksum 28827539e9e6b01b680e50390c21331a0a5d0639",
|
|
" [filtered 1274 lines of output]"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo pg_ctlcluster 12 demo stop"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo pg_ctlcluster 12 demo stop"
|
|
],
|
|
"host" : "pg-standby",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres /usr/lib/postgresql/13/bin/initdb \\",
|
|
" -D /var/lib/postgresql/13/demo -k -A peer"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo pg_createcluster 13 demo"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres sh -c 'cd /var/lib/postgresql && \\",
|
|
" /usr/lib/postgresql/13/bin/pg_upgrade \\",
|
|
" --old-bindir=/usr/lib/postgresql/12/bin \\",
|
|
" --new-bindir=/usr/lib/postgresql/13/bin \\",
|
|
" --old-datadir=/var/lib/postgresql/12/demo \\",
|
|
" --new-datadir=/var/lib/postgresql/13/demo \\",
|
|
" --old-options=\" -c config_file=/etc/postgresql/12/demo/postgresql.conf\" \\",
|
|
" --new-options=\" -c config_file=/etc/postgresql/13/demo/postgresql.conf\"'"
|
|
],
|
|
"highlight" : {
|
|
"filter" : true,
|
|
"filter-context" : 2,
|
|
"list" : [
|
|
"Upgrade Complete"
|
|
]
|
|
},
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
" [filtered 66 lines of output]",
|
|
"Checking for extension updates ok",
|
|
"",
|
|
"Upgrade Complete",
|
|
"----------------",
|
|
"Optimizer statistics are not transferred by pg_upgrade so,",
|
|
" [filtered 4 lines of output]"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"file" : "/etc/postgresql/13/demo/postgresql.conf",
|
|
"host" : "pg-primary",
|
|
"option" : {
|
|
"archive_command" : {
|
|
"value" : "'pgbackrest --stanza=demo archive-push %p'"
|
|
},
|
|
"archive_mode" : {
|
|
"value" : "on"
|
|
},
|
|
"listen_addresses" : {
|
|
"value" : "'*'"
|
|
},
|
|
"log_line_prefix" : {
|
|
"value" : "''"
|
|
},
|
|
"max_wal_senders" : {
|
|
"value" : "3"
|
|
},
|
|
"port" : {
|
|
"value" : "5432"
|
|
},
|
|
"wal_level" : {
|
|
"value" : "replica"
|
|
}
|
|
}
|
|
},
|
|
"type" : "cfg-postgresql",
|
|
"value" : {
|
|
"config" : [
|
|
"archive_command = 'pgbackrest --stanza=demo archive-push %p'",
|
|
"archive_mode = on",
|
|
"listen_addresses = '*'",
|
|
"log_line_prefix = ''",
|
|
"max_wal_senders = 3",
|
|
"port = 5432",
|
|
"wal_level = replica"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"file" : "/etc/pgbackrest/pgbackrest.conf",
|
|
"host" : "pg-primary",
|
|
"option" : {
|
|
"demo" : {
|
|
"pg1-path" : {
|
|
"value" : "/var/lib/postgresql/13/demo"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"type" : "cfg-pgbackrest",
|
|
"value" : {
|
|
"config" : [
|
|
"[demo]",
|
|
"pg1-path=/var/lib/postgresql/13/demo",
|
|
"",
|
|
"[global]",
|
|
"archive-async=y",
|
|
"log-level-file=detail",
|
|
"repo1-host=repository",
|
|
"spool-path=/var/spool/pgbackrest",
|
|
"",
|
|
"[global:archive-get]",
|
|
"process-max=2",
|
|
"",
|
|
"[global:archive-push]",
|
|
"process-max=2"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"file" : "/etc/pgbackrest/pgbackrest.conf",
|
|
"host" : "pg-standby",
|
|
"option" : {
|
|
"demo" : {
|
|
"pg1-path" : {
|
|
"value" : "/var/lib/postgresql/13/demo"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"type" : "cfg-pgbackrest",
|
|
"value" : {
|
|
"config" : [
|
|
"[demo]",
|
|
"pg1-path=/var/lib/postgresql/13/demo",
|
|
"recovery-option=primary_conninfo=host=172.17.0.5 port=5432 user=replicator",
|
|
"",
|
|
"[global]",
|
|
"archive-async=y",
|
|
"log-level-file=detail",
|
|
"repo1-host=repository",
|
|
"spool-path=/var/spool/pgbackrest",
|
|
"",
|
|
"[global:archive-get]",
|
|
"process-max=2",
|
|
"",
|
|
"[global:archive-push]",
|
|
"process-max=2"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"file" : "/etc/pgbackrest/pgbackrest.conf",
|
|
"host" : "repository",
|
|
"option" : {
|
|
"demo" : {
|
|
"pg1-path" : {
|
|
"value" : "/var/lib/postgresql/13/demo"
|
|
},
|
|
"pg2-path" : {
|
|
"value" : "/var/lib/postgresql/13/demo"
|
|
}
|
|
},
|
|
"global" : {
|
|
"backup-standby" : {
|
|
"value" : "n"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"type" : "cfg-pgbackrest",
|
|
"value" : {
|
|
"config" : [
|
|
"[demo]",
|
|
"pg1-host=pg-primary",
|
|
"pg1-path=/var/lib/postgresql/13/demo",
|
|
"pg2-host=pg-standby",
|
|
"pg2-path=/var/lib/postgresql/13/demo",
|
|
"",
|
|
"[global]",
|
|
"backup-standby=n",
|
|
"process-max=3",
|
|
"repo1-path=/var/lib/pgbackrest",
|
|
"repo1-retention-full=2",
|
|
"start-fast=y"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo cp /etc/postgresql/12/demo/pg_hba.conf \\",
|
|
" /etc/postgresql/13/demo/pg_hba.conf"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres pgbackrest --stanza=demo --no-online \\",
|
|
" --log-level-console=info stanza-upgrade"
|
|
],
|
|
"highlight" : {
|
|
"filter" : true,
|
|
"filter-context" : 2,
|
|
"list" : [
|
|
"completed successfully"
|
|
]
|
|
},
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
"P00 INFO: stanza-upgrade command begin 2.36: --exec-id=4022-d6ee7d0e --log-level-console=info --log-level-file=detail --log-level-stderr=off --no-log-timestamp --no-online --pg1-path=/var/lib/postgresql/13/demo --repo1-host=repository --stanza=demo",
|
|
"P00 INFO: stanza-upgrade for stanza 'demo' on repo1",
|
|
"P00 INFO: stanza-upgrade command end: completed successfully"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo pg_ctlcluster 13 demo start"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres pg_lsclusters"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres pgbackrest --stanza=demo check"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo pg_dropcluster 12 demo"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo pg_dropcluster 12 demo"
|
|
],
|
|
"host" : "pg-standby",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo pg_createcluster 13 demo"
|
|
],
|
|
"host" : "pg-standby",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u pgbackrest pgbackrest --stanza=demo check"
|
|
],
|
|
"host" : "repository",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
"P00 WARN: unable to check pg-2: [DbConnectError] raised from remote-0 ssh protocol on 'pg-standby': unable to connect to 'dbname='postgres' port=5432': connection to server on socket \"/var/run/postgresql/.s.PGSQL.5432\" failed: No such file or directory",
|
|
" \tIs the server running locally and accepting connections on that socket?"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u pgbackrest pgbackrest --stanza=demo --type=full backup"
|
|
],
|
|
"host" : "repository",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres pgbackrest --stanza=demo --delta --type=standby restore"
|
|
],
|
|
"host" : "pg-standby",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"file" : "/etc/postgresql/13/demo/postgresql.conf",
|
|
"host" : "pg-standby",
|
|
"option" : {
|
|
"hot_standby" : {
|
|
"value" : "on"
|
|
}
|
|
}
|
|
},
|
|
"type" : "cfg-postgresql",
|
|
"value" : {
|
|
"config" : [
|
|
"hot_standby = on"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo pg_ctlcluster 13 demo start"
|
|
],
|
|
"host" : "pg-standby",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres sleep 2"
|
|
],
|
|
"host" : "pg-standby",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres pgbackrest --stanza=demo check"
|
|
],
|
|
"host" : "pg-standby",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"file" : "/etc/pgbackrest/pgbackrest.conf",
|
|
"host" : "repository",
|
|
"option" : {
|
|
"global" : {
|
|
"backup-standby" : {
|
|
"value" : "y"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"type" : "cfg-pgbackrest",
|
|
"value" : {
|
|
"config" : [
|
|
"[demo]",
|
|
"pg1-host=pg-primary",
|
|
"pg1-path=/var/lib/postgresql/13/demo",
|
|
"pg2-host=pg-standby",
|
|
"pg2-path=/var/lib/postgresql/13/demo",
|
|
"",
|
|
"[global]",
|
|
"backup-standby=y",
|
|
"process-max=3",
|
|
"repo1-path=/var/lib/pgbackrest",
|
|
"repo1-retention-full=2",
|
|
"start-fast=y"
|
|
]
|
|
}
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"{\"os-type\":\"rhel\"}" : {
|
|
"all" : {
|
|
"user-guide" : [
|
|
{
|
|
"key" : {
|
|
"id" : "azure",
|
|
"image" : "mcr.microsoft.com/azure-storage/azurite",
|
|
"name" : "azure-server",
|
|
"option" : "-m 128m -v {[host-repo-path]}/doc/resource/fake-cert/azure-server.crt:/root/public.crt:ro -v {[host-repo-path]}/doc/resource/fake-cert/azure-server.key:/root/private.key:ro -e AZURITE_ACCOUNTS='pgbackrest:YXpLZXk='",
|
|
"os" : "rhel",
|
|
"param" : "azurite-blob --blobPort 443 --blobHost 0.0.0.0 --cert=/root/public.crt --key=/root/private.key",
|
|
"update-hosts" : false
|
|
},
|
|
"type" : "host",
|
|
"value" : {
|
|
"ip" : "172.17.0.2"
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"id" : "s3",
|
|
"image" : "minio/minio",
|
|
"name" : "s3-server",
|
|
"option" : "-m 128m -v {[host-repo-path]}/doc/resource/fake-cert/s3-server.crt:/root/.minio/certs/public.crt:ro -v {[host-repo-path]}/doc/resource/fake-cert/s3-server.key:/root/.minio/certs/private.key:ro -e MINIO_REGION=us-east-1 -e MINIO_DOMAIN=s3.us-east-1.amazonaws.com -e MINIO_BROWSER=off -e MINIO_ACCESS_KEY=accessKey1 -e MINIO_SECRET_KEY=verySecretKey1",
|
|
"os" : "rhel",
|
|
"param" : "server /data --address :443",
|
|
"update-hosts" : false
|
|
},
|
|
"type" : "host",
|
|
"value" : {
|
|
"ip" : "172.17.0.3"
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"id" : "build",
|
|
"image" : "pgbackrest/doc:rhel",
|
|
"name" : "build",
|
|
"option" : "-m 256m -v /sys/fs/cgroup:/sys/fs/cgroup:rw -v /tmp/$(mktemp -d):/run",
|
|
"os" : "rhel",
|
|
"update-hosts" : true
|
|
},
|
|
"type" : "host",
|
|
"value" : {
|
|
"ip" : "172.17.0.4"
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo mkdir -p /build/pgbackrest-release-2.36"
|
|
],
|
|
"host" : "build",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo cp -r /pgbackrest/src /build/pgbackrest-release-2.36"
|
|
],
|
|
"host" : "build",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo chown -R vagrant /build/pgbackrest-release-2.36"
|
|
],
|
|
"host" : "build",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo yum install make gcc postgresql10-devel \\",
|
|
" openssl-devel libxml2-devel lz4-devel libzstd-devel bzip2-devel libyaml-devel"
|
|
],
|
|
"cmd-extra" : "-y 2>&1",
|
|
"host" : "build",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"cd /build/pgbackrest-release-2.36/src && ./configure && make"
|
|
],
|
|
"cmd-extra" : "-j 4",
|
|
"host" : "build",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"id" : "pg1",
|
|
"image" : "pgbackrest/doc:rhel",
|
|
"name" : "pg-primary",
|
|
"option" : "-m 512m -v /sys/fs/cgroup:/sys/fs/cgroup:rw -v /tmp/$(mktemp -d):/run",
|
|
"os" : "rhel",
|
|
"update-hosts" : true
|
|
},
|
|
"type" : "host",
|
|
"value" : {
|
|
"ip" : "172.17.0.5"
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo yum install postgresql-libs"
|
|
],
|
|
"cmd-extra" : "-y 2>&1",
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo scp build:/build/pgbackrest-release-2.36/src/pgbackrest /usr/bin"
|
|
],
|
|
"cmd-extra" : "2>&1",
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo chmod 755 /usr/bin/pgbackrest"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo mkdir -p -m 770 /var/log/pgbackrest"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo chown postgres:postgres /var/log/pgbackrest"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo mkdir -p /etc/pgbackrest"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo mkdir -p /etc/pgbackrest/conf.d"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo touch /etc/pgbackrest/pgbackrest.conf"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo chmod 640 /etc/pgbackrest/pgbackrest.conf"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo chown postgres:postgres /etc/pgbackrest/pgbackrest.conf"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres pgbackrest"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
"pgBackRest 2.36 - General help",
|
|
"",
|
|
"Usage:",
|
|
" pgbackrest [options] [command]",
|
|
"",
|
|
"Commands:",
|
|
" archive-get Get a WAL segment from the archive.",
|
|
" archive-push Push a WAL segment to the archive.",
|
|
" backup Backup a database cluster.",
|
|
" check Check the configuration.",
|
|
" expire Expire backups that exceed retention.",
|
|
" help Get help.",
|
|
" info Retrieve information about backups.",
|
|
" repo-get Get a file from a repository.",
|
|
" repo-ls List files in a repository.",
|
|
" restore Restore a database cluster.",
|
|
" stanza-create Create the required stanza data.",
|
|
" stanza-delete Delete a stanza.",
|
|
" stanza-upgrade Upgrade a stanza.",
|
|
" start Allow pgBackRest processes to run.",
|
|
" stop Stop pgBackRest processes from running.",
|
|
" version Get version.",
|
|
"",
|
|
"Use 'pgbackrest help [command]' for more information."
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres /usr/pgsql-10/bin/initdb \\",
|
|
" -D /var/lib/pgsql/10/data -k -A peer"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"echo 'shared_buffers = 16MB' >> /var/lib/pgsql/10/data/postgresql.conf"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : "root"
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"file" : "/var/lib/pgsql/10/data/postgresql.conf",
|
|
"host" : "pg-primary",
|
|
"option" : {
|
|
"listen_addresses" : {
|
|
"value" : "'*'"
|
|
}
|
|
}
|
|
},
|
|
"type" : "cfg-postgresql",
|
|
"value" : {
|
|
"config" : [
|
|
"listen_addresses = '*'"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"file" : "/var/lib/pgsql/10/data/postgresql.conf",
|
|
"host" : "pg-primary",
|
|
"option" : {
|
|
"log_line_prefix" : {
|
|
"value" : "''"
|
|
}
|
|
}
|
|
},
|
|
"type" : "cfg-postgresql",
|
|
"value" : {
|
|
"config" : [
|
|
"listen_addresses = '*'",
|
|
"log_line_prefix = ''"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"file" : "/var/lib/pgsql/10/data/postgresql.conf",
|
|
"host" : "pg-primary",
|
|
"option" : {
|
|
"log_filename" : {
|
|
"value" : "'postgresql.log'"
|
|
}
|
|
}
|
|
},
|
|
"type" : "cfg-postgresql",
|
|
"value" : {
|
|
"config" : [
|
|
"listen_addresses = '*'",
|
|
"log_filename = 'postgresql.log'",
|
|
"log_line_prefix = ''"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"file" : "/etc/pgbackrest/pgbackrest.conf",
|
|
"host" : "pg-primary",
|
|
"option" : {
|
|
"demo" : {
|
|
"pg1-path" : {
|
|
"value" : "/var/lib/pgsql/10/data"
|
|
}
|
|
},
|
|
"global" : {
|
|
"log-level-stderr" : {
|
|
"value" : "off"
|
|
},
|
|
"log-timestamp" : {
|
|
"value" : "n"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"type" : "cfg-pgbackrest",
|
|
"value" : {
|
|
"config" : [
|
|
"[demo]",
|
|
"pg1-path=/var/lib/pgsql/10/data"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres bash -c ' \\",
|
|
" export PGBACKREST_LOG_PATH=/path/set/by/env && \\",
|
|
" pgbackrest --log-level-console=error help backup log-path'"
|
|
],
|
|
"highlight" : {
|
|
"filter" : false,
|
|
"filter-context" : 2,
|
|
"list" : [
|
|
"current\\: \\/path\\/set\\/by\\/env"
|
|
]
|
|
},
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
"pgBackRest 2.36 - 'backup' command - 'log-path' option help",
|
|
"",
|
|
"Path where log files are stored.",
|
|
"",
|
|
"The log path provides a location for pgBackRest to store log files. Note that",
|
|
"if log-level-file=off then no log path is required.",
|
|
"",
|
|
"current: /path/set/by/env",
|
|
"default: /var/log/pgbackrest"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo mkdir -p /var/lib/pgbackrest"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo chmod 750 /var/lib/pgbackrest"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo chown postgres:postgres /var/lib/pgbackrest"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"file" : "/etc/pgbackrest/pgbackrest.conf",
|
|
"host" : "pg-primary",
|
|
"option" : {
|
|
"global" : {
|
|
"repo1-path" : {
|
|
"value" : "/var/lib/pgbackrest"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"type" : "cfg-pgbackrest",
|
|
"value" : {
|
|
"config" : [
|
|
"[demo]",
|
|
"pg1-path=/var/lib/pgsql/10/data",
|
|
"",
|
|
"[global]",
|
|
"repo1-path=/var/lib/pgbackrest"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"file" : "/var/lib/pgsql/10/data/postgresql.conf",
|
|
"host" : "pg-primary",
|
|
"option" : {
|
|
"archive_command" : {
|
|
"value" : "'pgbackrest --stanza=demo archive-push %p'"
|
|
},
|
|
"archive_mode" : {
|
|
"value" : "on"
|
|
},
|
|
"max_wal_senders" : {
|
|
"value" : "3"
|
|
},
|
|
"wal_level" : {
|
|
"value" : "replica"
|
|
}
|
|
}
|
|
},
|
|
"type" : "cfg-postgresql",
|
|
"value" : {
|
|
"config" : [
|
|
"archive_command = 'pgbackrest --stanza=demo archive-push %p'",
|
|
"archive_mode = on",
|
|
"listen_addresses = '*'",
|
|
"log_filename = 'postgresql.log'",
|
|
"log_line_prefix = ''",
|
|
"max_wal_senders = 3",
|
|
"wal_level = replica"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo systemctl restart postgresql-10.service"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres sleep 2"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"file" : "/etc/pgbackrest/pgbackrest.conf",
|
|
"host" : "pg-primary",
|
|
"option" : {
|
|
"global:archive-push" : {
|
|
"compress-level" : {
|
|
"value" : "3"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"type" : "cfg-pgbackrest",
|
|
"value" : {
|
|
"config" : [
|
|
"[demo]",
|
|
"pg1-path=/var/lib/pgsql/10/data",
|
|
"",
|
|
"[global]",
|
|
"repo1-path=/var/lib/pgbackrest",
|
|
"",
|
|
"[global:archive-push]",
|
|
"compress-level=3"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"file" : "/etc/pgbackrest/pgbackrest.conf",
|
|
"host" : "pg-primary",
|
|
"option" : {
|
|
"global" : {
|
|
"repo1-retention-full" : {
|
|
"value" : "2"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"type" : "cfg-pgbackrest",
|
|
"value" : {
|
|
"config" : [
|
|
"[demo]",
|
|
"pg1-path=/var/lib/pgsql/10/data",
|
|
"",
|
|
"[global]",
|
|
"repo1-path=/var/lib/pgbackrest",
|
|
"repo1-retention-full=2",
|
|
"",
|
|
"[global:archive-push]",
|
|
"compress-level=3"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"file" : "/etc/pgbackrest/pgbackrest.conf",
|
|
"host" : "pg-primary",
|
|
"option" : {
|
|
"global" : {
|
|
"repo1-cipher-pass" : {
|
|
"value" : "zWaf6XtpjIVZC5444yXB+cgFDFl7MxGlgkZSaoPvTGirhPygu4jOKOXf9LO4vjfO"
|
|
},
|
|
"repo1-cipher-type" : {
|
|
"value" : "aes-256-cbc"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"type" : "cfg-pgbackrest",
|
|
"value" : {
|
|
"config" : [
|
|
"[demo]",
|
|
"pg1-path=/var/lib/pgsql/10/data",
|
|
"",
|
|
"[global]",
|
|
"repo1-cipher-pass=zWaf6XtpjIVZC5444yXB+cgFDFl7MxGlgkZSaoPvTGirhPygu4jOKOXf9LO4vjfO",
|
|
"repo1-cipher-type=aes-256-cbc",
|
|
"repo1-path=/var/lib/pgbackrest",
|
|
"repo1-retention-full=2",
|
|
"",
|
|
"[global:archive-push]",
|
|
"compress-level=3"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres pgbackrest --stanza=demo --log-level-console=info stanza-create"
|
|
],
|
|
"highlight" : {
|
|
"filter" : true,
|
|
"filter-context" : 2,
|
|
"list" : [
|
|
"completed successfully"
|
|
]
|
|
},
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
"P00 INFO: stanza-create command begin 2.36: --exec-id=1109-84785859 --log-level-console=info --log-level-stderr=off --no-log-timestamp --pg1-path=/var/lib/pgsql/10/data --repo1-cipher-pass=<redacted> --repo1-cipher-type=aes-256-cbc --repo1-path=/var/lib/pgbackrest --stanza=demo",
|
|
"P00 INFO: stanza-create for stanza 'demo' on repo1",
|
|
"P00 INFO: stanza-create command end: completed successfully"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres pgbackrest --stanza=demo --log-level-console=info check"
|
|
],
|
|
"highlight" : {
|
|
"filter" : true,
|
|
"filter-context" : 2,
|
|
"list" : [
|
|
" successfully archived to "
|
|
]
|
|
},
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
"P00 INFO: check command begin 2.36: --exec-id=1137-2618f7c4 --log-level-console=info --log-level-stderr=off --no-log-timestamp --pg1-path=/var/lib/pgsql/10/data --repo1-cipher-pass=<redacted> --repo1-cipher-type=aes-256-cbc --repo1-path=/var/lib/pgbackrest --stanza=demo",
|
|
"P00 INFO: check repo1 configuration (primary)",
|
|
"P00 INFO: check repo1 archive for WAL (primary)",
|
|
"P00 INFO: WAL segment 000000010000000000000001 successfully archived to '/var/lib/pgbackrest/archive/demo/10-1/0000000100000000/000000010000000000000001-78f9ebc180866af7d545351607e6c396464f0713.gz' on repo1",
|
|
"P00 INFO: check command end: completed successfully"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"file" : "/etc/pgbackrest/pgbackrest.conf",
|
|
"host" : "pg-primary",
|
|
"option" : {
|
|
"global" : {
|
|
"start-fast" : {
|
|
"value" : "y"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"type" : "cfg-pgbackrest",
|
|
"value" : {
|
|
"config" : [
|
|
"[demo]",
|
|
"pg1-path=/var/lib/pgsql/10/data",
|
|
"",
|
|
"[global]",
|
|
"repo1-cipher-pass=zWaf6XtpjIVZC5444yXB+cgFDFl7MxGlgkZSaoPvTGirhPygu4jOKOXf9LO4vjfO",
|
|
"repo1-cipher-type=aes-256-cbc",
|
|
"repo1-path=/var/lib/pgbackrest",
|
|
"repo1-retention-full=2",
|
|
"start-fast=y",
|
|
"",
|
|
"[global:archive-push]",
|
|
"compress-level=3"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres pgbackrest --stanza=demo \\",
|
|
" --log-level-console=info backup"
|
|
],
|
|
"highlight" : {
|
|
"filter" : true,
|
|
"filter-context" : 2,
|
|
"list" : [
|
|
"no prior backup exists|full backup size"
|
|
]
|
|
},
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
"P00 INFO: backup command begin 2.36: --exec-id=1209-d88fd5f8 --log-level-console=info --log-level-stderr=off --no-log-timestamp --pg1-path=/var/lib/pgsql/10/data --repo1-cipher-pass=<redacted> --repo1-cipher-type=aes-256-cbc --repo1-path=/var/lib/pgbackrest --repo1-retention-full=2 --stanza=demo --start-fast",
|
|
"P00 WARN: no prior backup exists, incr backup has been changed to full",
|
|
"P00 INFO: execute non-exclusive pg_start_backup(): backup begins after the requested immediate checkpoint completes",
|
|
"P00 INFO: backup start archive = 000000010000000000000002, lsn = 0/2000028",
|
|
" [filtered 2 lines of output]",
|
|
"P00 INFO: check archive for segment(s) 000000010000000000000002:000000010000000000000002",
|
|
"P00 INFO: new backup label = 20211029-120144F",
|
|
"P00 INFO: full backup size = 22.5MB, file total = 949",
|
|
"P00 INFO: backup command end: completed successfully",
|
|
"P00 INFO: expire command begin 2.36: --exec-id=1209-d88fd5f8 --log-level-console=info --log-level-stderr=off --no-log-timestamp --repo1-cipher-pass=<redacted> --repo1-cipher-type=aes-256-cbc --repo1-path=/var/lib/pgbackrest --repo1-retention-full=2 --stanza=demo"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres pgbackrest repo-ls backup/demo --filter=\"(F|D|I)$\" --sort=desc | head -1"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
"20211029-120144F"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres pgbackrest --stanza=demo --type=diff \\",
|
|
" --log-level-console=info backup"
|
|
],
|
|
"highlight" : {
|
|
"filter" : true,
|
|
"filter-context" : 2,
|
|
"list" : [
|
|
"diff backup size"
|
|
]
|
|
},
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
" [filtered 6 lines of output]",
|
|
"P00 INFO: check archive for segment(s) 000000010000000000000003:000000010000000000000003",
|
|
"P00 INFO: new backup label = 20211029-120144F_20211029-120148D",
|
|
"P00 INFO: diff backup size = 8KB, file total = 949",
|
|
"P00 INFO: backup command end: completed successfully",
|
|
"P00 INFO: expire command begin 2.36: --exec-id=1282-04b54640 --log-level-console=info --log-level-stderr=off --no-log-timestamp --repo1-cipher-pass=<redacted> --repo1-cipher-type=aes-256-cbc --repo1-path=/var/lib/pgbackrest --repo1-retention-full=2 --stanza=demo"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres pgbackrest info"
|
|
],
|
|
"highlight" : {
|
|
"filter" : false,
|
|
"filter-context" : 2,
|
|
"list" : [
|
|
"(full|incr|diff) backup"
|
|
]
|
|
},
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
"stanza: demo",
|
|
" status: ok",
|
|
" cipher: aes-256-cbc",
|
|
"",
|
|
" db (current)",
|
|
" wal archive min/max (10): 000000010000000000000001/000000010000000000000003",
|
|
"",
|
|
" full backup: 20211029-120144F",
|
|
" timestamp start/stop: 2021-10-29 12:01:44 / 2021-10-29 12:01:47",
|
|
" wal start/stop: 000000010000000000000002 / 000000010000000000000002",
|
|
" database size: 22.5MB, database backup size: 22.5MB",
|
|
" repo1: backup set size: 2.7MB, backup size: 2.7MB",
|
|
"",
|
|
" diff backup: 20211029-120144F_20211029-120148D",
|
|
" timestamp start/stop: 2021-10-29 12:01:48 / 2021-10-29 12:01:49",
|
|
" wal start/stop: 000000010000000000000003 / 000000010000000000000003",
|
|
" database size: 22.5MB, database backup size: 8.2KB",
|
|
" repo1: backup set size: 2.7MB, backup size: 496B",
|
|
" backup reference list: 20211029-120144F"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo systemctl stop postgresql-10.service"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres rm /var/lib/pgsql/10/data/global/pg_control"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo systemctl start postgresql-10.service"
|
|
],
|
|
"err-expect" : "1",
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo systemctl status postgresql-10.service"
|
|
],
|
|
"err-expect" : "3",
|
|
"highlight" : {
|
|
"filter" : true,
|
|
"filter-context" : 2,
|
|
"list" : [
|
|
"Failed to start PostgreSQL"
|
|
]
|
|
},
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
" [filtered 12 lines of output]",
|
|
"Oct 29 12:01:50 pg-primary systemd[1]: postgresql-10.service: Main process exited, code=exited, status=2/INVALIDARGUMENT",
|
|
"Oct 29 12:01:50 pg-primary systemd[1]: postgresql-10.service: Failed with result 'exit-code'.",
|
|
"Oct 29 12:01:50 pg-primary systemd[1]: Failed to start PostgreSQL 10 database server."
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres find /var/lib/pgsql/10/data -mindepth 1 -delete"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres pgbackrest --stanza=demo restore"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo systemctl start postgresql-10.service"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres sleep 2"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres mkdir -p /var/lib/pgsql/pgbackrest/doc/example"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres cp -r /pgbackrest/doc/example/* \\",
|
|
" /var/lib/pgsql/pgbackrest/doc/example"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres cat \\",
|
|
" /var/lib/pgsql/pgbackrest/doc/example/pgsql-pgbackrest-info.sql"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
"-- An example of monitoring pgBackRest from within PostgreSQL",
|
|
"--",
|
|
"-- Use copy to export data from the pgBackRest info command into the jsonb",
|
|
"-- type so it can be queried directly by PostgreSQL.",
|
|
"",
|
|
"-- Create monitor schema",
|
|
"create schema monitor;",
|
|
"",
|
|
"-- Get pgBackRest info in JSON format",
|
|
"create function monitor.pgbackrest_info()",
|
|
" returns jsonb AS $$",
|
|
"declare",
|
|
" data jsonb;",
|
|
"begin",
|
|
" -- Create a temp table to hold the JSON data",
|
|
" create temp table temp_pgbackrest_data (data jsonb);",
|
|
"",
|
|
" -- Copy data into the table directly from the pgBackRest info command",
|
|
" copy temp_pgbackrest_data (data)",
|
|
" from program",
|
|
" 'pgbackrest --output=json info' (format text);",
|
|
"",
|
|
" select temp_pgbackrest_data.data",
|
|
" into data",
|
|
" from temp_pgbackrest_data;",
|
|
"",
|
|
" drop table temp_pgbackrest_data;",
|
|
"",
|
|
" return data;",
|
|
"end $$ language plpgsql;"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres psql -f \\",
|
|
" /var/lib/pgsql/pgbackrest/doc/example/pgsql-pgbackrest-info.sql"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres cat \\",
|
|
" /var/lib/pgsql/pgbackrest/doc/example/pgsql-pgbackrest-query.sql"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
"-- Get last successful backup for each stanza",
|
|
"--",
|
|
"-- Requires the monitor.pgbackrest_info function.",
|
|
"with stanza as",
|
|
"(",
|
|
" select data->'name' as name,",
|
|
" data->'backup'->(",
|
|
" jsonb_array_length(data->'backup') - 1) as last_backup,",
|
|
" data->'archive'->(",
|
|
" jsonb_array_length(data->'archive') - 1) as current_archive",
|
|
" from jsonb_array_elements(monitor.pgbackrest_info()) as data",
|
|
")",
|
|
"select name,",
|
|
" to_timestamp(",
|
|
" (last_backup->'timestamp'->>'stop')::numeric) as last_successful_backup,",
|
|
" current_archive->>'max' as last_archived_wal",
|
|
" from stanza;"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres psql -f \\",
|
|
" /var/lib/pgsql/pgbackrest/doc/example/pgsql-pgbackrest-query.sql"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
" name | last_successful_backup | last_archived_wal ",
|
|
"--------+------------------------+--------------------------",
|
|
" \"demo\" | 2021-10-29 12:01:49+00 | 000000010000000000000003",
|
|
"(1 row)"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"file" : "/etc/pgbackrest/pgbackrest.conf",
|
|
"host" : "pg-primary",
|
|
"option" : {
|
|
"global" : {
|
|
"repo1-retention-full" : {
|
|
"value" : "2"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"type" : "cfg-pgbackrest",
|
|
"value" : {
|
|
"config" : [
|
|
"[demo]",
|
|
"pg1-path=/var/lib/pgsql/10/data",
|
|
"",
|
|
"[global]",
|
|
"repo1-cipher-pass=zWaf6XtpjIVZC5444yXB+cgFDFl7MxGlgkZSaoPvTGirhPygu4jOKOXf9LO4vjfO",
|
|
"repo1-cipher-type=aes-256-cbc",
|
|
"repo1-path=/var/lib/pgbackrest",
|
|
"repo1-retention-full=2",
|
|
"start-fast=y",
|
|
"",
|
|
"[global:archive-push]",
|
|
"compress-level=3"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres pgbackrest --stanza=demo --type=full \\",
|
|
" --log-level-console=detail backup"
|
|
],
|
|
"highlight" : {
|
|
"filter" : true,
|
|
"filter-context" : 2,
|
|
"list" : [
|
|
"archive retention on backup 20211029-120144F|remove archive"
|
|
]
|
|
},
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
" [filtered 957 lines of output]",
|
|
"P00 INFO: backup command end: completed successfully",
|
|
"P00 INFO: expire command begin 2.36: --exec-id=1839-0cd4fa17 --log-level-console=detail --log-level-stderr=off --no-log-timestamp --repo1-cipher-pass=<redacted> --repo1-cipher-type=aes-256-cbc --repo1-path=/var/lib/pgbackrest --repo1-retention-full=2 --stanza=demo",
|
|
"P00 DETAIL: repo1: 10-1 archive retention on backup 20211029-120144F, start = 000000010000000000000002",
|
|
"P00 INFO: repo1: 10-1 remove archive, start = 000000010000000000000001, stop = 000000010000000000000001",
|
|
"P00 INFO: expire command end: completed successfully"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres pgbackrest repo-ls backup/demo --filter=\"(F|D|I)$\" --sort=desc | head -1"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
"20211029-120155F"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres pgbackrest --stanza=demo --type=full \\",
|
|
" --log-level-console=info backup"
|
|
],
|
|
"highlight" : {
|
|
"filter" : true,
|
|
"filter-context" : 2,
|
|
"list" : [
|
|
"expire full backup set 20211029-120144F|archive retention on backup 20211029-120155F|remove archive"
|
|
]
|
|
},
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
" [filtered 8 lines of output]",
|
|
"P00 INFO: backup command end: completed successfully",
|
|
"P00 INFO: expire command begin 2.36: --exec-id=1914-8d3f4587 --log-level-console=info --log-level-stderr=off --no-log-timestamp --repo1-cipher-pass=<redacted> --repo1-cipher-type=aes-256-cbc --repo1-path=/var/lib/pgbackrest --repo1-retention-full=2 --stanza=demo",
|
|
"P00 INFO: repo1: expire full backup set 20211029-120144F, 20211029-120144F_20211029-120148D",
|
|
"P00 INFO: repo1: remove expired backup 20211029-120144F_20211029-120148D",
|
|
"P00 INFO: repo1: remove expired backup 20211029-120144F",
|
|
"P00 INFO: repo1: 10-1 remove archive, start = 0000000100000000, stop = 000000020000000000000004",
|
|
"P00 INFO: expire command end: completed successfully"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"file" : "/etc/pgbackrest/pgbackrest.conf",
|
|
"host" : "pg-primary",
|
|
"option" : {
|
|
"global" : {
|
|
"repo1-retention-diff" : {
|
|
"value" : "1"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"type" : "cfg-pgbackrest",
|
|
"value" : {
|
|
"config" : [
|
|
"[demo]",
|
|
"pg1-path=/var/lib/pgsql/10/data",
|
|
"",
|
|
"[global]",
|
|
"repo1-cipher-pass=zWaf6XtpjIVZC5444yXB+cgFDFl7MxGlgkZSaoPvTGirhPygu4jOKOXf9LO4vjfO",
|
|
"repo1-cipher-type=aes-256-cbc",
|
|
"repo1-path=/var/lib/pgbackrest",
|
|
"repo1-retention-diff=1",
|
|
"repo1-retention-full=2",
|
|
"start-fast=y",
|
|
"",
|
|
"[global:archive-push]",
|
|
"compress-level=3"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres pgbackrest --stanza=demo --type=diff backup"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres pgbackrest repo-ls backup/demo --filter=\"(F|D|I)$\" --sort=desc | head -1"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
"20211029-120159F_20211029-120202D"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres pgbackrest --stanza=demo --type=incr backup"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres pgbackrest --stanza=demo --type=diff \\",
|
|
" --log-level-console=info backup"
|
|
],
|
|
"highlight" : {
|
|
"filter" : true,
|
|
"filter-context" : 2,
|
|
"list" : [
|
|
"expire diff backup set 20211029-120159F_20211029-120202D"
|
|
]
|
|
},
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
" [filtered 9 lines of output]",
|
|
"P00 INFO: backup command end: completed successfully",
|
|
"P00 INFO: expire command begin 2.36: --exec-id=2101-7780704c --log-level-console=info --log-level-stderr=off --no-log-timestamp --repo1-cipher-pass=<redacted> --repo1-cipher-type=aes-256-cbc --repo1-path=/var/lib/pgbackrest --repo1-retention-diff=1 --repo1-retention-full=2 --stanza=demo",
|
|
"P00 INFO: repo1: expire diff backup set 20211029-120159F_20211029-120202D, 20211029-120159F_20211029-120204I",
|
|
"P00 INFO: repo1: remove expired backup 20211029-120159F_20211029-120204I",
|
|
"P00 INFO: repo1: remove expired backup 20211029-120159F_20211029-120202D",
|
|
"P00 INFO: expire command end: completed successfully"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"file" : "/etc/pgbackrest/pgbackrest.conf",
|
|
"host" : "pg-primary",
|
|
"option" : {
|
|
"global" : {
|
|
"repo1-retention-diff" : {
|
|
"value" : "2"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"type" : "cfg-pgbackrest",
|
|
"value" : {
|
|
"config" : [
|
|
"[demo]",
|
|
"pg1-path=/var/lib/pgsql/10/data",
|
|
"",
|
|
"[global]",
|
|
"repo1-cipher-pass=zWaf6XtpjIVZC5444yXB+cgFDFl7MxGlgkZSaoPvTGirhPygu4jOKOXf9LO4vjfO",
|
|
"repo1-cipher-type=aes-256-cbc",
|
|
"repo1-path=/var/lib/pgbackrest",
|
|
"repo1-retention-diff=2",
|
|
"repo1-retention-full=2",
|
|
"start-fast=y",
|
|
"",
|
|
"[global:archive-push]",
|
|
"compress-level=3"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres pgbackrest repo-ls backup/demo --filter=\"(F|D|I)$\" --sort=desc | head -1"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
"20211029-120159F_20211029-120207D"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres psql -c \" \\",
|
|
" select pg_create_restore_point('generate WAL'); select pg_switch_wal(); \\",
|
|
" select pg_create_restore_point('generate WAL'); select pg_switch_wal();\""
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres pgbackrest --stanza=demo --type=diff \\",
|
|
" --log-level-console=info backup"
|
|
],
|
|
"highlight" : {
|
|
"filter" : true,
|
|
"filter-context" : 2,
|
|
"list" : [
|
|
"new backup label"
|
|
]
|
|
},
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
" [filtered 5 lines of output]",
|
|
"P00 INFO: backup stop archive = 00000002000000000000000D, lsn = 0/D0000F8",
|
|
"P00 INFO: check archive for segment(s) 00000002000000000000000D:00000002000000000000000D",
|
|
"P00 INFO: new backup label = 20211029-120159F_20211029-120210D",
|
|
"P00 INFO: diff backup size = 9.2KB, file total = 949",
|
|
"P00 INFO: backup command end: completed successfully",
|
|
" [filtered 2 lines of output]"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres pgbackrest repo-ls backup/demo --filter=\"(F|D|I)$\" --sort=desc | head -1"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
"20211029-120159F_20211029-120210D"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres pgbackrest --stanza=demo --log-level-console=detail \\",
|
|
" --repo1-retention-archive-type=diff --repo1-retention-archive=1 expire"
|
|
],
|
|
"highlight" : {
|
|
"filter" : true,
|
|
"filter-context" : 2,
|
|
"list" : [
|
|
"archive retention on backup 20211029-120159F_20211029-120207D|remove archive"
|
|
]
|
|
},
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
"P00 INFO: expire command begin 2.36: --exec-id=2333-931c5882 --log-level-console=detail --log-level-stderr=off --no-log-timestamp --repo1-cipher-pass=<redacted> --repo1-cipher-type=aes-256-cbc --repo1-path=/var/lib/pgbackrest --repo1-retention-archive=1 --repo1-retention-archive-type=diff --repo1-retention-diff=2 --repo1-retention-full=2 --stanza=demo",
|
|
"P00 DETAIL: repo1: 10-1 archive retention on backup 20211029-120155F, start = 000000020000000000000005, stop = 000000020000000000000005",
|
|
"P00 DETAIL: repo1: 10-1 archive retention on backup 20211029-120159F, start = 000000020000000000000006, stop = 000000020000000000000006",
|
|
"P00 DETAIL: repo1: 10-1 archive retention on backup 20211029-120159F_20211029-120207D, start = 00000002000000000000000A, stop = 00000002000000000000000A",
|
|
"P00 DETAIL: repo1: 10-1 archive retention on backup 20211029-120159F_20211029-120210D, start = 00000002000000000000000D",
|
|
"P00 INFO: repo1: 10-1 remove archive, start = 000000020000000000000007, stop = 000000020000000000000009",
|
|
"P00 INFO: repo1: 10-1 remove archive, start = 00000002000000000000000B, stop = 00000002000000000000000C",
|
|
"P00 INFO: expire command end: completed successfully"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo systemctl stop postgresql-10.service"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres pgbackrest --stanza=demo --delta \\",
|
|
" --log-level-console=detail restore"
|
|
],
|
|
"highlight" : {
|
|
"filter" : true,
|
|
"filter-context" : 2,
|
|
"list" : [
|
|
"demo\\/PG_VERSION - exists and matches backup|remove invalid files|rename global\\/pg_control"
|
|
]
|
|
},
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
" [filtered 2 lines of output]",
|
|
"P00 DETAIL: check '/var/lib/pgsql/10/data' exists",
|
|
"P00 DETAIL: remove 'global/pg_control' so cluster will not start if restore does not complete",
|
|
"P00 INFO: remove invalid files/links/paths from '/var/lib/pgsql/10/data'",
|
|
"P00 DETAIL: remove invalid file '/var/lib/pgsql/10/data/backup_label.old'",
|
|
"P00 DETAIL: remove invalid file '/var/lib/pgsql/10/data/base/13017/pg_internal.init'",
|
|
" [filtered 998 lines of output]"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo systemctl start postgresql-10.service"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres sleep 2"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres psql -c \"create database test1;\""
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
"CREATE DATABASE"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres psql -c \"create database test2;\""
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
"CREATE DATABASE"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres psql -c \"create table test1_table (id int); \\",
|
|
" insert into test1_table (id) values (1);\" test1"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
"INSERT 0 1"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres psql -c \"create table test2_table (id int); \\",
|
|
" insert into test2_table (id) values (2);\" test2"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
"INSERT 0 1"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres pgbackrest --stanza=demo --type=incr backup"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres psql -Atc \"select oid from pg_database where datname = 'test1'\""
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
"24576"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres du -sh /var/lib/pgsql/10/data/base/24576"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
"7.5M\t/var/lib/pgsql/10/data/base/24576"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres pgbackrest repo-ls backup/demo --filter=\"(F|D|I)$\" --sort=desc | head -1"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
"20211029-120159F_20211029-120216I"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres pgbackrest --stanza=demo \\",
|
|
" --set=20211029-120159F_20211029-120216I info"
|
|
],
|
|
"highlight" : {
|
|
"filter" : true,
|
|
"filter-context" : 2,
|
|
"list" : [
|
|
"database list"
|
|
]
|
|
},
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
" [filtered 11 lines of output]",
|
|
" repo1: backup set size: 4.4MB, backup size: 1.8MB",
|
|
" backup reference list: 20211029-120159F, 20211029-120159F_20211029-120210D",
|
|
" database list: postgres (13017), test1 (24576), test2 (24577)"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo systemctl stop postgresql-10.service"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres pgbackrest --stanza=demo --delta \\",
|
|
" --db-include=test2 --type=immediate --target-action=promote restore"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo systemctl start postgresql-10.service"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres sleep 2"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres psql -c \"select * from test2_table;\" test2"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
" id ",
|
|
"----",
|
|
" 2",
|
|
"(1 row)"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres psql -c \"select * from test1_table;\" test1"
|
|
],
|
|
"err-expect" : "2",
|
|
"highlight" : {
|
|
"filter" : false,
|
|
"filter-context" : 2,
|
|
"list" : [
|
|
"relation mapping file.*contains invalid data"
|
|
]
|
|
},
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
"psql: FATAL: relation mapping file \"base/24576/pg_filenode.map\" contains invalid data"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres du -sh /var/lib/pgsql/10/data/base/24576"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
"16K\t/var/lib/pgsql/10/data/base/24576"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres psql -c \"drop database test1;\""
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
"DROP DATABASE"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres psql -c \"select oid, datname from pg_database order by oid;\""
|
|
],
|
|
"highlight" : {
|
|
"filter" : false,
|
|
"filter-context" : 2,
|
|
"list" : [
|
|
"test2"
|
|
]
|
|
},
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
" oid | datname ",
|
|
"-------+-----------",
|
|
" 1 | template1",
|
|
" 13016 | template0",
|
|
" 13017 | postgres",
|
|
" 24577 | test2",
|
|
"(4 rows)"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres pgbackrest --stanza=demo --type=diff backup"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres psql -c \"begin; \\",
|
|
" create table important_table (message text); \\",
|
|
" insert into important_table values ('Important Data'); \\",
|
|
" commit; \\",
|
|
" select * from important_table;\""
|
|
],
|
|
"highlight" : {
|
|
"filter" : true,
|
|
"filter-context" : 2,
|
|
"list" : [
|
|
"Important Data"
|
|
]
|
|
},
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
" message ",
|
|
"----------------",
|
|
" Important Data",
|
|
"(1 row)"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres sleep 1"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres psql -Atc \"select current_timestamp\""
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
"2021-10-29 12:02:28.38486+00"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres sleep 1"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres psql -c \"begin; \\",
|
|
" drop table important_table; \\",
|
|
" commit; \\",
|
|
" select * from important_table;\""
|
|
],
|
|
"err-expect" : "1",
|
|
"highlight" : {
|
|
"filter" : true,
|
|
"filter-context" : 2,
|
|
"list" : [
|
|
"does not exist"
|
|
]
|
|
},
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
"ERROR: relation \"important_table\" does not exist",
|
|
"LINE 1: ...le important_table; commit; select * from important_...",
|
|
" ^"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo systemctl stop postgresql-10.service"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres pgbackrest --stanza=demo --delta \\",
|
|
" --type=time \"--target=2021-10-29 12:02:28.38486+00\" \\",
|
|
" --target-action=promote restore"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo rm /var/lib/pgsql/10/data/log/postgresql.log"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres cat /var/lib/pgsql/10/data/recovery.conf"
|
|
],
|
|
"highlight" : {
|
|
"filter" : true,
|
|
"filter-context" : 2,
|
|
"list" : [
|
|
"recovery_target_time"
|
|
]
|
|
},
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
"# Recovery settings generated by pgBackRest restore on 2021-10-29 12:02:30",
|
|
"restore_command = 'pgbackrest --stanza=demo archive-get %f \"%p\"'",
|
|
"recovery_target_time = '2021-10-29 12:02:28.38486+00'",
|
|
"recovery_target_action = 'promote'"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo systemctl start postgresql-10.service"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres sleep 2"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres psql -c \"select * from important_table\""
|
|
],
|
|
"highlight" : {
|
|
"filter" : true,
|
|
"filter-context" : 2,
|
|
"list" : [
|
|
"Important Data"
|
|
]
|
|
},
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
" message ",
|
|
"----------------",
|
|
" Important Data",
|
|
"(1 row)"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres cat /var/lib/pgsql/10/data/log/postgresql.log"
|
|
],
|
|
"highlight" : {
|
|
"filter" : true,
|
|
"filter-context" : 2,
|
|
"list" : [
|
|
"recovery stopping before|last completed transaction|starting point-in-time recovery"
|
|
]
|
|
},
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
"LOG: database system was interrupted; last known up at 2021-10-29 12:02:24 UTC",
|
|
"LOG: starting point-in-time recovery to 2021-10-29 12:02:28.38486+00",
|
|
"LOG: restored log file \"00000004.history\" from archive",
|
|
"LOG: restored log file \"000000040000000000000010\" from archive",
|
|
" [filtered 2 lines of output]",
|
|
"LOG: database system is ready to accept read only connections",
|
|
"LOG: restored log file \"000000040000000000000011\" from archive",
|
|
"LOG: recovery stopping before commit of transaction 564, time 2021-10-29 12:02:29.695775+00",
|
|
"LOG: redo done at 0/11020858",
|
|
"LOG: last completed transaction was at log time 2021-10-29 12:02:26.985761+00",
|
|
"LOG: selected new timeline ID: 5",
|
|
"LOG: archive recovery complete",
|
|
"LOG: database system is ready to accept connections"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres psql -c \"begin; \\",
|
|
" drop table important_table; \\",
|
|
" commit; \\",
|
|
" select * from important_table;\""
|
|
],
|
|
"err-expect" : "1",
|
|
"highlight" : {
|
|
"filter" : true,
|
|
"filter-context" : 2,
|
|
"list" : [
|
|
"does not exist"
|
|
]
|
|
},
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
"ERROR: relation \"important_table\" does not exist",
|
|
"LINE 1: ...le important_table; commit; select * from important_...",
|
|
" ^"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres pgbackrest --stanza=demo --type=incr backup"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres pgbackrest repo-ls backup/demo --filter=\"(F|D|I)$\" --sort=desc | head -1"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
"20211029-120159F_20211029-120234I"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres pgbackrest info"
|
|
],
|
|
"highlight" : {
|
|
"filter" : false,
|
|
"filter-context" : 2,
|
|
"list" : [
|
|
"20211029-120159F_20211029-120234I"
|
|
]
|
|
},
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
"stanza: demo",
|
|
" status: ok",
|
|
" cipher: aes-256-cbc",
|
|
"",
|
|
" db (current)",
|
|
" wal archive min/max (10): 000000020000000000000005/000000050000000000000012",
|
|
"",
|
|
" full backup: 20211029-120155F",
|
|
" timestamp start/stop: 2021-10-29 12:01:55 / 2021-10-29 12:01:58",
|
|
" wal start/stop: 000000020000000000000005 / 000000020000000000000005",
|
|
" database size: 22.5MB, database backup size: 22.5MB",
|
|
" repo1: backup set size: 2.7MB, backup size: 2.7MB",
|
|
"",
|
|
" full backup: 20211029-120159F",
|
|
" timestamp start/stop: 2021-10-29 12:01:59 / 2021-10-29 12:02:01",
|
|
" wal start/stop: 000000020000000000000006 / 000000020000000000000006",
|
|
" database size: 22.5MB, database backup size: 22.5MB",
|
|
" repo1: backup set size: 2.7MB, backup size: 2.7MB",
|
|
"",
|
|
" diff backup: 20211029-120159F_20211029-120210D",
|
|
" timestamp start/stop: 2021-10-29 12:02:10 / 2021-10-29 12:02:11",
|
|
" wal start/stop: 00000002000000000000000D / 00000002000000000000000D",
|
|
" database size: 22.5MB, database backup size: 9.5KB",
|
|
" repo1: backup set size: 2.7MB, backup size: 928B",
|
|
" backup reference list: 20211029-120159F",
|
|
"",
|
|
" incr backup: 20211029-120159F_20211029-120216I",
|
|
" timestamp start/stop: 2021-10-29 12:02:16 / 2021-10-29 12:02:18",
|
|
" wal start/stop: 00000003000000000000000F / 00000003000000000000000F",
|
|
" database size: 37.2MB, database backup size: 15.2MB",
|
|
" repo1: backup set size: 4.4MB, backup size: 1.8MB",
|
|
" backup reference list: 20211029-120159F, 20211029-120159F_20211029-120210D",
|
|
"",
|
|
" diff backup: 20211029-120159F_20211029-120224D",
|
|
" timestamp start/stop: 2021-10-29 12:02:24 / 2021-10-29 12:02:26",
|
|
" wal start/stop: 000000040000000000000010 / 000000040000000000000010",
|
|
" database size: 29.9MB, database backup size: 7.8MB",
|
|
" repo1: backup set size: 3.6MB, backup size: 951.8KB",
|
|
" backup reference list: 20211029-120159F",
|
|
"",
|
|
" incr backup: 20211029-120159F_20211029-120234I",
|
|
" timestamp start/stop: 2021-10-29 12:02:34 / 2021-10-29 12:02:36",
|
|
" wal start/stop: 000000050000000000000012 / 000000050000000000000012",
|
|
" database size: 29.9MB, database backup size: 2.1MB",
|
|
" repo1: backup set size: 3.6MB, backup size: 218.4KB",
|
|
" backup reference list: 20211029-120159F, 20211029-120159F_20211029-120224D"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo systemctl stop postgresql-10.service"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres pgbackrest --stanza=demo --delta \\",
|
|
" --set=20211029-120159F_20211029-120234I \\",
|
|
" --type=time \"--target=2021-10-29 12:02:28.38486+00\" --target-action=promote restore"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo rm /var/lib/pgsql/10/data/log/postgresql.log"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo systemctl start postgresql-10.service"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres sleep 2"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres psql -c \"select * from important_table\""
|
|
],
|
|
"err-expect" : "1",
|
|
"highlight" : {
|
|
"filter" : true,
|
|
"filter-context" : 2,
|
|
"list" : [
|
|
"does not exist"
|
|
]
|
|
},
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
"ERROR: relation \"important_table\" does not exist",
|
|
"LINE 1: select * from important_table",
|
|
" ^"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres cat /var/lib/pgsql/10/data/log/postgresql.log"
|
|
],
|
|
"highlight" : {
|
|
"filter" : true,
|
|
"filter-context" : 2,
|
|
"list" : [
|
|
"starting point-in-time recovery|consistent recovery state reached"
|
|
]
|
|
},
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
"LOG: database system was interrupted; last known up at 2021-10-29 12:02:34 UTC",
|
|
"LOG: starting point-in-time recovery to 2021-10-29 12:02:28.38486+00",
|
|
"LOG: restored log file \"00000005.history\" from archive",
|
|
"LOG: restored log file \"000000050000000000000012\" from archive",
|
|
"LOG: redo starts at 0/12000028",
|
|
"LOG: consistent recovery state reached at 0/120000F8",
|
|
"LOG: database system is ready to accept read only connections",
|
|
"LOG: redo done at 0/120000F8",
|
|
" [filtered 6 lines of output]"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo systemctl stop postgresql-10.service"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres pgbackrest --stanza=demo --delta \\",
|
|
" --type=time \"--target=2021-10-29 12:02:28.38486+00\" \\",
|
|
" --target-action=promote restore"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo rm /var/lib/pgsql/10/data/log/postgresql.log"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo systemctl start postgresql-10.service"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres sleep 2"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres psql -c \"select * from important_table\""
|
|
],
|
|
"highlight" : {
|
|
"filter" : true,
|
|
"filter-context" : 2,
|
|
"list" : [
|
|
"Important Data"
|
|
]
|
|
},
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
" message ",
|
|
"----------------",
|
|
" Important Data",
|
|
"(1 row)"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres cat /var/lib/pgsql/10/data/log/postgresql.log"
|
|
],
|
|
"highlight" : {
|
|
"filter" : true,
|
|
"filter-context" : 2,
|
|
"list" : [
|
|
"recovery stopping before|last completed transaction|starting point-in-time recovery"
|
|
]
|
|
},
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
"LOG: database system was interrupted; last known up at 2021-10-29 12:02:24 UTC",
|
|
"LOG: starting point-in-time recovery to 2021-10-29 12:02:28.38486+00",
|
|
"LOG: restored log file \"00000004.history\" from archive",
|
|
"LOG: restored log file \"000000040000000000000010\" from archive",
|
|
" [filtered 2 lines of output]",
|
|
"LOG: database system is ready to accept read only connections",
|
|
"LOG: restored log file \"000000040000000000000011\" from archive",
|
|
"LOG: recovery stopping before commit of transaction 564, time 2021-10-29 12:02:29.695775+00",
|
|
"LOG: redo done at 0/11020858",
|
|
"LOG: last completed transaction was at log time 2021-10-29 12:02:26.985761+00",
|
|
"LOG: restored log file \"00000005.history\" from archive",
|
|
"LOG: restored log file \"00000006.history\" from archive",
|
|
" [filtered 3 lines of output]"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"file" : "/etc/pgbackrest/pgbackrest.conf",
|
|
"host" : "pg-primary",
|
|
"option" : {
|
|
"global" : {
|
|
"process-max" : {
|
|
"value" : "4"
|
|
},
|
|
"repo2-azure-account" : {
|
|
"value" : "pgbackrest"
|
|
},
|
|
"repo2-azure-container" : {
|
|
"value" : "demo-container"
|
|
},
|
|
"repo2-azure-key" : {
|
|
"value" : "YXpLZXk="
|
|
},
|
|
"repo2-path" : {
|
|
"value" : "/demo-repo"
|
|
},
|
|
"repo2-retention-full" : {
|
|
"value" : "4"
|
|
},
|
|
"repo2-type" : {
|
|
"value" : "azure"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"type" : "cfg-pgbackrest",
|
|
"value" : {
|
|
"config" : [
|
|
"[demo]",
|
|
"pg1-path=/var/lib/pgsql/10/data",
|
|
"",
|
|
"[global]",
|
|
"process-max=4",
|
|
"repo1-cipher-pass=zWaf6XtpjIVZC5444yXB+cgFDFl7MxGlgkZSaoPvTGirhPygu4jOKOXf9LO4vjfO",
|
|
"repo1-cipher-type=aes-256-cbc",
|
|
"repo1-path=/var/lib/pgbackrest",
|
|
"repo1-retention-diff=2",
|
|
"repo1-retention-full=2",
|
|
"repo2-azure-account=pgbackrest",
|
|
"repo2-azure-container=demo-container",
|
|
"repo2-azure-key=YXpLZXk=",
|
|
"repo2-path=/demo-repo",
|
|
"repo2-retention-full=4",
|
|
"repo2-type=azure",
|
|
"start-fast=y",
|
|
"",
|
|
"[global:archive-push]",
|
|
"compress-level=3"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"echo \"172.17.0.2 pgbackrest.blob.core.windows.net\" | tee -a /etc/hosts"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : "root"
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres pgbackrest --repo=2 repo-create"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres pgbackrest --stanza=demo --log-level-console=info stanza-create"
|
|
],
|
|
"highlight" : {
|
|
"filter" : true,
|
|
"filter-context" : 2,
|
|
"list" : [
|
|
"completed successfully"
|
|
]
|
|
},
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
" [filtered 2 lines of output]",
|
|
"P00 INFO: stanza 'demo' already exists on repo1 and is valid",
|
|
"P00 INFO: stanza-create for stanza 'demo' on repo2",
|
|
"P00 INFO: stanza-create command end: completed successfully"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres pgbackrest --stanza=demo --repo=2 \\",
|
|
" --log-level-console=info backup"
|
|
],
|
|
"highlight" : {
|
|
"filter" : true,
|
|
"filter-context" : 2,
|
|
"list" : [
|
|
"no prior backup exists|full backup size"
|
|
]
|
|
},
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
"P00 INFO: backup command begin 2.36: --exec-id=4271-908fb51a --log-level-console=info --log-level-stderr=off --no-log-timestamp --pg1-path=/var/lib/pgsql/10/data --process-max=4 --repo=2 --repo2-azure-account=<redacted> --repo2-azure-container=demo-container --repo2-azure-key=<redacted> --repo1-cipher-pass=<redacted> --repo1-cipher-type=aes-256-cbc --repo1-path=/var/lib/pgbackrest --repo2-path=/demo-repo --repo1-retention-diff=2 --repo1-retention-full=2 --repo2-retention-full=4 --repo2-type=azure --stanza=demo --start-fast",
|
|
"P00 WARN: no prior backup exists, incr backup has been changed to full",
|
|
"P00 INFO: execute non-exclusive pg_start_backup(): backup begins after the requested immediate checkpoint completes",
|
|
"P00 INFO: backup start archive = 000000070000000000000012, lsn = 0/12000028",
|
|
" [filtered 2 lines of output]",
|
|
"P00 INFO: check archive for segment(s) 000000070000000000000012:000000070000000000000012",
|
|
"P00 INFO: new backup label = 20211029-120246F",
|
|
"P00 INFO: full backup size = 29.9MB, file total = 1246",
|
|
"P00 INFO: backup command end: completed successfully",
|
|
"P00 INFO: expire command begin 2.36: --exec-id=4271-908fb51a --log-level-console=info --log-level-stderr=off --no-log-timestamp --repo=2 --repo2-azure-account=<redacted> --repo2-azure-container=demo-container --repo2-azure-key=<redacted> --repo1-cipher-pass=<redacted> --repo1-cipher-type=aes-256-cbc --repo1-path=/var/lib/pgbackrest --repo2-path=/demo-repo --repo1-retention-diff=2 --repo1-retention-full=2 --repo2-retention-full=4 --repo2-type=azure --stanza=demo"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"file" : "/etc/pgbackrest/pgbackrest.conf",
|
|
"host" : "pg-primary",
|
|
"option" : {
|
|
"global" : {
|
|
"process-max" : {
|
|
"value" : "4"
|
|
},
|
|
"repo3-path" : {
|
|
"value" : "/demo-repo"
|
|
},
|
|
"repo3-retention-full" : {
|
|
"value" : "4"
|
|
},
|
|
"repo3-s3-bucket" : {
|
|
"value" : "demo-bucket"
|
|
},
|
|
"repo3-s3-endpoint" : {
|
|
"value" : "s3.us-east-1.amazonaws.com"
|
|
},
|
|
"repo3-s3-key" : {
|
|
"value" : "accessKey1"
|
|
},
|
|
"repo3-s3-key-secret" : {
|
|
"value" : "verySecretKey1"
|
|
},
|
|
"repo3-s3-region" : {
|
|
"value" : "us-east-1"
|
|
},
|
|
"repo3-type" : {
|
|
"value" : "s3"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"type" : "cfg-pgbackrest",
|
|
"value" : {
|
|
"config" : [
|
|
"[demo]",
|
|
"pg1-path=/var/lib/pgsql/10/data",
|
|
"",
|
|
"[global]",
|
|
"process-max=4",
|
|
"repo1-cipher-pass=zWaf6XtpjIVZC5444yXB+cgFDFl7MxGlgkZSaoPvTGirhPygu4jOKOXf9LO4vjfO",
|
|
"repo1-cipher-type=aes-256-cbc",
|
|
"repo1-path=/var/lib/pgbackrest",
|
|
"repo1-retention-diff=2",
|
|
"repo1-retention-full=2",
|
|
"repo2-azure-account=pgbackrest",
|
|
"repo2-azure-container=demo-container",
|
|
"repo2-azure-key=YXpLZXk=",
|
|
"repo2-path=/demo-repo",
|
|
"repo2-retention-full=4",
|
|
"repo2-type=azure",
|
|
"repo3-path=/demo-repo",
|
|
"repo3-retention-full=4",
|
|
"repo3-s3-bucket=demo-bucket",
|
|
"repo3-s3-endpoint=s3.us-east-1.amazonaws.com",
|
|
"repo3-s3-key=accessKey1",
|
|
"repo3-s3-key-secret=verySecretKey1",
|
|
"repo3-s3-region=us-east-1",
|
|
"repo3-type=s3",
|
|
"start-fast=y",
|
|
"",
|
|
"[global:archive-push]",
|
|
"compress-level=3"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"echo \"172.17.0.3 demo-bucket.s3.us-east-1.amazonaws.com s3.us-east-1.amazonaws.com\" | tee -a /etc/hosts"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : "root"
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres pgbackrest --repo=3 repo-create"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres pgbackrest --stanza=demo --log-level-console=info stanza-create"
|
|
],
|
|
"highlight" : {
|
|
"filter" : true,
|
|
"filter-context" : 2,
|
|
"list" : [
|
|
"completed successfully"
|
|
]
|
|
},
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
" [filtered 4 lines of output]",
|
|
"P00 INFO: stanza 'demo' already exists on repo2 and is valid",
|
|
"P00 INFO: stanza-create for stanza 'demo' on repo3",
|
|
"P00 INFO: stanza-create command end: completed successfully"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres pgbackrest --stanza=demo --repo=3 \\",
|
|
" --log-level-console=info backup"
|
|
],
|
|
"highlight" : {
|
|
"filter" : true,
|
|
"filter-context" : 2,
|
|
"list" : [
|
|
"no prior backup exists|full backup size"
|
|
]
|
|
},
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
"P00 INFO: backup command begin 2.36: --exec-id=4447-40a22558 --log-level-console=info --log-level-stderr=off --no-log-timestamp --pg1-path=/var/lib/pgsql/10/data --process-max=4 --repo=3 --repo2-azure-account=<redacted> --repo2-azure-container=demo-container --repo2-azure-key=<redacted> --repo1-cipher-pass=<redacted> --repo1-cipher-type=aes-256-cbc --repo1-path=/var/lib/pgbackrest --repo2-path=/demo-repo --repo3-path=/demo-repo --repo1-retention-diff=2 --repo1-retention-full=2 --repo2-retention-full=4 --repo3-retention-full=4 --repo3-s3-bucket=demo-bucket --repo3-s3-endpoint=s3.us-east-1.amazonaws.com --repo3-s3-key=<redacted> --repo3-s3-key-secret=<redacted> --repo3-s3-region=us-east-1 --repo2-type=azure --repo3-type=s3 --stanza=demo --start-fast",
|
|
"P00 WARN: no prior backup exists, incr backup has been changed to full",
|
|
"P00 INFO: execute non-exclusive pg_start_backup(): backup begins after the requested immediate checkpoint completes",
|
|
"P00 INFO: backup start archive = 000000070000000000000013, lsn = 0/13000028",
|
|
" [filtered 2 lines of output]",
|
|
"P00 INFO: check archive for segment(s) 000000070000000000000013:000000070000000000000013",
|
|
"P00 INFO: new backup label = 20211029-120253F",
|
|
"P00 INFO: full backup size = 29.9MB, file total = 1246",
|
|
"P00 INFO: backup command end: completed successfully",
|
|
"P00 INFO: expire command begin 2.36: --exec-id=4447-40a22558 --log-level-console=info --log-level-stderr=off --no-log-timestamp --repo=3 --repo2-azure-account=<redacted> --repo2-azure-container=demo-container --repo2-azure-key=<redacted> --repo1-cipher-pass=<redacted> --repo1-cipher-type=aes-256-cbc --repo1-path=/var/lib/pgbackrest --repo2-path=/demo-repo --repo3-path=/demo-repo --repo1-retention-diff=2 --repo1-retention-full=2 --repo2-retention-full=4 --repo3-retention-full=4 --repo3-s3-bucket=demo-bucket --repo3-s3-endpoint=s3.us-east-1.amazonaws.com --repo3-s3-key=<redacted> --repo3-s3-key-secret=<redacted> --repo3-s3-region=us-east-1 --repo2-type=azure --repo3-type=s3 --stanza=demo"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"file" : "/etc/pgbackrest/pgbackrest.conf",
|
|
"host" : "pg-primary",
|
|
"option" : {
|
|
"global" : {
|
|
"process-max" : {
|
|
"value" : "4"
|
|
},
|
|
"repo4-gcs-bucket" : {
|
|
"value" : "demo-bucket"
|
|
},
|
|
"repo4-gcs-key" : {
|
|
"value" : "/etc/pgbackrest/gcs-key.json"
|
|
},
|
|
"repo4-path" : {
|
|
"value" : "/demo-repo"
|
|
},
|
|
"repo4-type" : {
|
|
"value" : "gcs"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"type" : "cfg-pgbackrest",
|
|
"value" : {
|
|
"config" : [
|
|
"[demo]",
|
|
"pg1-path=/var/lib/pgsql/10/data",
|
|
"",
|
|
"[global]",
|
|
"process-max=4",
|
|
"repo1-cipher-pass=zWaf6XtpjIVZC5444yXB+cgFDFl7MxGlgkZSaoPvTGirhPygu4jOKOXf9LO4vjfO",
|
|
"repo1-cipher-type=aes-256-cbc",
|
|
"repo1-path=/var/lib/pgbackrest",
|
|
"repo1-retention-diff=2",
|
|
"repo1-retention-full=2",
|
|
"repo2-azure-account=pgbackrest",
|
|
"repo2-azure-container=demo-container",
|
|
"repo2-azure-key=YXpLZXk=",
|
|
"repo2-path=/demo-repo",
|
|
"repo2-retention-full=4",
|
|
"repo2-type=azure",
|
|
"repo3-path=/demo-repo",
|
|
"repo3-retention-full=4",
|
|
"repo3-s3-bucket=demo-bucket",
|
|
"repo3-s3-endpoint=s3.us-east-1.amazonaws.com",
|
|
"repo3-s3-key=accessKey1",
|
|
"repo3-s3-key-secret=verySecretKey1",
|
|
"repo3-s3-region=us-east-1",
|
|
"repo3-type=s3",
|
|
"repo4-gcs-bucket=demo-bucket",
|
|
"repo4-gcs-key=/etc/pgbackrest/gcs-key.json",
|
|
"repo4-path=/demo-repo",
|
|
"repo4-type=gcs",
|
|
"start-fast=y",
|
|
"",
|
|
"[global:archive-push]",
|
|
"compress-level=3"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo systemctl stop postgresql-10.service"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres pgbackrest --stanza=demo --log-level-console=info stop"
|
|
],
|
|
"highlight" : {
|
|
"filter" : true,
|
|
"filter-context" : 2,
|
|
"list" : [
|
|
"completed successfully"
|
|
]
|
|
},
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
"P00 INFO: stop command begin 2.36: --exec-id=4565-85a19a66 --log-level-console=info --log-level-stderr=off --no-log-timestamp --stanza=demo",
|
|
"P00 INFO: stop command end: completed successfully"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres pgbackrest --stanza=demo --repo=1 \\",
|
|
" --log-level-console=info stanza-delete"
|
|
],
|
|
"highlight" : {
|
|
"filter" : true,
|
|
"filter-context" : 2,
|
|
"list" : [
|
|
"completed successfully"
|
|
]
|
|
},
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
"P00 INFO: stanza-delete command begin 2.36: --exec-id=4600-ce656d1f --log-level-console=info --log-level-stderr=off --no-log-timestamp --pg1-path=/var/lib/pgsql/10/data --repo=1 --repo2-azure-account=<redacted> --repo2-azure-container=demo-container --repo2-azure-key=<redacted> --repo1-cipher-pass=<redacted> --repo1-cipher-type=aes-256-cbc --repo4-gcs-bucket=demo-bucket --repo4-gcs-key=<redacted> --repo1-path=/var/lib/pgbackrest --repo2-path=/demo-repo --repo3-path=/demo-repo --repo4-path=/demo-repo --repo3-s3-bucket=demo-bucket --repo3-s3-endpoint=s3.us-east-1.amazonaws.com --repo3-s3-key=<redacted> --repo3-s3-key-secret=<redacted> --repo3-s3-region=us-east-1 --repo2-type=azure --repo3-type=s3 --repo4-type=gcs --stanza=demo",
|
|
"P00 INFO: stanza-delete command end: completed successfully"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo systemctl start postgresql-10.service"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"id" : "repo1",
|
|
"image" : "pgbackrest/doc:rhel",
|
|
"name" : "repository",
|
|
"option" : "-m 512m -v /sys/fs/cgroup:/sys/fs/cgroup:rw -v /tmp/$(mktemp -d):/run",
|
|
"os" : "rhel",
|
|
"update-hosts" : true
|
|
},
|
|
"type" : "host",
|
|
"value" : {
|
|
"ip" : "172.17.0.6"
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo groupadd pgbackrest"
|
|
],
|
|
"host" : "repository",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo adduser -gpgbackrest -n pgbackrest"
|
|
],
|
|
"host" : "repository",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo yum install postgresql-libs"
|
|
],
|
|
"cmd-extra" : "-y 2>&1",
|
|
"host" : "repository",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo scp build:/build/pgbackrest-release-2.36/src/pgbackrest /usr/bin"
|
|
],
|
|
"cmd-extra" : "2>&1",
|
|
"host" : "repository",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo chmod 755 /usr/bin/pgbackrest"
|
|
],
|
|
"host" : "repository",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo mkdir -p -m 770 /var/log/pgbackrest"
|
|
],
|
|
"host" : "repository",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo chown pgbackrest:pgbackrest /var/log/pgbackrest"
|
|
],
|
|
"host" : "repository",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo mkdir -p /etc/pgbackrest"
|
|
],
|
|
"host" : "repository",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo mkdir -p /etc/pgbackrest/conf.d"
|
|
],
|
|
"host" : "repository",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo touch /etc/pgbackrest/pgbackrest.conf"
|
|
],
|
|
"host" : "repository",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo chmod 640 /etc/pgbackrest/pgbackrest.conf"
|
|
],
|
|
"host" : "repository",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo chown pgbackrest:pgbackrest /etc/pgbackrest/pgbackrest.conf"
|
|
],
|
|
"host" : "repository",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo mkdir -p /var/lib/pgbackrest"
|
|
],
|
|
"host" : "repository",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo chmod 750 /var/lib/pgbackrest"
|
|
],
|
|
"host" : "repository",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo chown pgbackrest:pgbackrest /var/lib/pgbackrest"
|
|
],
|
|
"host" : "repository",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u pgbackrest mkdir -m 750 /home/pgbackrest/.ssh"
|
|
],
|
|
"host" : "repository",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u pgbackrest ssh-keygen -f /home/pgbackrest/.ssh/id_rsa \\",
|
|
" -t rsa -b 4096 -N \"\""
|
|
],
|
|
"host" : "repository",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres mkdir -m 750 -p /var/lib/pgsql/.ssh"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres ssh-keygen -f /var/lib/pgsql/.ssh/id_rsa \\",
|
|
" -t rsa -b 4096 -N \"\""
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"(echo -n 'no-agent-forwarding,no-X11-forwarding,no-port-forwarding,' && \\",
|
|
" echo -n 'command=\"/usr/bin/pgbackrest ${SSH_ORIGINAL_COMMAND#* }\" ' && \\",
|
|
" sudo ssh root@pg-primary cat /var/lib/pgsql/.ssh/id_rsa.pub) | \\",
|
|
" sudo -u pgbackrest tee -a /home/pgbackrest/.ssh/authorized_keys"
|
|
],
|
|
"host" : "repository",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : "root"
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"(echo -n 'no-agent-forwarding,no-X11-forwarding,no-port-forwarding,' && \\",
|
|
" echo -n 'command=\"/usr/bin/pgbackrest ${SSH_ORIGINAL_COMMAND#* }\" ' && \\",
|
|
" sudo ssh root@repository cat /home/pgbackrest/.ssh/id_rsa.pub) | \\",
|
|
" sudo -u postgres tee -a /var/lib/pgsql/.ssh/authorized_keys"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : "root"
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u pgbackrest ssh postgres@pg-primary"
|
|
],
|
|
"cmd-extra" : "-o StrictHostKeyChecking=no",
|
|
"host" : "repository",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres ssh pgbackrest@repository"
|
|
],
|
|
"cmd-extra" : "-o StrictHostKeyChecking=no",
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"file" : "/etc/pgbackrest/pgbackrest.conf",
|
|
"host" : "repository",
|
|
"option" : {
|
|
"global" : {
|
|
"repo1-path" : {
|
|
"value" : "/var/lib/pgbackrest"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"type" : "cfg-pgbackrest",
|
|
"value" : {
|
|
"config" : [
|
|
"[global]",
|
|
"repo1-path=/var/lib/pgbackrest"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"file" : "/etc/pgbackrest/pgbackrest.conf",
|
|
"host" : "repository",
|
|
"option" : {
|
|
"demo" : {
|
|
"pg1-host" : {
|
|
"value" : "pg-primary"
|
|
},
|
|
"pg1-path" : {
|
|
"value" : "/var/lib/pgsql/10/data"
|
|
}
|
|
},
|
|
"global" : {
|
|
"log-level-stderr" : {
|
|
"value" : "off"
|
|
},
|
|
"log-timestamp" : {
|
|
"value" : "n"
|
|
},
|
|
"repo1-retention-full" : {
|
|
"value" : "2"
|
|
},
|
|
"start-fast" : {
|
|
"value" : "y"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"type" : "cfg-pgbackrest",
|
|
"value" : {
|
|
"config" : [
|
|
"[demo]",
|
|
"pg1-host=pg-primary",
|
|
"pg1-path=/var/lib/pgsql/10/data",
|
|
"",
|
|
"[global]",
|
|
"repo1-path=/var/lib/pgbackrest",
|
|
"repo1-retention-full=2",
|
|
"start-fast=y"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"file" : "/etc/pgbackrest/pgbackrest.conf",
|
|
"host" : "pg-primary",
|
|
"option" : {
|
|
"demo" : {
|
|
"pg1-path" : {
|
|
"value" : "/var/lib/pgsql/10/data"
|
|
}
|
|
},
|
|
"global" : {
|
|
"log-level-file" : {
|
|
"value" : "detail"
|
|
},
|
|
"log-level-stderr" : {
|
|
"value" : "off"
|
|
},
|
|
"log-timestamp" : {
|
|
"value" : "n"
|
|
},
|
|
"repo1-host" : {
|
|
"value" : "repository"
|
|
}
|
|
}
|
|
},
|
|
"reset" : true
|
|
},
|
|
"type" : "cfg-pgbackrest",
|
|
"value" : {
|
|
"config" : [
|
|
"[demo]",
|
|
"pg1-path=/var/lib/pgsql/10/data",
|
|
"",
|
|
"[global]",
|
|
"log-level-file=detail",
|
|
"repo1-host=repository"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u pgbackrest pgbackrest --stanza=demo stanza-create"
|
|
],
|
|
"host" : "repository",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres pgbackrest --stanza=demo check"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u pgbackrest pgbackrest --stanza=demo check"
|
|
],
|
|
"host" : "repository",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u pgbackrest pgbackrest --stanza=demo backup"
|
|
],
|
|
"host" : "repository",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
"P00 WARN: no prior backup exists, incr backup has been changed to full"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo systemctl stop postgresql-10.service"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres pgbackrest --stanza=demo --delta restore"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo systemctl start postgresql-10.service"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres sleep 2"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u pgbackrest pgbackrest --stanza=demo --type=full backup"
|
|
],
|
|
"host" : "repository",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"file" : "/etc/pgbackrest/pgbackrest.conf",
|
|
"host" : "repository",
|
|
"option" : {
|
|
"global" : {
|
|
"process-max" : {
|
|
"value" : "3"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"type" : "cfg-pgbackrest",
|
|
"value" : {
|
|
"config" : [
|
|
"[demo]",
|
|
"pg1-host=pg-primary",
|
|
"pg1-path=/var/lib/pgsql/10/data",
|
|
"",
|
|
"[global]",
|
|
"process-max=3",
|
|
"repo1-path=/var/lib/pgbackrest",
|
|
"repo1-retention-full=2",
|
|
"start-fast=y"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u pgbackrest pgbackrest --stanza=demo --type=full backup"
|
|
],
|
|
"host" : "repository",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u pgbackrest pgbackrest info"
|
|
],
|
|
"highlight" : {
|
|
"filter" : false,
|
|
"filter-context" : 2,
|
|
"list" : [
|
|
"timestamp start/stop"
|
|
]
|
|
},
|
|
"host" : "repository",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
"stanza: demo",
|
|
" status: ok",
|
|
" cipher: none",
|
|
"",
|
|
" db (current)",
|
|
" wal archive min/max (10): 000000080000000000000018/000000080000000000000019",
|
|
"",
|
|
" full backup: 20211029-120319F",
|
|
" timestamp start/stop: 2021-10-29 12:03:19 / 2021-10-29 12:03:21",
|
|
" wal start/stop: 000000080000000000000018 / 000000080000000000000018",
|
|
" database size: 29.9MB, database backup size: 29.9MB",
|
|
" repo1: backup set size: 3.5MB, backup size: 3.5MB",
|
|
"",
|
|
" full backup: 20211029-120323F",
|
|
" timestamp start/stop: 2021-10-29 12:03:23 / 2021-10-29 12:03:26",
|
|
" wal start/stop: 000000080000000000000019 / 000000080000000000000019",
|
|
" database size: 29.9MB, database backup size: 29.9MB",
|
|
" repo1: backup set size: 3.5MB, backup size: 3.5MB"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres pgbackrest stop"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u pgbackrest pgbackrest --stanza=demo backup"
|
|
],
|
|
"err-expect" : "56",
|
|
"highlight" : {
|
|
"filter" : true,
|
|
"filter-context" : 2,
|
|
"list" : [
|
|
"\\: stop file exists for all stanzas"
|
|
]
|
|
},
|
|
"host" : "repository",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
"P00 WARN: unable to check pg-1: [StopError] raised from remote-0 ssh protocol on 'pg-primary': stop file exists for all stanzas",
|
|
"P00 ERROR: [056]: unable to find primary cluster - cannot proceed"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres pgbackrest stop"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
"P00 WARN: stop file already exists for all stanzas"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres pgbackrest start"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres pgbackrest --stanza=demo stop"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u pgbackrest pgbackrest --stanza=demo backup"
|
|
],
|
|
"err-expect" : "56",
|
|
"highlight" : {
|
|
"filter" : true,
|
|
"filter-context" : 2,
|
|
"list" : [
|
|
"\\: stop file exists for stanza demo"
|
|
]
|
|
},
|
|
"host" : "repository",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
"P00 WARN: unable to check pg-1: [StopError] raised from remote-0 ssh protocol on 'pg-primary': stop file exists for stanza demo",
|
|
"P00 ERROR: [056]: unable to find primary cluster - cannot proceed"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres pgbackrest --stanza=demo start"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"id" : "pg2",
|
|
"image" : "pgbackrest/doc:rhel",
|
|
"name" : "pg-standby",
|
|
"option" : "-m 512m -v /sys/fs/cgroup:/sys/fs/cgroup:rw -v /tmp/$(mktemp -d):/run",
|
|
"os" : "rhel",
|
|
"update-hosts" : true
|
|
},
|
|
"type" : "host",
|
|
"value" : {
|
|
"ip" : "172.17.0.7"
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo yum install postgresql-libs"
|
|
],
|
|
"cmd-extra" : "-y 2>&1",
|
|
"host" : "pg-standby",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo scp build:/build/pgbackrest-release-2.36/src/pgbackrest /usr/bin"
|
|
],
|
|
"cmd-extra" : "2>&1",
|
|
"host" : "pg-standby",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo chmod 755 /usr/bin/pgbackrest"
|
|
],
|
|
"host" : "pg-standby",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo mkdir -p -m 770 /var/log/pgbackrest"
|
|
],
|
|
"host" : "pg-standby",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo chown postgres:postgres /var/log/pgbackrest"
|
|
],
|
|
"host" : "pg-standby",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo mkdir -p /etc/pgbackrest"
|
|
],
|
|
"host" : "pg-standby",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo mkdir -p /etc/pgbackrest/conf.d"
|
|
],
|
|
"host" : "pg-standby",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo touch /etc/pgbackrest/pgbackrest.conf"
|
|
],
|
|
"host" : "pg-standby",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo chmod 640 /etc/pgbackrest/pgbackrest.conf"
|
|
],
|
|
"host" : "pg-standby",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo chown postgres:postgres /etc/pgbackrest/pgbackrest.conf"
|
|
],
|
|
"host" : "pg-standby",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres mkdir -m 750 -p /var/lib/pgsql/.ssh"
|
|
],
|
|
"host" : "pg-standby",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres ssh-keygen -f /var/lib/pgsql/.ssh/id_rsa \\",
|
|
" -t rsa -b 4096 -N \"\""
|
|
],
|
|
"host" : "pg-standby",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"(echo -n 'no-agent-forwarding,no-X11-forwarding,no-port-forwarding,' && \\",
|
|
" echo -n 'command=\"/usr/bin/pgbackrest ${SSH_ORIGINAL_COMMAND#* }\" ' && \\",
|
|
" sudo ssh root@pg-standby cat /var/lib/pgsql/.ssh/id_rsa.pub) | \\",
|
|
" sudo -u pgbackrest tee -a /home/pgbackrest/.ssh/authorized_keys"
|
|
],
|
|
"host" : "repository",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : "root"
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"(echo -n 'no-agent-forwarding,no-X11-forwarding,no-port-forwarding,' && \\",
|
|
" echo -n 'command=\"/usr/bin/pgbackrest ${SSH_ORIGINAL_COMMAND#* }\" ' && \\",
|
|
" sudo ssh root@repository cat /home/pgbackrest/.ssh/id_rsa.pub) | \\",
|
|
" sudo -u postgres tee -a /var/lib/pgsql/.ssh/authorized_keys"
|
|
],
|
|
"host" : "pg-standby",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : "root"
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u pgbackrest ssh postgres@pg-standby"
|
|
],
|
|
"cmd-extra" : "-o StrictHostKeyChecking=no",
|
|
"host" : "repository",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres ssh pgbackrest@repository"
|
|
],
|
|
"cmd-extra" : "-o StrictHostKeyChecking=no",
|
|
"host" : "pg-standby",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"file" : "/etc/pgbackrest/pgbackrest.conf",
|
|
"host" : "pg-standby",
|
|
"option" : {
|
|
"demo" : {
|
|
"pg1-path" : {
|
|
"value" : "/var/lib/pgsql/10/data"
|
|
}
|
|
},
|
|
"global" : {
|
|
"log-level-file" : {
|
|
"value" : "detail"
|
|
},
|
|
"log-level-stderr" : {
|
|
"value" : "off"
|
|
},
|
|
"log-timestamp" : {
|
|
"value" : "n"
|
|
},
|
|
"repo1-host" : {
|
|
"value" : "repository"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"type" : "cfg-pgbackrest",
|
|
"value" : {
|
|
"config" : [
|
|
"[demo]",
|
|
"pg1-path=/var/lib/pgsql/10/data",
|
|
"",
|
|
"[global]",
|
|
"log-level-file=detail",
|
|
"repo1-host=repository"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres mkdir -p -m 700 /var/lib/pgsql/10/data"
|
|
],
|
|
"host" : "pg-standby",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres pgbackrest --stanza=demo --type=standby restore"
|
|
],
|
|
"host" : "pg-standby",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres cat /var/lib/pgsql/10/data/recovery.conf"
|
|
],
|
|
"host" : "pg-standby",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
"# Recovery settings generated by pgBackRest restore on 2021-10-29 12:03:36",
|
|
"restore_command = 'pgbackrest --stanza=demo archive-get %f \"%p\"'",
|
|
"standby_mode = 'on'"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"echo 'shared_buffers = 16MB' >> /var/lib/pgsql/10/data/postgresql.conf"
|
|
],
|
|
"host" : "pg-standby",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : "root"
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"file" : "/var/lib/pgsql/10/data/postgresql.conf",
|
|
"host" : "pg-standby",
|
|
"option" : {
|
|
"archive_command" : {
|
|
"value" : "'pgbackrest --stanza=demo archive-push %p'"
|
|
},
|
|
"archive_mode" : {
|
|
"value" : "on"
|
|
},
|
|
"hot_standby" : {
|
|
"value" : "on"
|
|
},
|
|
"log_filename" : {
|
|
"value" : "'postgresql.log'"
|
|
},
|
|
"log_line_prefix" : {
|
|
"value" : "''"
|
|
},
|
|
"max_wal_senders" : {
|
|
"value" : "3"
|
|
},
|
|
"wal_level" : {
|
|
"value" : "replica"
|
|
}
|
|
}
|
|
},
|
|
"type" : "cfg-postgresql",
|
|
"value" : {
|
|
"config" : [
|
|
"archive_command = 'pgbackrest --stanza=demo archive-push %p'",
|
|
"archive_mode = on",
|
|
"hot_standby = on",
|
|
"log_filename = 'postgresql.log'",
|
|
"log_line_prefix = ''",
|
|
"max_wal_senders = 3",
|
|
"wal_level = replica"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo rm /var/lib/pgsql/10/data/log/postgresql.log"
|
|
],
|
|
"host" : "pg-standby",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo systemctl start postgresql-10.service"
|
|
],
|
|
"host" : "pg-standby",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres sleep 2"
|
|
],
|
|
"host" : "pg-standby",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres cat /var/lib/pgsql/10/data/log/postgresql.log"
|
|
],
|
|
"highlight" : {
|
|
"filter" : true,
|
|
"filter-context" : 2,
|
|
"list" : [
|
|
"entering standby mode|database system is ready to accept read only connections"
|
|
]
|
|
},
|
|
"host" : "pg-standby",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
"LOG: database system was interrupted; last known up at 2021-10-29 12:03:23 UTC",
|
|
"LOG: entering standby mode",
|
|
"LOG: restored log file \"00000008.history\" from archive",
|
|
"LOG: restored log file \"000000080000000000000019\" from archive",
|
|
"LOG: redo starts at 0/19000028",
|
|
"LOG: consistent recovery state reached at 0/190000F8",
|
|
"LOG: database system is ready to accept read only connections"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres psql -c \" \\",
|
|
" begin; \\",
|
|
" create table replicated_table (message text); \\",
|
|
" insert into replicated_table values ('Important Data'); \\",
|
|
" commit; \\",
|
|
" select * from replicated_table\";"
|
|
],
|
|
"highlight" : {
|
|
"filter" : true,
|
|
"filter-context" : 2,
|
|
"list" : [
|
|
"Important Data"
|
|
]
|
|
},
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
" message ",
|
|
"----------------",
|
|
" Important Data",
|
|
"(1 row)"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres psql -c \"select * from replicated_table;\""
|
|
],
|
|
"err-expect" : "1",
|
|
"highlight" : {
|
|
"filter" : true,
|
|
"filter-context" : 2,
|
|
"list" : [
|
|
"does not exist"
|
|
]
|
|
},
|
|
"host" : "pg-standby",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
"ERROR: relation \"replicated_table\" does not exist",
|
|
"LINE 1: select * from replicated_table;",
|
|
" ^"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres psql -c \"select *, current_timestamp from pg_switch_wal()\";"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
" pg_switch_wal | current_timestamp ",
|
|
"---------------+-------------------------------",
|
|
" 0/1A02A9C8 | 2021-10-29 12:03:40.974372+00",
|
|
"(1 row)"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres psql -c \" \\",
|
|
" select *, current_timestamp from replicated_table\""
|
|
],
|
|
"highlight" : {
|
|
"filter" : false,
|
|
"filter-context" : 2,
|
|
"list" : [
|
|
"Important Data"
|
|
]
|
|
},
|
|
"host" : "pg-standby",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
" message | current_timestamp ",
|
|
"----------------+-------------------------------",
|
|
" Important Data | 2021-10-29 12:03:43.748088+00",
|
|
"(1 row)"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres pgbackrest --stanza=demo --log-level-console=info check"
|
|
],
|
|
"highlight" : {
|
|
"filter" : true,
|
|
"filter-context" : 2,
|
|
"list" : [
|
|
"because this is a standby"
|
|
]
|
|
},
|
|
"host" : "pg-standby",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
"P00 INFO: check command begin 2.36: --exec-id=1317-973dac59 --log-level-console=info --log-level-file=detail --log-level-stderr=off --no-log-timestamp --pg1-path=/var/lib/pgsql/10/data --repo1-host=repository --stanza=demo",
|
|
"P00 INFO: check repo1 (standby)",
|
|
"P00 INFO: switch wal not performed because this is a standby",
|
|
"P00 INFO: check command end: completed successfully"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres psql -c \" \\",
|
|
" create user replicator password 'jw8s0F4' replication\";"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
"CREATE ROLE"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres sh -c 'echo \\",
|
|
" \"host replication replicator 172.17.0.7/32 md5\" \\",
|
|
" >> /var/lib/pgsql/10/data/pg_hba.conf'"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo systemctl reload postgresql-10.service"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"file" : "/etc/pgbackrest/pgbackrest.conf",
|
|
"host" : "pg-standby",
|
|
"option" : {
|
|
"demo" : {
|
|
"recovery-option" : {
|
|
"value" : "primary_conninfo=host=172.17.0.5 port=5432 user=replicator"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"type" : "cfg-pgbackrest",
|
|
"value" : {
|
|
"config" : [
|
|
"[demo]",
|
|
"pg1-path=/var/lib/pgsql/10/data",
|
|
"recovery-option=primary_conninfo=host=172.17.0.5 port=5432 user=replicator",
|
|
"",
|
|
"[global]",
|
|
"log-level-file=detail",
|
|
"repo1-host=repository"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres sh -c 'echo \\",
|
|
" \"172.17.0.5:*:replication:replicator:jw8s0F4\" \\",
|
|
" >> /var/lib/pgsql/.pgpass'"
|
|
],
|
|
"host" : "pg-standby",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres chmod 600 /var/lib/pgsql/.pgpass"
|
|
],
|
|
"host" : "pg-standby",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo systemctl stop postgresql-10.service"
|
|
],
|
|
"host" : "pg-standby",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres pgbackrest --stanza=demo --delta --type=standby restore"
|
|
],
|
|
"host" : "pg-standby",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres cat /var/lib/pgsql/10/data/recovery.conf"
|
|
],
|
|
"host" : "pg-standby",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
"# Recovery settings generated by pgBackRest restore on 2021-10-29 12:03:47",
|
|
"primary_conninfo = 'host=172.17.0.5 port=5432 user=replicator'",
|
|
"restore_command = 'pgbackrest --stanza=demo archive-get %f \"%p\"'",
|
|
"standby_mode = 'on'"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"file" : "/var/lib/pgsql/10/data/postgresql.conf",
|
|
"host" : "pg-standby",
|
|
"option" : {
|
|
"hot_standby" : {
|
|
"value" : "on"
|
|
}
|
|
}
|
|
},
|
|
"type" : "cfg-postgresql",
|
|
"value" : {
|
|
"config" : [
|
|
"archive_command = 'pgbackrest --stanza=demo archive-push %p'",
|
|
"archive_mode = on",
|
|
"hot_standby = on",
|
|
"log_filename = 'postgresql.log'",
|
|
"log_line_prefix = ''",
|
|
"max_wal_senders = 3",
|
|
"wal_level = replica"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo rm /var/lib/pgsql/10/data/log/postgresql.log"
|
|
],
|
|
"host" : "pg-standby",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo systemctl start postgresql-10.service"
|
|
],
|
|
"host" : "pg-standby",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres sleep 2"
|
|
],
|
|
"host" : "pg-standby",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres cat /var/lib/pgsql/10/data/log/postgresql.log"
|
|
],
|
|
"highlight" : {
|
|
"filter" : true,
|
|
"filter-context" : 2,
|
|
"list" : [
|
|
"started streaming WAL from primary"
|
|
]
|
|
},
|
|
"host" : "pg-standby",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
" [filtered 6 lines of output]",
|
|
"LOG: database system is ready to accept read only connections",
|
|
"LOG: restored log file \"00000008000000000000001A\" from archive",
|
|
"LOG: started streaming WAL from primary at 0/1B000000 on timeline 8"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres psql -c \" \\",
|
|
" begin; \\",
|
|
" create table stream_table (message text); \\",
|
|
" insert into stream_table values ('Important Data'); \\",
|
|
" commit; \\",
|
|
" select *, current_timestamp from stream_table\";"
|
|
],
|
|
"highlight" : {
|
|
"filter" : true,
|
|
"filter-context" : 2,
|
|
"list" : [
|
|
"Important Data"
|
|
]
|
|
},
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
" message | current_timestamp ",
|
|
"----------------+-------------------------------",
|
|
" Important Data | 2021-10-29 12:03:51.037022+00",
|
|
"(1 row)"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres psql -c \" \\",
|
|
" select *, current_timestamp from stream_table\""
|
|
],
|
|
"highlight" : {
|
|
"filter" : false,
|
|
"filter-context" : 2,
|
|
"list" : [
|
|
"Important Data"
|
|
]
|
|
},
|
|
"host" : "pg-standby",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
" message | current_timestamp ",
|
|
"----------------+-------------------------------",
|
|
" Important Data | 2021-10-29 12:03:51.253056+00",
|
|
"(1 row)"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo mkdir -p -m 750 /var/spool/pgbackrest"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo chown postgres:postgres /var/spool/pgbackrest"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo mkdir -p -m 750 /var/spool/pgbackrest"
|
|
],
|
|
"host" : "pg-standby",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo chown postgres:postgres /var/spool/pgbackrest"
|
|
],
|
|
"host" : "pg-standby",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"file" : "/etc/pgbackrest/pgbackrest.conf",
|
|
"host" : "pg-primary",
|
|
"option" : {
|
|
"global" : {
|
|
"archive-async" : {
|
|
"value" : "y"
|
|
},
|
|
"spool-path" : {
|
|
"value" : "/var/spool/pgbackrest"
|
|
}
|
|
},
|
|
"global:archive-get" : {
|
|
"process-max" : {
|
|
"value" : "2"
|
|
}
|
|
},
|
|
"global:archive-push" : {
|
|
"process-max" : {
|
|
"value" : "2"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"type" : "cfg-pgbackrest",
|
|
"value" : {
|
|
"config" : [
|
|
"[demo]",
|
|
"pg1-path=/var/lib/pgsql/10/data",
|
|
"",
|
|
"[global]",
|
|
"archive-async=y",
|
|
"log-level-file=detail",
|
|
"repo1-host=repository",
|
|
"spool-path=/var/spool/pgbackrest",
|
|
"",
|
|
"[global:archive-get]",
|
|
"process-max=2",
|
|
"",
|
|
"[global:archive-push]",
|
|
"process-max=2"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"file" : "/etc/pgbackrest/pgbackrest.conf",
|
|
"host" : "pg-standby",
|
|
"option" : {
|
|
"global" : {
|
|
"archive-async" : {
|
|
"value" : "y"
|
|
},
|
|
"spool-path" : {
|
|
"value" : "/var/spool/pgbackrest"
|
|
}
|
|
},
|
|
"global:archive-get" : {
|
|
"process-max" : {
|
|
"value" : "2"
|
|
}
|
|
},
|
|
"global:archive-push" : {
|
|
"process-max" : {
|
|
"value" : "2"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"type" : "cfg-pgbackrest",
|
|
"value" : {
|
|
"config" : [
|
|
"[demo]",
|
|
"pg1-path=/var/lib/pgsql/10/data",
|
|
"recovery-option=primary_conninfo=host=172.17.0.5 port=5432 user=replicator",
|
|
"",
|
|
"[global]",
|
|
"archive-async=y",
|
|
"log-level-file=detail",
|
|
"repo1-host=repository",
|
|
"spool-path=/var/spool/pgbackrest",
|
|
"",
|
|
"[global:archive-get]",
|
|
"process-max=2",
|
|
"",
|
|
"[global:archive-push]",
|
|
"process-max=2"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres psql -c \"alter user replicator password 'bogus'\""
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
"ALTER ROLE"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo systemctl restart postgresql-10.service"
|
|
],
|
|
"host" : "pg-standby",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres rm -f /var/log/pgbackrest/demo-archive-push-async.log"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres psql -c \" \\",
|
|
" select pg_create_restore_point('test async push'); select pg_switch_wal(); \\",
|
|
" select pg_create_restore_point('test async push'); select pg_switch_wal(); \\",
|
|
" select pg_create_restore_point('test async push'); select pg_switch_wal(); \\",
|
|
" select pg_create_restore_point('test async push'); select pg_switch_wal(); \\",
|
|
" select pg_create_restore_point('test async push'); select pg_switch_wal();\""
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres pgbackrest --stanza=demo --log-level-console=info check"
|
|
],
|
|
"highlight" : {
|
|
"filter" : true,
|
|
"filter-context" : 2,
|
|
"list" : [
|
|
"WAL segment"
|
|
]
|
|
},
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
"P00 INFO: check command begin 2.36: --exec-id=5821-b35b7816 --log-level-console=info --log-level-file=detail --log-level-stderr=off --no-log-timestamp --pg1-path=/var/lib/pgsql/10/data --repo1-host=repository --stanza=demo",
|
|
"P00 INFO: check repo1 configuration (primary)",
|
|
"P00 INFO: check repo1 archive for WAL (primary)",
|
|
"P00 INFO: WAL segment 000000080000000000000020 successfully archived to '/var/lib/pgbackrest/archive/demo/10-1/0000000800000000/000000080000000000000020-1b7f6bb60c58071d54036c84af7aecacf96a699f.gz' on repo1",
|
|
"P00 INFO: check command end: completed successfully"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres cat /var/log/pgbackrest/demo-archive-push-async.log"
|
|
],
|
|
"highlight" : {
|
|
"filter" : true,
|
|
"filter-context" : 2,
|
|
"list" : [
|
|
" WAL file\\(s\\) to archive|pushed WAL file \\'0000000"
|
|
]
|
|
},
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
"-------------------PROCESS START-------------------",
|
|
"P00 INFO: archive-push:async command begin 2.36: [/var/lib/pgsql/10/data/pg_wal] --archive-async --exec-id=5780-3b53e200 --log-level-console=off --log-level-file=detail --log-level-stderr=off --no-log-timestamp --pg1-path=/var/lib/pgsql/10/data --process-max=2 --repo1-host=repository --spool-path=/var/spool/pgbackrest --stanza=demo",
|
|
"P00 INFO: push 1 WAL file(s) to archive: 00000008000000000000001B",
|
|
"P01 DETAIL: pushed WAL file '00000008000000000000001B' to the archive",
|
|
"P00 INFO: archive-push:async command end: completed successfully",
|
|
"",
|
|
"-------------------PROCESS START-------------------",
|
|
"P00 INFO: archive-push:async command begin 2.36: [/var/lib/pgsql/10/data/pg_wal] --archive-async --exec-id=5823-440f629a --log-level-console=off --log-level-file=detail --log-level-stderr=off --no-log-timestamp --pg1-path=/var/lib/pgsql/10/data --process-max=2 --repo1-host=repository --spool-path=/var/spool/pgbackrest --stanza=demo",
|
|
"P00 INFO: push 4 WAL file(s) to archive: 00000008000000000000001C...00000008000000000000001F",
|
|
"P02 DETAIL: pushed WAL file '00000008000000000000001D' to the archive",
|
|
"P01 DETAIL: pushed WAL file '00000008000000000000001C' to the archive",
|
|
"P01 DETAIL: pushed WAL file '00000008000000000000001F' to the archive",
|
|
"P02 DETAIL: pushed WAL file '00000008000000000000001E' to the archive",
|
|
"P00 INFO: archive-push:async command end: completed successfully",
|
|
"",
|
|
"-------------------PROCESS START-------------------",
|
|
"P00 INFO: archive-push:async command begin 2.36: [/var/lib/pgsql/10/data/pg_wal] --archive-async --exec-id=5835-8f656aa8 --log-level-console=off --log-level-file=detail --log-level-stderr=off --no-log-timestamp --pg1-path=/var/lib/pgsql/10/data --process-max=2 --repo1-host=repository --spool-path=/var/spool/pgbackrest --stanza=demo",
|
|
"P00 INFO: push 1 WAL file(s) to archive: 000000080000000000000020",
|
|
"P01 DETAIL: pushed WAL file '000000080000000000000020' to the archive",
|
|
"P00 INFO: archive-push:async command end: completed successfully"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres sleep 5"
|
|
],
|
|
"host" : "pg-standby",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres cat /var/log/pgbackrest/demo-archive-get-async.log"
|
|
],
|
|
"highlight" : {
|
|
"filter" : true,
|
|
"filter-context" : 2,
|
|
"list" : [
|
|
"found [0-F]{24} in the .* archive"
|
|
]
|
|
},
|
|
"host" : "pg-standby",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
"-------------------PROCESS START-------------------",
|
|
"P00 INFO: archive-get:async command begin 2.36: [000000080000000000000019, 00000008000000000000001A, 00000008000000000000001B, 00000008000000000000001C, 00000008000000000000001D, 00000008000000000000001E, 00000008000000000000001F, 000000080000000000000020] --archive-async --exec-id=1898-07b9123d --log-level-console=off --log-level-file=detail --log-level-stderr=off --no-log-timestamp --pg1-path=/var/lib/pgsql/10/data --process-max=2 --repo1-host=repository --spool-path=/var/spool/pgbackrest --stanza=demo",
|
|
"P00 INFO: get 8 WAL file(s) from archive: 000000080000000000000019...000000080000000000000020",
|
|
"P02 DETAIL: found 00000008000000000000001A in the repo1: 10-1 archive",
|
|
"P01 DETAIL: found 000000080000000000000019 in the repo1: 10-1 archive",
|
|
"P00 DETAIL: unable to find 00000008000000000000001B in the archive",
|
|
"P00 INFO: archive-get:async command end: completed successfully",
|
|
" [filtered 14 lines of output]",
|
|
"P00 INFO: archive-get:async command begin 2.36: [00000008000000000000001B, 00000008000000000000001C, 00000008000000000000001D, 00000008000000000000001E, 00000008000000000000001F, 000000080000000000000020, 000000080000000000000021, 000000080000000000000022] --archive-async --exec-id=1953-ce2e1add --log-level-console=off --log-level-file=detail --log-level-stderr=off --no-log-timestamp --pg1-path=/var/lib/pgsql/10/data --process-max=2 --repo1-host=repository --spool-path=/var/spool/pgbackrest --stanza=demo",
|
|
"P00 INFO: get 8 WAL file(s) from archive: 00000008000000000000001B...000000080000000000000022",
|
|
"P01 DETAIL: found 00000008000000000000001B in the repo1: 10-1 archive",
|
|
"P02 DETAIL: found 00000008000000000000001C in the repo1: 10-1 archive",
|
|
"P01 DETAIL: found 00000008000000000000001D in the repo1: 10-1 archive",
|
|
"P02 DETAIL: found 00000008000000000000001E in the repo1: 10-1 archive",
|
|
"P01 DETAIL: found 00000008000000000000001F in the repo1: 10-1 archive",
|
|
"P02 DETAIL: found 000000080000000000000020 in the repo1: 10-1 archive",
|
|
"P00 DETAIL: unable to find 000000080000000000000021 in the archive",
|
|
"P00 INFO: archive-get:async command end: completed successfully",
|
|
" [filtered 5 lines of output]"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres psql -c \"alter user replicator password 'jw8s0F4'\""
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
"ALTER ROLE"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"file" : "/etc/pgbackrest/pgbackrest.conf",
|
|
"host" : "repository",
|
|
"option" : {
|
|
"demo" : {
|
|
"pg2-host" : {
|
|
"value" : "pg-standby"
|
|
},
|
|
"pg2-path" : {
|
|
"value" : "/var/lib/pgsql/10/data"
|
|
}
|
|
},
|
|
"global" : {
|
|
"backup-standby" : {
|
|
"value" : "y"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"type" : "cfg-pgbackrest",
|
|
"value" : {
|
|
"config" : [
|
|
"[demo]",
|
|
"pg1-host=pg-primary",
|
|
"pg1-path=/var/lib/pgsql/10/data",
|
|
"pg2-host=pg-standby",
|
|
"pg2-path=/var/lib/pgsql/10/data",
|
|
"",
|
|
"[global]",
|
|
"backup-standby=y",
|
|
"process-max=3",
|
|
"repo1-path=/var/lib/pgbackrest",
|
|
"repo1-retention-full=2",
|
|
"start-fast=y"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u pgbackrest pgbackrest --stanza=demo --log-level-console=detail backup"
|
|
],
|
|
"highlight" : {
|
|
"filter" : true,
|
|
"filter-context" : 2,
|
|
"list" : [
|
|
"backup file pg-primary|replay on the standby"
|
|
]
|
|
},
|
|
"host" : "repository",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
" [filtered 2 lines of output]",
|
|
"P00 INFO: execute non-exclusive pg_start_backup(): backup begins after the requested immediate checkpoint completes",
|
|
"P00 INFO: backup start archive = 000000080000000000000022, lsn = 0/22000028",
|
|
"P00 INFO: wait for replay on the standby to reach 0/22000028",
|
|
"P00 INFO: replay on the standby reached 0/22000028",
|
|
"P01 DETAIL: backup file pg-primary:/var/lib/pgsql/10/data/global/pg_control (8KB, 0%) checksum 636d88447b7a080b68c1a70fc65aa14f75c2665d",
|
|
"P01 DETAIL: backup file pg-primary:/var/lib/pgsql/10/data/log/postgresql.log (5.3KB, 0%) checksum 1f669e8ef4fc8fa06c0af0fe6cb7547273e48dc5",
|
|
"P01 DETAIL: backup file pg-primary:/var/lib/pgsql/10/data/pg_hba.conf (4.2KB, 0%) checksum 12abee43e7eabfb3ff6239f3fc9bc3598293557d",
|
|
"P01 DETAIL: backup file pg-primary:/var/lib/pgsql/10/data/current_logfiles (26B, 0%) checksum 78a9f5c10960f0d91fcd313937469824861795a2",
|
|
"P01 DETAIL: backup file pg-primary:/var/lib/pgsql/10/data/pg_logical/replorigin_checkpoint (8B, 0%) checksum 347fc8f2df71bd4436e38bd1516ccd7ea0d46532",
|
|
"P02 DETAIL: backup file pg-standby:/var/lib/pgsql/10/data/base/13017/2608 (440KB, 19%) checksum bec9a4997a5639318eb01f2082e0b99ab3e256f6",
|
|
"P03 DETAIL: backup file pg-standby:/var/lib/pgsql/10/data/base/13017/1249 (392KB, 36%) checksum 1e632c4405f74321b16b4e2edd6ac9e8b9ed03f5",
|
|
" [filtered 1254 lines of output]"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo systemctl stop postgresql-10.service"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo systemctl stop postgresql-10.service"
|
|
],
|
|
"host" : "pg-standby",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres /usr/pgsql-11/bin/initdb \\",
|
|
" -D /var/lib/pgsql/11/data -k -A peer"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres sh -c 'cd /var/lib/pgsql && \\",
|
|
" /usr/pgsql-11/bin/pg_upgrade \\",
|
|
" --old-bindir=/usr/pgsql-10/bin \\",
|
|
" --new-bindir=/usr/pgsql-11/bin \\",
|
|
" --old-datadir=/var/lib/pgsql/10/data \\",
|
|
" --new-datadir=/var/lib/pgsql/11/data \\",
|
|
" --old-options=\" -c config_file=/var/lib/pgsql/10/data/postgresql.conf\" \\",
|
|
" --new-options=\" -c config_file=/var/lib/pgsql/11/data/postgresql.conf\"'"
|
|
],
|
|
"highlight" : {
|
|
"filter" : true,
|
|
"filter-context" : 2,
|
|
"list" : [
|
|
"Upgrade Complete"
|
|
]
|
|
},
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
" [filtered 72 lines of output]",
|
|
"Checking for extension updates ok",
|
|
"",
|
|
"Upgrade Complete",
|
|
"----------------",
|
|
"Optimizer statistics are not transferred by pg_upgrade so,",
|
|
" [filtered 4 lines of output]"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"file" : "/var/lib/pgsql/11/data/postgresql.conf",
|
|
"host" : "pg-primary",
|
|
"option" : {
|
|
"archive_command" : {
|
|
"value" : "'pgbackrest --stanza=demo archive-push %p'"
|
|
},
|
|
"archive_mode" : {
|
|
"value" : "on"
|
|
},
|
|
"listen_addresses" : {
|
|
"value" : "'*'"
|
|
},
|
|
"log_line_prefix" : {
|
|
"value" : "''"
|
|
},
|
|
"max_wal_senders" : {
|
|
"value" : "3"
|
|
},
|
|
"port" : {
|
|
"value" : "5432"
|
|
},
|
|
"wal_level" : {
|
|
"value" : "replica"
|
|
}
|
|
}
|
|
},
|
|
"type" : "cfg-postgresql",
|
|
"value" : {
|
|
"config" : [
|
|
"archive_command = 'pgbackrest --stanza=demo archive-push %p'",
|
|
"archive_mode = on",
|
|
"listen_addresses = '*'",
|
|
"log_line_prefix = ''",
|
|
"max_wal_senders = 3",
|
|
"port = 5432",
|
|
"wal_level = replica"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"file" : "/etc/pgbackrest/pgbackrest.conf",
|
|
"host" : "pg-primary",
|
|
"option" : {
|
|
"demo" : {
|
|
"pg1-path" : {
|
|
"value" : "/var/lib/pgsql/11/data"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"type" : "cfg-pgbackrest",
|
|
"value" : {
|
|
"config" : [
|
|
"[demo]",
|
|
"pg1-path=/var/lib/pgsql/11/data",
|
|
"",
|
|
"[global]",
|
|
"archive-async=y",
|
|
"log-level-file=detail",
|
|
"repo1-host=repository",
|
|
"spool-path=/var/spool/pgbackrest",
|
|
"",
|
|
"[global:archive-get]",
|
|
"process-max=2",
|
|
"",
|
|
"[global:archive-push]",
|
|
"process-max=2"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"file" : "/etc/pgbackrest/pgbackrest.conf",
|
|
"host" : "pg-standby",
|
|
"option" : {
|
|
"demo" : {
|
|
"pg1-path" : {
|
|
"value" : "/var/lib/pgsql/11/data"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"type" : "cfg-pgbackrest",
|
|
"value" : {
|
|
"config" : [
|
|
"[demo]",
|
|
"pg1-path=/var/lib/pgsql/11/data",
|
|
"recovery-option=primary_conninfo=host=172.17.0.5 port=5432 user=replicator",
|
|
"",
|
|
"[global]",
|
|
"archive-async=y",
|
|
"log-level-file=detail",
|
|
"repo1-host=repository",
|
|
"spool-path=/var/spool/pgbackrest",
|
|
"",
|
|
"[global:archive-get]",
|
|
"process-max=2",
|
|
"",
|
|
"[global:archive-push]",
|
|
"process-max=2"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"file" : "/etc/pgbackrest/pgbackrest.conf",
|
|
"host" : "repository",
|
|
"option" : {
|
|
"demo" : {
|
|
"pg1-path" : {
|
|
"value" : "/var/lib/pgsql/11/data"
|
|
},
|
|
"pg2-path" : {
|
|
"value" : "/var/lib/pgsql/11/data"
|
|
}
|
|
},
|
|
"global" : {
|
|
"backup-standby" : {
|
|
"value" : "n"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"type" : "cfg-pgbackrest",
|
|
"value" : {
|
|
"config" : [
|
|
"[demo]",
|
|
"pg1-host=pg-primary",
|
|
"pg1-path=/var/lib/pgsql/11/data",
|
|
"pg2-host=pg-standby",
|
|
"pg2-path=/var/lib/pgsql/11/data",
|
|
"",
|
|
"[global]",
|
|
"backup-standby=n",
|
|
"process-max=3",
|
|
"repo1-path=/var/lib/pgbackrest",
|
|
"repo1-retention-full=2",
|
|
"start-fast=y"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo cp /var/lib/pgsql/10/data/pg_hba.conf \\",
|
|
" /var/lib/pgsql/11/data/pg_hba.conf"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres pgbackrest --stanza=demo --no-online \\",
|
|
" --log-level-console=info stanza-upgrade"
|
|
],
|
|
"highlight" : {
|
|
"filter" : true,
|
|
"filter-context" : 2,
|
|
"list" : [
|
|
"completed successfully"
|
|
]
|
|
},
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
"P00 INFO: stanza-upgrade command begin 2.36: --exec-id=6370-1d62bc82 --log-level-console=info --log-level-file=detail --log-level-stderr=off --no-log-timestamp --no-online --pg1-path=/var/lib/pgsql/11/data --repo1-host=repository --stanza=demo",
|
|
"P00 INFO: stanza-upgrade for stanza 'demo' on repo1",
|
|
"P00 INFO: stanza-upgrade command end: completed successfully"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo systemctl start postgresql-11.service"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres systemctl status postgresql-11.service"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres pgbackrest --stanza=demo check"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo rm -rf /var/lib/pgsql/10/data"
|
|
],
|
|
"host" : "pg-primary",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo rm -rf /var/lib/pgsql/10/data"
|
|
],
|
|
"host" : "pg-standby",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres mkdir -p -m 700 /usr/pgsql-11/bin"
|
|
],
|
|
"host" : "pg-standby",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u pgbackrest pgbackrest --stanza=demo check"
|
|
],
|
|
"host" : "repository",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe",
|
|
"value" : {
|
|
"output" : [
|
|
"P00 WARN: unable to check pg-2: [DbConnectError] raised from remote-0 ssh protocol on 'pg-standby': unable to connect to 'dbname='postgres' port=5432': could not connect to server: No such file or directory",
|
|
" \tIs the server running locally and accepting",
|
|
" \tconnections on Unix domain socket \"/var/run/postgresql/.s.PGSQL.5432\"?"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u pgbackrest pgbackrest --stanza=demo --type=full backup"
|
|
],
|
|
"host" : "repository",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres pgbackrest --stanza=demo --type=standby restore"
|
|
],
|
|
"host" : "pg-standby",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"file" : "/var/lib/pgsql/11/data/postgresql.conf",
|
|
"host" : "pg-standby",
|
|
"option" : {
|
|
"hot_standby" : {
|
|
"value" : "on"
|
|
}
|
|
}
|
|
},
|
|
"type" : "cfg-postgresql",
|
|
"value" : {
|
|
"config" : [
|
|
"hot_standby = on"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo systemctl start postgresql-11.service"
|
|
],
|
|
"host" : "pg-standby",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres sleep 2"
|
|
],
|
|
"host" : "pg-standby",
|
|
"load-env" : true,
|
|
"output" : false,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"bash-wrap" : true,
|
|
"cmd" : [
|
|
"sudo -u postgres pgbackrest --stanza=demo check"
|
|
],
|
|
"host" : "pg-standby",
|
|
"load-env" : true,
|
|
"output" : true,
|
|
"run-as-user" : null
|
|
},
|
|
"type" : "exe"
|
|
},
|
|
{
|
|
"key" : {
|
|
"file" : "/etc/pgbackrest/pgbackrest.conf",
|
|
"host" : "repository",
|
|
"option" : {
|
|
"global" : {
|
|
"backup-standby" : {
|
|
"value" : "y"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"type" : "cfg-pgbackrest",
|
|
"value" : {
|
|
"config" : [
|
|
"[demo]",
|
|
"pg1-host=pg-primary",
|
|
"pg1-path=/var/lib/pgsql/11/data",
|
|
"pg2-host=pg-standby",
|
|
"pg2-path=/var/lib/pgsql/11/data",
|
|
"",
|
|
"[global]",
|
|
"backup-standby=y",
|
|
"process-max=3",
|
|
"repo1-path=/var/lib/pgbackrest",
|
|
"repo1-retention-full=2",
|
|
"start-fast=y"
|
|
]
|
|
}
|
|
}
|
|
]
|
|
}
|
|
}
|
|
}
|