15.2.2. Red Hat Satellite 恢复步骤
过程 15.3. Red Hat Satellite 恢复步骤
重要
以下论述了恢复 Red Hat Satellite 的完整步骤。该过程删除当前 Red Hat Satellite 实例中的所有数据。请确定:
- 您恢复的是正确的实例。Red Hat Satellite 实例必须有与原始系统相同的配置、软件包版本和勘误。
- 所有命令都应作为
root
在备份过程中所创建归档的目录中执行。 - 所有 SELinux 上下文都正确。运行该命令:
restorecon -Rnv /
restorecon -Rnv /
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
- 准备 Red Hat Satellite 主机以便执行恢复。这个过程会在生成该备份的同一服务器中恢复备份。如果原始系统不可用,请提供相同的配置和相同的设置(主机名、IP 地址等等),并使用配置备份中的文件运行使用同样选项的
katello-configure
命令:tar --selinux -xzvf config_files.tar.gz -C /tmp katello-configure --answer-file=/tmp/etc/katello/katello-configure.conf
# tar --selinux -xzvf config_files.tar.gz -C /tmp # katello-configure --answer-file=/tmp/etc/katello/katello-configure.conf
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 进入备份目录。
export BDIR=/backup chgrp postgres -R $BDIR cd $BDIR
# export BDIR=/backup # chgrp postgres -R $BDIR # cd $BDIR
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 查看 Red Hat Satellite PostgreSQL 数据库名称。默认数据库名称为
foremanschema
和candlepin
。在 katello-configure 手册页或者/usr/share/katello/install/default-answer-file
中可找到所有默认值。如果 Red Hat Satellite 实例没有使用默认名称,则请查看katello-configure.conf
,该文件中保存所有为katello-configure
命令提供的选项,查找db_name
即可。grep db_name /etc/katello/katello-configure.conf
# grep db_name /etc/katello/katello-configure.conf
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 恢复数据库前请停止所有服务:
katello-service stop service postgresql stop
# katello-service stop # service postgresql stop
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 恢复系统文件。保证从正确的主机中提取文件。在备份目录中使用以下命令恢复所有系统文件:
tar --selinux -xzvf config_files.tar.gz -C / tar --selinux -xzvf elastic_data.tar.gz -C / tar --selinux -xvf pulp_data.tar -C /
# tar --selinux -xzvf config_files.tar.gz -C / # tar --selinux -xzvf elastic_data.tar.gz -C / # tar --selinux -xvf pulp_data.tar -C /
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 停止现有 Red Hat Satellite PostgreSQL 数据库:
service postgresql start runuser - postgres -c "dropdb foremanschema" runuser - postgres -c "dropdb candlepin"
# service postgresql start # runuser - postgres -c "dropdb foremanschema" # runuser - postgres -c "dropdb candlepin"
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 注意
停止数据库的过程中可能会出现以下出错信息:database xxx is being accessed by other users
database xxx is being accessed by other users
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 确定停止所有进程。 - 使用以下命令恢复 Red Hat Satellite PostgreSQL 数据库:
runuser - postgres -c "pg_restore -C -d postgres /backup/katello.dump" runuser - postgres -c "pg_restore -C -d postgres /backup/candlepin.dump"
# runuser - postgres -c "pg_restore -C -d postgres /backup/katello.dump" # runuser - postgres -c "pg_restore -C -d postgres /backup/candlepin.dump"
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 注意
有关 PostgreSQL 备份的详情请参考pg_dump
manual page 或者访问 http://www.postgresql.org/docs/8.4/static/backup.html。 - 确定 MongoDB 正在运行并删除旧数据:
service mongod start echo 'db.dropDatabase();' | mongo pulp_database
# service mongod start # echo 'db.dropDatabase();' | mongo pulp_database
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 执行以下命令并提供备份归档目录中的
--username
和--password
。mongorestore --host localhost mongo_dump/pulp_database/
# mongorestore --host localhost mongo_dump/pulp_database/
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 注意
详情请参考 mongorestore man page 或者访问 http://www.mongodb.org/display/DOCS/Backups。 - 恢复所有 Red Hat Satellite 进程:
service postgresql start katello-service start
# service postgresql start # katello-service start
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 根据出错信息检查日志文件,如果是拒绝信息则检查
audit.log
,同时尝试 ping Red Hat Satellite 实例:hammer -u admin -p admin ping
# hammer -u admin -p admin ping
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
22921%2C+User+Guide-6.008-10-2014+13%3A34%3A52Red+Hat+Satellite+6Docs+User+Guide报告 bug