FSFO observer provisioning and configuration - #448
Conversation
Provide an option to configure a separate machine as an Observer for a Fast-Start Failover configuration of the Data Guard: --config-observer
|
Hi @pythianakhmadeev. Thanks for your PR. I'm waiting for a google member to verify that this patch is reasonable to test. If it is, they should reply with Once the patch is verified, the new status will be reflected by the I understand the commands that are listed here. DetailsInstructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. |
| --ora-version 19 \ | ||
| --ora-disk-mgmgt FS \ | ||
| --ora-swlib-bucket gs://[BUCKET_NAME] \ | ||
| --ora-data-mounts-json '[{"purpose":"software","blk_device":"/dev/disk/by-id/google-oracle-disk-1","name":"u01","fstype":"xfs","mount_point":"/u01","mount_opts":"nofail"}]' |
There was a problem hiding this comment.
For simplicity, we may want to avoid a separate software mount at all, given all we need to install is an Oracle client; can it just sit on the OS root mount?
There was a problem hiding this comment.
This is not a straight forward thing to do, as far as I can see.
* systemd service for automatic FSFO start/stop * ability to install Oracle Client via --ora-edition CLIENT * FSFO install & configuration in a single call * no HugePages for CLIENT installs * do not expose password in the command line * avoid storing wallet password * documentation update
* systemd service for automatic FSFO start/stop * ability to install Oracle Client via --ora-edition CLIENT * FSFO install & configuration in a single call * no HugePages for CLIENT installs * do not expose password in the command line * avoid storing wallet password * documentation update
* systemd service for automatic FSFO start/stop * ability to install Oracle Client via --ora-edition CLIENT * FSFO install & configuration in a single call * no HugePages for CLIENT installs * do not expose password in the command line * avoid storing wallet password * documentation update
mfielding
left a comment
There was a problem hiding this comment.
Here are some suggestions to optimize the client-mode installation (for DG Observer) and avoid potential issues.
General Suggestions (for files not in the diff):
1. Optimize patch role for Client:
To support patching the client home without failing (due to missing database instance), we should modify roles/patch/tasks/main.yml and roles/patch/tasks/opatch_apply.yml:
- Skip database role checks (
sqlplus / as sysdba) whenora_edition == 'CLIENT'. - Skip
srvctl stop/start hometasks for client homes. - Skip SQL patching (
datapatch) inopatch_apply.ymlfor client.
2. Avoid creating grid user for Client:
Currently, the grid user is still created because oracle_users in roles/common/defaults/main.yml is not modified. If we want to fully optimize, we should make grid user creation conditional. Note that if we do this, we also need to adjust oracle_dirs in roles/common/defaults/main.yml because oracle_inventory is currently configured to be owned by grid_user by default, which would fail if the user doesn't exist.
|
We have verified the FSFO observer provisioning in client mode and found a few issues that need to be addressed:
|
|
/ok-to-test |
* systemd service for automatic FSFO start/stop * ability to install Oracle Client via --ora-edition CLIENT * FSFO install & configuration in a single call * no HugePages for CLIENT installs * do not expose password in the command line * avoid storing wallet password * documentation update * skip dv role checks, srvctl stop/start, sql patching for client installs * avoid creating grid user * avoid sysctl, /dev/shm, grid limits for client isntalls * min memory for client installs
|
/ok-to-test |
* systemd service for automatic FSFO start/stop * ability to install Oracle Client via --ora-edition CLIENT * FSFO install & configuration in a single call * no HugePages for CLIENT installs * do not expose password in the command line * avoid storing wallet password * documentation update * skip dv role checks, srvctl stop/start, sql patching for client installs * avoid creating grid user * avoid sysctl, /dev/shm, grid limits for client isntalls * min memory for client installs
* systemd service for automatic FSFO start/stop * ability to install Oracle Client via --ora-edition CLIENT * FSFO install & configuration in a single call * no HugePages for CLIENT installs * do not expose password in the command line * avoid storing wallet password * documentation update * skip dv role checks, srvctl stop/start, sql patching for client installs * avoid creating grid user * avoid sysctl, /dev/shm, grid limits for client isntalls * min memory for client installs
| --primary-ip-addr ${PRIMARY_IP_ADDRESS} \ | ||
| --instance-hostname standby-server-19c \ | ||
| --ora-version 19 --ora-edition CLIENT \ | ||
| --ora-disk-mgmgt FS \ |
| --config-observer | ||
| </pre></p></td> | ||
| <td></td> | ||
| <td>Run the "config-observer.yml" playbook only.</td> |
There was a problem hiding this comment.
With the latest changes, I'd say:
Run the Data Guard Observer installation and configuration playbooks.
* systemd service for automatic FSFO start/stop * ability to install Oracle Client via --ora-edition CLIENT * FSFO install & configuration in a single call * no HugePages for CLIENT installs * do not expose password in the command line * avoid storing wallet password * documentation updates * skip dv role checks, srvctl stop/start, sql patching for client installs * avoid creating grid user * avoid sysctl, /dev/shm, grid limits for client isntalls * min memory for client installs
|
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: mfielding, pythianakhmadeev The full list of commands accepted by this bot can be found here. The pull request process is described here DetailsNeeds approval from an approver in each of these files:
Approvers can indicate their approval by writing |
Change Description:
Provide an option to configure a separate machine as an Observer for a Fast-Start Failover configuration of the Data Guard setup.
Solution Overview:
Add a new parameter
--config-observerto setup and configure an FSFO Observer on a dedicated host.Test Commands:
Oracle 19c and 26ai Data Guard on FS and ASM as following (example for 19c):
Expected Result:
An FSFO Data Guard configuration is successfully deployed