1. Introduction
The section of the user guide explains installing Dbvisit Standby MP on AWS EC2 instances. In this guide, we focus on both primary and standby on the AWS. The setup will be a single instance primary database and a single instance standby database on Linux Platform. The data files are stored on a standard filesystem. This is just an example, and it does not limit the possibility of storing the data files on an ASM, using the Windows operating system, or using any supported Oracle platforms that are available on AWS.
2. Initial Setup and Configuration
2.1 Provisioning servers
We will be provisioning two servers, both with the same Linux version and release. We are using community AMIs with Linux 7.9. Click on “Launch Instance with AMI” to move to next step
Below image shows the Instance type choses (t2.medium) and also the key pair to login. We are using the existing key pair to connect to these machines (SydneySC), but a new key can be created by clicking on “Create new key pair”
The next important step is to configure network and firewall which we will see details in the next section.
Adding additional storage for Oracle installation and database files. In this example we have added just one EBS volume with 75Gig. The Root volume is already added as part of the AMI but you can choose to increase the size.
2.2 Network and Firewall
The details of the VPC created is shown below.
Security group for Inbound and Outbound rules. ( 1 ) for Nats Port for agentmanager (5533) communication and also for PostgreSQL cluster ( 2 ) Webserver port for GUI ( 3 ) Dbvnet communication port range , the main port required for this is 7890. ( 4 ) The port for ssh and also for RDP incase of windows. A specific IAM profile is also created that has required permissions and policies assigned to it.
Once this is completed and added. Click on “Launch Instance” to start the instance. There are also options to have reserved public IP to ensure that the IPAddresses do not change after every server restart. These can be used for machines that are created for permanent production use. For this use case we have not enabled them as these machines are used only for temporary purposes. The machine name has also been set to desired one using the tags.
Once the server has been launched. Repeat the same to do for the second server with a different name but use the same VPC, security group and also IAM profile. Now we have two servers. Below is the details of one of them.
Login to the servers using SSH.
3. Installation and Configuration (Oracle and Standby MP)
We now have two servers that can ping each other and connect to them using ssh and also security groups configured to establish connection using the ports 7890,5533 and 4433.
The next steps that were completed are.
3.1 Oracle Installation
Installing Oracle on both primary and standby. Create a new database on the primary server.
ec2-user@localhost[/home/ec2-user]: sudo su - oracle Last login: Fri Apr 26 14:40:39 NZST 2024 on pts/0 The Oracle base has been set to /u01/app/oracle oracle@localhost[/home/oracle]: cat /etc/oratab SRC:/u01/app/oracle/product/19.3/dbhome_1:N oracle@localhost[/home/oracle]: ps -ef |grep pmon oracle 7667 1 0 14:42 ? 00:00:00 ora_pmon_SRC oracle 8936 8860 0 14:58 pts/0 00:00:00 grep --color=auto pmon SQL> select name,open_mode from v$database; NAME OPEN_MODE --------- -------------------- SRC READ WRITE
3.2 Dbvisit Installation
Create dbvisit directory on both primary and standby server for installing Dbvisit under /usr directory.
root@localhost[/root]: cd /usr root@localhost[/usr]: mkdir dbvisit root@localhost[/usr]: chown oracle:oinstall dbvisit/
Primary Server Name: rima.dbv-aws.envbuilder.cubicle-labs.com
Standby Server Name: ono.dbv-aws.envbuilder.cubicle-labs.com
Control Center Server: ono.dbv-aws.envbuilder.cubicle-labs.com
The agentmanager installation on the primary server:
oracle@localhost[/home/oracle]: gunzip standby-v11.7.0.tar.gz oracle@localhost[/home/oracle]: ls -lrt total 195360 -rw-r--r-- 1 oracle oinstall 200048640 Apr 26 16:06 standby-v11.7.0.tar oracle@localhost[/home/oracle]: tar -xvf standby-v11.7.0.tar install-agent-v11.7.0 install-control-v11.7.0 oracle@localhost[/home/oracle]: ./install-agent-v11.7.0 +----------------------------------------------------------------------+ | ____ _ _ _ __ __ ____ | | / ___|| |_ __ _ _ __ __| | |__ _ _| \/ | _ \ | | \___ \| __/ _' | '_ \ / _' | '_ \| | | | |\/| | |_) | | | ___) | || (_| | | | | (_| | |_) | |_| | | | | __/ | | |____/ \__\__,_|_| |_|\__,_|_.__/ \__, |_| |_|_| | | Copyright 2024 |___/ By Dbvisit | +----------------------------------------------------------------------+ Welcome to Dbvisit StandbyMP setup version v11.7.0. ? Please carefully read the end-user license agreement at https://dbvisit.com/eula. Do you agree to the terms of this agreement? Yes ? Which directory should the software be installed into? /usr/dbvisit - - - You are now configuring the Dbvisit StandbyMP Agent - - - The Agent will listen on the following discovered addresses: - 127.0.0.1 - 10.0.1.90 ? Agent File Transfer Port: 7890 ? Fully Qualified Domain Name for this host: rima.dbv-aws.envbuilder.cubicle-labs.com ? Fully Qualified Domain Name for the Control Center: ono.dbv-aws.envbuilder.cubicle-labs.com ? Agent Communications Port: 5533 Each Dbvisit StandbyMP Agent and the Dbvisit StandbyMP Control Center must be configured with the same passphrase. This is how we know that they are all intended to be part of the same system. Please specify a strong passphrase - we suggest at least 12 characters, containing at least 2 numbers and 2 symbols. ? Passphrase: ******* ? Confirm Passphrase: ******* - - - Dbvisit StandbyMP Agent configuration finished - - - - - - Ready to perform installation - - - ? Do you wish to proceed with the setup using the supplied configuration options? Proceed with setup - - - Performing installation - - - Copying software files to '/usr/dbvisit'... Writing Agent configuration file '/usr/dbvisit/standbymp/conf/dbvagentmanager.ini'... - - - File creation complete - - - - - - Configuration Summary - - - Install Directory: /usr/dbvisit Fully Qualified Domain Name for this host: rima.dbv-aws.envbuilder.cubicle-labs.com Fully Qualified Domain Name for the Control Center: ono.dbv-aws.envbuilder.cubicle-labs.com Agent Communications Port: 5533 Agent File Transfer Port: 7890 - - - Installation Summary - - - The following actions have been performed: - Installed Dbvisit StandbyMP Agent software into: /usr/dbvisit/standbymp - Agent settings are available in the configuration file: /usr/dbvisit/standbymp/conf/dbvagentmanager.ini - Generated new security certificates in: /usr/dbvisit/standbymp/certificates - - - INSTALLATION SUCCESSFUL - - - To enable the installed Dbvisit StandbyMP components to run as system services, you will need to execute some commands as the "root" user in order to complete the setup. To install the system service(s), you can run, substituting the name of the user to run as if it is different from the current user: sudo /usr/dbvisit/standbymp/bin/dbvagentmanager service install --user oracle To start the system service(s), you can run: sudo /usr/dbvisit/standbymp/bin/dbvagentmanager service start root@localhost[/root]: /usr/dbvisit/standbymp/bin/dbvagentmanager service install --user oracle root@localhost[/root]: /usr/dbvisit/standbymp/bin/dbvagentmanager service start root@localhost[/root]: ps -ef |grep dbv oracle 13050 1 0 16:13 ? 00:00:00 /usr/dbvisit/standbymp/bin/dbvagentmanager service run root 13096 12951 0 16:13 pts/0 00:00:00 grep --color=auto dbv
Standby Installation: Both agentmanager and control center are installed on the standby server for this example.
oracle@localhost[/home/oracle]: gunzip standby-v11.7.0.tar.gz oracle@localhost[/home/oracle]: tar -xvf standby-v11.7.0.tar install-agent-v11.7.0 install-control-v11.7.0 oracle@localhost[/home/oracle]: ./install-agent-v11.7.0 +----------------------------------------------------------------------+ | ____ _ _ _ __ __ ____ | | / ___|| |_ __ _ _ __ __| | |__ _ _| \/ | _ \ | | \___ \| __/ _' | '_ \ / _' | '_ \| | | | |\/| | |_) | | | ___) | || (_| | | | | (_| | |_) | |_| | | | | __/ | | |____/ \__\__,_|_| |_|\__,_|_.__/ \__, |_| |_|_| | | Copyright 2024 |___/ By Dbvisit | +----------------------------------------------------------------------+ Welcome to Dbvisit StandbyMP setup version v11.7.0. ? Please carefully read the end-user license agreement at https://dbvisit.com/eula. Do you agree to the terms of this agreement? Yes ? Which directory should the software be installed into? /usr/dbvisit - - - You are now configuring the Dbvisit StandbyMP Agent - - - The Agent will listen on the following discovered addresses: - 127.0.0.1 - 10.0.1.22 ? Agent File Transfer Port: 7890 ? Fully Qualified Domain Name for this host: ono.dbv-aws.envbuilder.cubicle-labs.com ? Fully Qualified Domain Name for the Control Center: ono.dbv-aws.envbuilder.cubicle-labs.com ? Agent Communications Port: 5533 Each Dbvisit StandbyMP Agent and the Dbvisit StandbyMP Control Center must be configured with the same passphrase. This is how we know that they are all intended to be part of the same system. Please specify a strong passphrase - we suggest at least 12 characters, containing at least 2 numbers and 2 symbols. ? Passphrase: ******* ? Confirm Passphrase: ******* - - - Dbvisit StandbyMP Agent configuration finished - - - - - - Ready to perform installation - - - ? Do you wish to proceed with the setup using the supplied configuration options? Proceed with setup - - - Performing installation - - - Copying software files to '/usr/dbvisit'... Writing Agent configuration file '/usr/dbvisit/standbymp/conf/dbvagentmanager.ini'... - - - File creation complete - - - - - - Configuration Summary - - - Install Directory: /usr/dbvisit Fully Qualified Domain Name for this host: ono.dbv-aws.envbuilder.cubicle-labs.com Fully Qualified Domain Name for the Control Center: ono.dbv-aws.envbuilder.cubicle-labs.com Agent Communications Port: 5533 Agent File Transfer Port: 7890 - - - Installation Summary - - - The following actions have been performed: - Installed Dbvisit StandbyMP Agent software into: /usr/dbvisit/standbymp - Agent settings are available in the configuration file: /usr/dbvisit/standbymp/conf/dbvagentmanager.ini - Generated new security certificates in: /usr/dbvisit/standbymp/certificates - - - INSTALLATION SUCCESSFUL - - - To enable the installed Dbvisit StandbyMP components to run as system services, you will need to execute some commands as the "root" user in order to complete the setup. To install the system service(s), you can run, substituting the name of the user to run as if it is different from the current user: sudo /usr/dbvisit/standbymp/bin/dbvagentmanager service install --user oracle To start the system service(s), you can run: sudo /usr/dbvisit/standbymp/bin/dbvagentmanager service start oracle@localhost[/home/oracle]: ./install-control-v11.7.0 +----------------------------------------------------------------------+ | ____ _ _ _ __ __ ____ | | / ___|| |_ __ _ _ __ __| | |__ _ _| \/ | _ \ | | \___ \| __/ _' | '_ \ / _' | '_ \| | | | |\/| | |_) | | | ___) | || (_| | | | | (_| | |_) | |_| | | | | __/ | | |____/ \__\__,_|_| |_|\__,_|_.__/ \__, |_| |_|_| | | Copyright 2024 |___/ By Dbvisit | +----------------------------------------------------------------------+ Welcome to Dbvisit StandbyMP setup version v11.7.0. ? Please carefully read the end-user license agreement at https://dbvisit.com/eula. Do you agree to the terms of this agreement? Yes ? Which directory should the software be installed into? /usr/dbvisit - - - You are now configuring the Dbvisit StandbyMP Control Center - - - The Control Center will listen on the following discovered addresses: - 127.0.0.1 - 10.0.1.22 ? Control Center Web Server Port: 4433 ? Agent Communications Port: 5533 Each Dbvisit StandbyMP Agent and the Dbvisit StandbyMP Control Center must be configured with the same passphrase. This is how we know that they are all intended to be part of the same system. Please specify a strong passphrase - we suggest at least 12 characters, containing at least 2 numbers and 2 symbols. ? Passphrase: ******* ? Confirm Passphrase: ******* - - - Dbvisit StandbyMP Control Center configuration finished - - - - - - Ready to perform installation - - - ? Do you wish to proceed with the setup using the supplied configuration options? Proceed with setup - - - Performing installation - - - Copying software files to '/usr/dbvisit'... Writing Control Center configuration file '/usr/dbvisit/standbymp/conf/dbvcontrol.ini'... - - - File creation complete - - - - - - Configuration Summary - - - Install Directory: /usr/dbvisit Control Center Web Server Port: 4433 Agent Communications Port: 5533 - - - Installation Summary - - - The following actions have been performed: - Installed Dbvisit StandbyMP Control Center software into: /usr/dbvisit/standbymp - Control Center settings are available in the configuration file: /usr/dbvisit/standbymp/conf/dbvcontrol.ini - Generated new security certificates in: /usr/dbvisit/standbymp/certificates - - - INSTALLATION SUCCESSFUL - - - To enable the installed Dbvisit StandbyMP components to run as system services, you will need to execute some commands as the "root" user in order to complete the setup. To install the system service(s), you can run, substituting the name of the user to run as if it is different from the current user: sudo /usr/dbvisit/standbymp/bin/dbvcontrol service install --user oracle To start the system service(s), you can run: sudo /usr/dbvisit/standbymp/bin/dbvcontrol service start root@localhost[/root]: /usr/dbvisit/standbymp/bin/dbvagentmanager service install --user oracle root@localhost[/root]: /usr/dbvisit/standbymp/bin/dbvagentmanager service start root@localhost[/root]: /usr/dbvisit/standbymp/bin/dbvcontrol service install --user oracle root@localhost[/root]: /usr/dbvisit/standbymp/bin/dbvcontrol service start root@localhost[/root]: ps -ef |grep dbv oracle 3696 1 0 16:13 ? 00:00:00 /usr/dbvisit/standbymp/bin/dbvagentmanager service run oracle 3773 1 7 16:13 ? 00:00:00 /usr/dbvisit/standbymp/bin/dbvcontrol service run root 3789 3599 0 16:13 pts/0 00:00:00 grep --color=auto dbv root@localhost[/root]:
3.3 Control Center
After installing agentmanager and control center. The web GUI can be accessed using the link https://<control center installed server name>:4433
In our case its https://ono.dbv-aws.envbuilder.cubicle-labs.com:4433/
After accepting to proceed to connect. You will be prompted with username and password. The default username/password is admin/admin.
4. Configuration Creation
The steps followed are same as in the Create Configuration Section of the user guide. Please refer here for detailed steps. Below is the image once the configuration is created.
5. Create DR Database
The DR database creation steps are similar to ones discussed here in the user guide. After DR database is created the automated standby update is enabled with default 300 sec and the observer is enabled to monitor the configuration.
6. Graceful Switchover
The process of zero data loss role reversal is called graceful switchover. The details are discussed here . Below is the image after the switchover process is completed. The new primary is now ono.dbv-aws.envbuilder.cubicle-labs.com and the standby is rima.dbv-aws.envbuilder.cubicle-labs.com . The automated standby update is enabled in the reverse direction and rima’s is getting synced at regular intervals with archivelogs from ono.
7. Activation
This option is useful when the primary is unavailable or cannot be accessed at the moment, the standby database is opened read-write mode with resetlogs. The details of this option are discussed here in the user guide.
All the options and functions that can be performed with onpremise to onpremise configuration, can be performed with cloud to cloud configurations as well. We have discussed only few options above, but it is possible to do all the below.
Test Standby Activation
Test Opening standby read-only
Snapshots
View detailed log gap report
Backup & Send logs
Apply logs
Start/Stop database
Advanced Options