0
点赞
收藏
分享

微信扫一扫

Oracle LiveLabs实验:Active/Passive Data Recovery

践行数据分析 2022-01-21 阅读 78

概述

在本次研讨会中,我们将深入研究 Oracle 客户使用的灾难恢复 (DR) 解决方案。 这些解决方案将涵盖有关应用程序和数据库级别的灾难恢复的讨论。为了制定一个全面的计划来保证在灾难后恢复您的应用程序,必须针对可能在应用程序的每一层造成灾难的所有可能场景进行计划。

在本次研讨会中,您将:

  • 利用 Rsync 在主服务器和 DR 服务器之间同步应用程序文件
  • 通过 OCI 控制台以及手动配置使用 Oracle Data Guard 设置 DR 故障转移。
  • 模拟 DR 以进行解决方案验证。

此实验申请地址在这里,时间为4小时。

实验帮助在这里。

实验 2: Using Rsync for Application File Sync

任务1: 在同一主机上的两个文件夹之间同步文件

建立源和目标目录,创建源文件:

mkdir primary_sync DR_sync
touch primary_sync/primary.txt

先演习一次(并非真正的运行),-n表示dry run:

$ rsync -avP primary_sync/ DR_sync -n
sending incremental file list
./
primary.txt

sent 80 bytes  received 22 bytes  204.00 bytes/sec
total size is 0  speedup is 0.00 (DRY RUN)

$ ls -l DR_sync/
total 0

另外几个选项,-v表示verbose;-a表示archive,即归档模式,它允许我们递归地同步源目录中的所有文件,同时保留任何符号链接、特殊和设备文件、修改时间、组、所有者和权限。-P表示“进度”和“部分”标志的组合,这使我们能够看到传输进度条以及断点续传。

正式运行:

$ rsync -avP primary_sync/ DR_sync
sending incremental file list
./
primary.txt
              0 100%    0.00kB/s    0:00:00 (xfr#1, to-chk=0/2)

sent 120 bytes  received 38 bytes  316.00 bytes/sec
total size is 0  speedup is 0.00

$ ls -l DR_sync/
total 0
-rw-rw-r--. 1 opc opc 0 Jan 20 14:48 primary.txt

任务2: 在本地和远程主机间同步文件

这个实验的实际涉及3个主机,本地主机和远程主机,以及中间的一个跳板机。

本地主机可以无口令登录跳板机,并在agent中存放了远程主机的私钥。也就是说,本地主机使用SSH Agent Forwarding方式经跳板机登录目标主机。原理详见SSH Agent Forwarding概念与示例

先建立测试目录与文件:

mkdir app_files
touch app_files/app_file_1

在客户机agent中添加远程主机的私钥:

ssh-add -k /tmp/id_rsa

测试可以经跳板机登录远程主机:

export PROXY_IP=130.162.33.51
export REMOTE_IP=150.230.145.177
ssh -AJ opc@$PROXY_IP opc@$REMOTE_IP

此时可以同步传输了:

# 也可以加-n进行dry run
$ rsync -avP -e "ssh -A -J opc@$PROXY_IP" app_files opc@$REMOTE_IP:/home/opc/
sending incremental file list
app_files/
app_files/app_file_1
              0 100%    0.00kB/s    0:00:00 (xfr#1, to-chk=0/2)

Killed by signal 1.

末尾Killed信息是正常的,在通过跳板机传输时就会出现,如果想隐藏此信息科可参考这里。

任务3: Setting up Periodic and Automated Syncs using Cron

这一部分是设置crontab,略:

$ crontab -e
30 * * * * rsync -avP source_folder <user>@<remote_server_ip>:target_folder

$ crontab -l

任务4: Simulating DR with Rsync

这一部分没什么特别的,只不过是将Load Balancer的drain state设置为True来模拟主站点失效。

实验3: Oracle Data Guard

这一部分就是讲在OCI上搭建Data Guard,以及switch over和failover。比较简单。
涉及的SQL:

select name, database_role, open_mode from v$database;
举报

相关推荐

0 条评论