Compare commits
No commits in common. "e017320e8c78d023edc3887538792102ac0f7d94" and "f42d97ba02bd23a9a83aff959d197873933d521f" have entirely different histories.
e017320e8c
...
f42d97ba02
@ -1,13 +0,0 @@
|
|||||||
# [asgard] K0S
|
|
||||||
|
|
||||||
## Installation
|
|
||||||
|
|
||||||
`curl -sSLf https://get.k0s.sh | sudo K0S_VERSION=v1.29.4+k0s.0 sh`
|
|
||||||
|
|
||||||
`sudo mkdir /etc/k0s`
|
|
||||||
|
|
||||||
`sudo k0s config create | sudo tee /etc/k0s/k0s.yml`
|
|
||||||
|
|
||||||
`sudo k0s install controller --data-dir /data/k0s --single -c /etc/k0s/k0s.yml`
|
|
||||||
|
|
||||||
`sudo k0s start`
|
|
@ -1,43 +0,0 @@
|
|||||||
# [asgard] Stockage
|
|
||||||
|
|
||||||
## Schéma de partitionnement cible
|
|
||||||
- **vda** (disque système cloud-init) 10G
|
|
||||||
- vda14 (BIOS boot)
|
|
||||||
- vda15 (EFI)
|
|
||||||
- vda1 (partition racine /)
|
|
||||||
|
|
||||||
- **vdb** (disque secondaire LVM) 5G
|
|
||||||
|
|
||||||
### Schéma de partitionnement LVM
|
|
||||||
- **data** (LVM volume group) : **vdb**
|
|
||||||
- **k0s** (LVM logical volume) : 5G
|
|
||||||
|
|
||||||
## Initialisation LVM pour le disque secondaire
|
|
||||||
Création du *physical volume* **vdb**
|
|
||||||
|
|
||||||
`sudo pvcreate /dev/vdb`
|
|
||||||
|
|
||||||
Création du *volume groupe* **data**
|
|
||||||
|
|
||||||
`sudo vgcreate data /dev/vdb`
|
|
||||||
|
|
||||||
Création du *logical volume* **k0s**
|
|
||||||
|
|
||||||
`sudo lvcreate -l+100%FREE -n k0s data`
|
|
||||||
|
|
||||||
### Formatage et montage des volumes de données
|
|
||||||
Formatage du volume en EXT4
|
|
||||||
|
|
||||||
`sudo mkfs.ext4 /dev/data/k0s`
|
|
||||||
|
|
||||||
Création des répertoires `/data/k0s`
|
|
||||||
|
|
||||||
`sudo mkdir -p /data/k0s`
|
|
||||||
|
|
||||||
Montage des volumes. Via `/etc/fstab`
|
|
||||||
|
|
||||||
```
|
|
||||||
/dev/data/k0s /data/k0s ext4 rw,discard,errors=remount-ro 0 1
|
|
||||||
```
|
|
||||||
|
|
||||||
`sudo mount /data/k0s`
|
|
@ -1,10 +0,0 @@
|
|||||||
#!/bin/sh
|
|
||||||
|
|
||||||
set -e
|
|
||||||
|
|
||||||
BASEDIR=$(dirname "$0")
|
|
||||||
|
|
||||||
install -o root -g root -m 755 "$BASEDIR/mkpsqlbackup" /usr/local/bin/mkpsqlbackup
|
|
||||||
install -o root -g root -m 644 "$BASEDIR/mkpsqlbackup.conf" /etc/mkpsqlbackup.conf
|
|
||||||
install -o root -g root -m 644 "$BASEDIR/mkpsqlbackup.service" /etc/systemd/system/mkpsqlbackup.service
|
|
||||||
install -o root -g root -m 644 "$BASEDIR/mkpsqlbackup.timer" /etc/systemd/system/mkpsqlbackup.timer
|
|
@ -1,35 +0,0 @@
|
|||||||
#!/bin/sh
|
|
||||||
|
|
||||||
set -e
|
|
||||||
|
|
||||||
# Default configuration
|
|
||||||
DATABASES=''
|
|
||||||
BACKUP_DIR=/data/backup/postgresql
|
|
||||||
RETENTION_DAYS=7
|
|
||||||
|
|
||||||
if ! source /etc/mkpsqlbackup.conf ; then
|
|
||||||
echo '[MKPSQLBACKUP] : Unable to load configuration file' >&2
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [ "$(id -un)" != 'postgres' ] ; then
|
|
||||||
echo '[MKPSQLBACKUP] : This script must be run as postgres user' >&2
|
|
||||||
exit 2
|
|
||||||
fi
|
|
||||||
|
|
||||||
FINAL_BACKUP_DIR="$BACKUP_DIR/-$(date '+%Y-%m-%d')"
|
|
||||||
echo "[MKPSQLBACKUP] : Creating backup directory $FINAL_BACKUP_DIR"
|
|
||||||
if ! mkdir -p "$FINAL_BACKUP_DIR" ; then
|
|
||||||
echo "[MKPSQLBACKUP] : Unable to create backup directory $FINAL_BACKUP_DIR"
|
|
||||||
exit 3
|
|
||||||
fi
|
|
||||||
|
|
||||||
for db in DATABASES ; do
|
|
||||||
echo "[MKPSQLBACKUP] : Backup of $db"
|
|
||||||
if ! pg_dump -Fc "$db" -f "$FINAL_BACKUP_DIR/$db" ; then
|
|
||||||
echo "[MKPSQLBACKUP] : Unable to backup database $db" >&2
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
|
|
||||||
echo '[MKPSQLBACKUP] : Purging old backups'
|
|
||||||
find "$BACKUP_DIR" -maxdepth 1 mindepth 1 -mtime +"$RETENTION_DAYS" -exec rm -rf '{}' ';'
|
|
@ -1,3 +0,0 @@
|
|||||||
DATABASES=''
|
|
||||||
BACKUP_DIR=/data/backup/postgresql
|
|
||||||
RETENTION_DAYS=7
|
|
@ -1,5 +0,0 @@
|
|||||||
[Unit]
|
|
||||||
Description=Performing PostgreSQL database backups
|
|
||||||
|
|
||||||
[Service]
|
|
||||||
ExecStart=/usr/local/bin/mkpsqlbackup
|
|
@ -1,10 +0,0 @@
|
|||||||
[Unit]
|
|
||||||
Description=Performing PostgreSQL database backups every days at 3:00am
|
|
||||||
|
|
||||||
[Timer]
|
|
||||||
# Run every days at 3:00am
|
|
||||||
OnCalendar=*-*-* 3:00:00
|
|
||||||
Persistent=true
|
|
||||||
|
|
||||||
[Install]
|
|
||||||
WantedBy=timers.target
|
|
@ -1,21 +0,0 @@
|
|||||||
# [midgard] PostgreSQL
|
|
||||||
|
|
||||||
## Installation
|
|
||||||
|
|
||||||
`sudo curl -o /etc/apt/trusted.gpg.d/pgdg.asc https://www.postgresql.org/media/keys/ACCC4CF8.asc`
|
|
||||||
|
|
||||||
`echo "deb [signed-by=/etc/apt/trusted.gpg.d/pgdg.asc] https://apt.postgresql.org/pub/repos/apt $(lsb_release -cs)-pgdg main" | sudo tee /etc/apt/sources.list.d/pgdg.list`
|
|
||||||
|
|
||||||
`sudo apt update`
|
|
||||||
|
|
||||||
`sudo apt install postgresql-16`
|
|
||||||
|
|
||||||
## Configuration
|
|
||||||
|
|
||||||
`sudo chown postgres:postgres /data/pgdata /data/pglog`
|
|
||||||
|
|
||||||
`sudo pg_dropcluster --stop 16 main`
|
|
||||||
|
|
||||||
`sudo pg_createcluster -d /data/pgdata/16/midgard -l /data/pglog/postgresql-16-midgard.log 16 midgard`
|
|
||||||
|
|
||||||
`sudo pg_ctlcluster start 16 midgard`
|
|
@ -6,13 +6,12 @@
|
|||||||
- vda15 (EFI)
|
- vda15 (EFI)
|
||||||
- vda1 (partition racine /)
|
- vda1 (partition racine /)
|
||||||
|
|
||||||
- **vdb** (disque secondaire LVM) 6G
|
- **vdb** (disque secondaire LVM) 5G
|
||||||
|
|
||||||
### Schéma de partitionnement LVM
|
### Schéma de partitionnement LVM
|
||||||
- **data** (LVM volume group) : **vdb**
|
- **data** (LVM volume group) : **vdb**
|
||||||
- **pgdata** (LVM logical volume) : 4G
|
- **pgdata** (LVM logical volume) : 4G
|
||||||
- **pglog** (LVM logical volume) : 1G
|
- **pglog** (LVM logical volume) : 1G
|
||||||
- **backup** (LVM logical volume) : 1G
|
|
||||||
|
|
||||||
|
|
||||||
## Initialisation LVM pour le disque secondaire
|
## Initialisation LVM pour le disque secondaire
|
||||||
@ -24,13 +23,11 @@ Création du *volume groupe* **data**
|
|||||||
|
|
||||||
`sudo vgcreate data /dev/vdb`
|
`sudo vgcreate data /dev/vdb`
|
||||||
|
|
||||||
Création des *logical volumes* **pgdata**, **pglog** et **backup**
|
Création des *logical volumes* **pgdata** et **pglog**
|
||||||
|
|
||||||
`sudo lvcreate -L 4G -n pgdata data`
|
`sudo lvcreate -L 4G -n pgdata data`
|
||||||
|
|
||||||
`sudo lvcreate -L 1G -n pglog data`
|
`sudo lvcreate -l+100%FREE -n pglog data`
|
||||||
|
|
||||||
`sudo lvcreate -l+100%FREE -n backup data`
|
|
||||||
|
|
||||||
### Formatage et montage des volumes de données
|
### Formatage et montage des volumes de données
|
||||||
Formatage les deux volumes en EXT4
|
Formatage les deux volumes en EXT4
|
||||||
@ -39,22 +36,17 @@ Formatage les deux volumes en EXT4
|
|||||||
|
|
||||||
`sudo mkfs.ext4 /dev/data/pgdata`
|
`sudo mkfs.ext4 /dev/data/pgdata`
|
||||||
|
|
||||||
`sudo mkfs.ext4 /dev/data/backup`
|
Création des répertoires `/data/pgdata` et `/data/pglog`
|
||||||
|
|
||||||
Création des répertoires `/data/pgdata`, `/data/pglog` et `/data/backup`
|
`sudo mkdir -p /data/pgdata /data/pglog`
|
||||||
|
|
||||||
`sudo mkdir -p /data/pgdata /data/pglog /data/backup`
|
|
||||||
|
|
||||||
Montage des volumes. Via `/etc/fstab`
|
Montage des volumes. Via `/etc/fstab`
|
||||||
|
|
||||||
```
|
```
|
||||||
/dev/data/pgdata /data/pgdata ext4 rw,discard,errors=remount-ro 0 1
|
/dev/data/pgdata /data/pgdata ext4 rw,discard,errors=remount-ro,x-systemd.growfs 0 1
|
||||||
/dev/data/pglog /data/pglog ext4 rw,discard,errors=remount-ro 0 1
|
/dev/data/pglog /data/pglog ext4 rw,discard,errors=remount-ro,x-systemd.growfs 0 1
|
||||||
/dev/data/backup /data/backup ext4 rw,discard,errors=remount-ro 0 1
|
|
||||||
```
|
```
|
||||||
|
|
||||||
`sudo mount /data/pgdata`
|
`sudo mount /data/pgdata`
|
||||||
|
|
||||||
`sudo mount /data/pglog`
|
`sudo mount /data/pglog`
|
||||||
|
|
||||||
`sudo mount /data/backup`
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user