mirror of https://github.com/postgres/postgres
parent
50b55b722a
commit
b3b7beb240
@ -0,0 +1,66 @@ |
|||||||
|
# Install `pg_tde` on Debian or Ubuntu |
||||||
|
|
||||||
|
In version Aplha1, `pg_tde` packages are available in the testing repository for Percona Distribution for PostgreSQL 16.2. Check the [list of supported platforms](install.md#__tabbed_1_2). |
||||||
|
|
||||||
|
This tutorial shows how to install `pg_tde` with [Percona Distribution for PostgreSQL](https://docs.percona.com/postgresql/latest/index.html). |
||||||
|
|
||||||
|
## Preconditions |
||||||
|
|
||||||
|
You need the `percona-release` repository management tool that enables the desired Percona repository for you. |
||||||
|
|
||||||
|
1. You need the following dependencies to install `percona-release`: |
||||||
|
|
||||||
|
- `wget` |
||||||
|
- `gnupg2` |
||||||
|
- `curl` |
||||||
|
- `lsb-release` |
||||||
|
|
||||||
|
Install them with the following command: |
||||||
|
|
||||||
|
```bash |
||||||
|
sudo apt-get install -y wget gnupg2 curl lsb-release |
||||||
|
``` |
||||||
|
|
||||||
|
2. Fetch the `percona-release` package |
||||||
|
|
||||||
|
```bash |
||||||
|
sudo wget https://repo.percona.com/apt/percona-release_latest.generic_all.deb |
||||||
|
``` |
||||||
|
|
||||||
|
3. Install `percona-release` |
||||||
|
|
||||||
|
```bash |
||||||
|
sudo dpkg -i percona-release_latest.generic_all.deb |
||||||
|
``` |
||||||
|
|
||||||
|
4. Enable the Percona Distribution for PostgreSQL repository |
||||||
|
|
||||||
|
```bash |
||||||
|
sudo percona-release enable-only ppg-16.2 testing |
||||||
|
``` |
||||||
|
|
||||||
|
5. Update the local cache |
||||||
|
|
||||||
|
```bash |
||||||
|
sudo apt-get update |
||||||
|
``` |
||||||
|
|
||||||
|
## Install Percona Distribution for PostgreSQL |
||||||
|
|
||||||
|
To install Percona Distribution for PostgreSQL 16 and the required packages, run the following command: |
||||||
|
|
||||||
|
```bash |
||||||
|
sudo apt-get install -y percona-postgresql-16 percona-postgresql-contrib percona-postgresql-server-dev-all |
||||||
|
``` |
||||||
|
|
||||||
|
## Install `pg_tde` packages |
||||||
|
|
||||||
|
To install `pg_tde` packages, run the following command: |
||||||
|
|
||||||
|
```bash |
||||||
|
sudo apt-get install percona-postgresql-16-pg-tde |
||||||
|
``` |
||||||
|
|
||||||
|
## Next step |
||||||
|
|
||||||
|
[Setup](setup.md){.md-button} |
@ -0,0 +1,34 @@ |
|||||||
|
# Use external reference to parameters |
||||||
|
|
||||||
|
To allow storing secrets or any other parameters in a more secure, external location, `pg_tde` |
||||||
|
allows users to specify an external reference instead of hardcoded parameters. |
||||||
|
|
||||||
|
In Alpha1 version, `pg_tde` supports the following external storage methods: |
||||||
|
|
||||||
|
* `file`, which just stores the data in a simple file specified by a `path`. The file should be |
||||||
|
readable to the postgres process. |
||||||
|
* `remote`, which uses a HTTP request to retrieve the parameter from the specified `url`. |
||||||
|
|
||||||
|
## Examples |
||||||
|
|
||||||
|
To use the file provider with a file location specified by the `remote` method, |
||||||
|
use the following command: |
||||||
|
|
||||||
|
```sql |
||||||
|
SELECT pg_tde_add_key_provider_file( |
||||||
|
'file-provider', |
||||||
|
json_object( 'type' VALUE 'remote', 'url' VALUE 'http://localhost:8888/hello' ) |
||||||
|
);" |
||||||
|
``` |
||||||
|
|
||||||
|
Or to use the `file` method, use the following command: |
||||||
|
|
||||||
|
```sql |
||||||
|
SELECT pg_tde_add_key_provider_file( |
||||||
|
'file-provider', |
||||||
|
json_object( 'type' VALUE 'remote', 'path' VALUE '/tmp/datafile-location' ) |
||||||
|
);" |
||||||
|
``` |
||||||
|
|
||||||
|
Any parameter specified to the `add_key_provider` function can be a `json_object` instead of the string, |
||||||
|
similar to the above examples. |
@ -0,0 +1,62 @@ |
|||||||
|
# Install `pg_tde` on Red Hat Enterprise Linux and derivatives |
||||||
|
|
||||||
|
In version Aplha1, `pg_tde` packages are available in the testing repository for Percona Distribution for PostgreSQL 16.2. Check the [list of supported platforms](install.md#__tabbed_1_2). |
||||||
|
|
||||||
|
This tutorial shows how to install `pg_tde` with [Percona Distribution for PostgreSQL](https://docs.percona.com/postgresql/latest/index.html). |
||||||
|
|
||||||
|
## Preconditions |
||||||
|
|
||||||
|
### Enable / disable modules |
||||||
|
|
||||||
|
=== "CentOS 7" |
||||||
|
|
||||||
|
Install the `epel-release` package: |
||||||
|
|
||||||
|
```bash |
||||||
|
sudo yum -y install epel-release |
||||||
|
sudo yum repolist |
||||||
|
``` |
||||||
|
|
||||||
|
=== "RHEL8/Oracle Linux 8/Rocky Linux 8" |
||||||
|
|
||||||
|
Disable the ``postgresql`` and ``llvm-toolset``modules: |
||||||
|
|
||||||
|
```bash |
||||||
|
sudo dnf module disable postgresql llvm-toolset |
||||||
|
``` |
||||||
|
|
||||||
|
### Install `percona-release` |
||||||
|
|
||||||
|
You need the `percona-release` repository management tool that enables the desired Percona repository for you. |
||||||
|
|
||||||
|
1. Install `percona-release`: |
||||||
|
|
||||||
|
```bash |
||||||
|
sudo yum -y install https://repo.percona.com/yum/percona-release-latest.noarch.rpm |
||||||
|
``` |
||||||
|
|
||||||
|
2. Enable the repository |
||||||
|
|
||||||
|
```bash |
||||||
|
sudo percona-release enable-only ppg-16.2 testing |
||||||
|
``` |
||||||
|
|
||||||
|
## Install Percona Distribution for PostgreSQL |
||||||
|
|
||||||
|
To install Percona Distribution for PostgreSQL 16 and the required packages, run the following command: |
||||||
|
|
||||||
|
```bash |
||||||
|
sudo yum -y install percona-postgresql-client-common percona-postgresql-common percona-postgresql-server-dev-all percona-postgresql16 percona-postgresql16-contrib percona-postgresql16-devel percona-postgresql16-libs |
||||||
|
``` |
||||||
|
|
||||||
|
## Install `pg_tde` |
||||||
|
|
||||||
|
To install `pg_tde` packages, run the following command: |
||||||
|
|
||||||
|
```bash |
||||||
|
sudo yum install percona-pg_tde_16 |
||||||
|
``` |
||||||
|
|
||||||
|
## Next steps |
||||||
|
|
||||||
|
[Setup](setup.md){.md-button} |
Loading…
Reference in new issue