In our article series, we are exploring the capabilities of Oracle Enterprise Manager Cloud Control 13c for the private Database as a Service (DBaaS) cloud – including the setup of such a cloud. In the previous parts, we started the setup of the private DBaaS cloud, including the configuration of the self service portal. The full procedure includes setting up the Enterprise Manager software library, creating the PaaS infrastructure zones, database pools, and quotas for the users, service templates, and optionally chargeback plans to apply to the users for cloud allocation and cloud usage.

We configured the software library, set up the Enterprise Manager self-update system, and downloaded the latest plug-ins from the external Enterprise Manager store. We created a custom cloud role in Enterprise Manager, and a cloud SSA user named as "SAI_DAS". The next step was to create a PaaS infrastructure zone named as “Sainath_PaaS_Zone” – this is just a group of hosts that will be used for Platform as a Service (PaaS), in this case we will use it for Database as a Service. Members (hosts) were added to the PaaS infrastructure zone.

After the PaaS zzone, a new database pool was created – this was a group of database servers where the database software had been pre-installed. All the servers in the database pool were required to be of the same platform as well as the same database version. Next, we added our Oracle Home targets to the pool, with each Oracle Home target belonging only to a single database pool. We also specified the placement policy constraint “Maximum number of Database Instances per host” as 10 instances.

After the database pool was created, we selected “Quotas” from the left panel, and then entered the quotas for the role selected. The Quotas page allows the SSA administrator to configure the total amount of resources which are allocated to the self-service user via the role. Quotas are an important aspect of the cloud and are required in order to control the usage of the self-service cloud. In our case, we have assigned the Memory quota as 16 GB, the Storage quota as 100 GB, the number of Database Requests as 10, the number of Schema Service Requests as 50, and the number of PDB Service Requests as 25.This is the total amount of resources that can be utilized by any SSA User to whom the custom role is assigned.

Next, we selected Data Sources from the left panel, and on the page that appears, clicked on the Data Profiles tab and created a new profile. In the creation wizard that started, we selected the Reference target as the “saiprod” database. This is the production database that will be used as the master source. We chose to include “Data Content” and “Structure and Data” by creating an RMAN backup from the source database. The other options are to create either an RMAN database image, or a database template. You can also use an existing RMAN backup, or export schema objects and create an export dump that can be used in self-service.

Alternatively, if we had selected “Structure Only”, in this case only a database template or a schema export dump could be created. This would then be used in self-service to create an empty database with just the template structure or the schema structure.

            The profile was named as “Database saiprod.sainath.com Profile RMAN Full Backup”. This will be used for the Database-as-a-Service functionality. You can set the schedule to repeat the profile creation at an interval; this means a new backup will be taken repeatedly, and can be selected by the self-service user. It is also possible to set a purge policy, and if you do this, you can purge the backups based on either the number of maximum snapshots, or the number of days. This helps in keeping the backups of the profile manageable.

Click on Next, examine the Review screen, and then submit.

            The Database Profile creation completes successfully. The steps are seen in Figure 19.

Figure 19: Successful Completion of Profile creation

            The steps show that the RMAN database backup completed, after which the RMAN backup component was created in the software library, and configuration files were uploaded to that component. If you examine the upload files step in detail, you will see that the following two configuration files have been uploaded to the software library, and not the entire backup, which still resides in the backup location.

Init File name:initsaiprod.ora
User File name:dbusers.lst  

Refreshing the Data Profile

Select Setup | Cloud | Database and select Data Sources in the left pane. In the Data Profiles tab, select the RMAN Full Backup Profile. When the profile is selected, the “Contents” section below displays the actual RMAN backup that is a part of that profile (Figure 20).

Figure 20: Data Profile and corresponding RMAN content

            The RMAN Backup name is of particular significance on this screen; it will be used when creating a database with the RESTful API. This will be explained later on.

Now, suppose a few days have gone by, and the data in the Saiprod database has changed. For example, a new record has been added to the HR Employees table, since a new employee has joined. As the cloud administrator, you would want the new data to be available to the self-service user for creating the copy of the Saiprod database.

To achieve this purpose, you do not need to recreate the profile. All that is required is to click on “Refresh Profile”. This creates a new RMAN full backup with the changed data. This new backup version can then be selected by the SSA user at the time of self-service of the Single Instance database.

When you click on the Refresh Profile button, the question is asked: “This action creates a new snapshot under this profile. Are you sure that you want to continue with the refresh of selected Profile?” Click on Yes.

We continue in the next part of this series.