虽然有多种方法可用于备份系统,但建议您根据灾难恢复策略备份 Salt 基础架构。
您必须备份多个文件,并将其传输到新的 RHEL 8/9 环境:
- RaaS 节点文件和目录
- /etc/raas/raas 文件
- /etc/raas/raas.secconf 文件
- /var/log/raas 文件
- /etc/raas/pki/ 目录
- PostgreSQL 节点
- Postgres.conf - /var/lib/pgsql/12/data/postgresql.conf
- Pg_hba.conf - /var/lib/pgsql/12/data/pg_hba.conf
可以使用此命令行作为示例来说明如何备份基础架构。您可以为每个特定节点创建三个不同的状态文件,并分别应用以下命令:
- RaaS 节点:
salt rhel9-raas state.sls raas-backup
- PostgreSQL 节点:
salt rhel9-postgres state.sls pg-backup
- Salt 主节点:
salt rhel9-master state.sls master-backup
注: 如果您具有多节点环境,则需要拆分此状态文件,以将该节点的相应节状态应用于包含相关文件的节点。
# file: /srv/salt/backup.sls copy_raas_config: file.copy: - name: /tmp/backup/raas - source: /etc/raas/raas - makedirs: True - force: True copy_raas_secconf: file.copy: - name: /tmp/backup/raas.secconf - source: /etc/raas/raas.secconf - force: True - require: - copy_raas_config copy_raas_log: file.copy: - name: /tmp/backup/raas.log - source: /var/log/raas - force: True - require: - copy_raas_secconf copy_raas_pki: file.copy: - name: /tmp/backup/pki - source: /etc/raas/pki/ - makedirs: True - force: True - require: - copy_raas_log copy_raas_conf: file.copy: - name: /tmp/backup/master.d/raas.conf - source: /etc/salt/master.d/raas.conf - makedirs: True - force: True - require: - copy_raas_pki copy_eapimasterpaths: file.copy: - name: /tmp/backup/master.d/eAPIMasterPaths.conf - source: /etc/salt/master.d/eAPIMasterPaths.conf - makedirs: True - force: True - require: - copy_raas_conf copy_postgres_conf: file.copy: - name: /tmp/backup/postgresql.conf - source: /var/lib/pgsql/12/data/postgresql.conf - force: True copy_pg_hba_conf: file.copy: - name: /tmp/backup/pg_hba.conf - source: /var/lib/pgsql/12/data/pg_hba.conf - force: True
备份 Postgresql 数据库
您可以使用命令行以 postgres 用户身份备份 PostgreSQL 数据库。
- 要成为 postgres 用户,请运行以下命令:
su - postgres
- 运行 list 命令以显示数据库列表,从而查找数据库的正确名称。postgresql 数据的名称应类似于: raas_43cab1f4de604ab185b51d883c5c5d09。
psql --list | grep -i raas raas_43cab1f4de604ab185b51d883c5c5d09 | salt_eapi | UTF8 | en_US.utf8 | en_US.utf8 |
- 使用以下命令创建压缩的 gz 文件备份。
pg_dump raas_43cab1f4de604ab185b51d883c5c5d09 | gzip > raas_43cab1f4de604ab185b51d883c5c5d09.`date +%Y%m%d`.gz
注: 此命令会在当前工作目录中创建数据库的副本。确保工作目录有足够的空间可用于存储此备份。有关详细信息,请参见 恢复磁盘空间。