Skip to content

Commit

Permalink
Merge pull request #55 from oravirt/master
Browse files Browse the repository at this point in the history
[pull] master from oravirt:master
  • Loading branch information
Rendanic authored Jul 22, 2024
2 parents 5ffa13f + facd982 commit 277325a
Show file tree
Hide file tree
Showing 72 changed files with 1,679 additions and 257 deletions.
2 changes: 2 additions & 0 deletions .ansible-lint
Original file line number Diff line number Diff line change
Expand Up @@ -14,10 +14,12 @@ exclude_paths:
- dbhome-conversion
- docker
- plugins/modules
- execution-environment.yml
- playbooks/desupported
- changelogs
- roles/oraemagent_install # deprecated role
- example/*/ansible/playbooks/collections/ansible_collections
- example/*/ansible/requirements.yml
- playbooks/collections/ansible_collections

extra_vars:
Expand Down
4 changes: 3 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -3,9 +3,11 @@
*.pub
LINUX.X64_*.zip

context
# ignore for ansible-navigator
playbooks/collections/ansible_collections
example/*/ansible/playbooks/collections/ansible_collections
example/*/ansible/navigator/replay/*json
example/*/ansible/context
ansible-navigator.log
navigator/replay/*json

3 changes: 3 additions & 0 deletions changelogs/fragments/apply_patches_gi.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
---
bugfixes:
- "bugfix: added apply_patches_gi to some tasks with patch_before_rootsh ()"
3 changes: 3 additions & 0 deletions changelogs/fragments/cluvfy.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
---
bugfixes:
- "oracluvfy did not fail when error was detected ()"
3 changes: 3 additions & 0 deletions changelogs/fragments/hugepages_grub.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
---
minor_changes:
- "added option to disable transparent hugepages in grub (oravirt#460)"
3 changes: 3 additions & 0 deletions changelogs/fragments/lint-hosts.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
---
bugfixes:
- "fixed jinja spacing warning (oravirt#463)"
3 changes: 3 additions & 0 deletions changelogs/fragments/opatch_tmpdir.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
---
minor_changes:
- "oracle_opatch.py needs to support configurable temp directory (oravirt#462)"
3 changes: 3 additions & 0 deletions changelogs/fragments/orahost_meta_kernel.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
---
minor_changes:
- "orahost_meta: Enable calculation of several kernel parameters (oravirt#451)"
3 changes: 3 additions & 0 deletions changelogs/fragments/oraswdb_manage_patches.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
---
minor_changes:
- "oraswdb_manage_patches: make role compatible with oraswgi_manage_patches ()"
3 changes: 3 additions & 0 deletions changelogs/fragments/oraswgi_install_refactor.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
---
minor_changes:
- "oraswgi_install: Next refactoring of role for RAC ()"
3 changes: 3 additions & 0 deletions changelogs/fragments/oraswgi_manage_patches.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
---
breaking_changes:
- "oraswgi_manage_patches: python-module xmltodict needed on ansible-controller ()"
25 changes: 25 additions & 0 deletions example/rac/ansible/ansible-navigator.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
---
ansible-navigator:
# ansible-runner:
# artifact-dir: navigator
# rotate-artifacts-count: 20
execution-environment:
enabled: true
# Create the local environment with:
# ansible-navigator builder build
image: ansible-execution-env:latest
# image: ghcr.io/ansible/creator-ee:v24.2.0
volume-mounts:
- src: "/vagrant"
dest: "/vagrant"
options: "ro"
environment-variables:
set:
ANSIBLE_CONFIG: ansible.cfg
logging:
level: warning
mode: stdout
playbook-artifact:
enable: true
replay: "{playbook_dir}/../navigator/replay/{playbook_name}-{time_stamp}.json"
save-as: "{playbook_dir}/../navigator/replay/{playbook_name}-{time_stamp}.json"
19 changes: 19 additions & 0 deletions example/rac/ansible/ansible.cfg
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
[defaults]
inventory = inventory/rac

host_key_checking = False
# display_skipped_hosts = false
duplicate_dict_key = ignore

nocolor = 1
retry_files_enabled = False

# callbacks_enabled = timer, profile_roles

[ssh_connection]
pipelining = True

# needed for devsec ssh-role
scp_if_ssh = True

ssh_args = -o ControlMaster=auto -o ControlPersist=60s
1 change: 1 addition & 0 deletions example/rac/ansible/execution-environment.yml
25 changes: 25 additions & 0 deletions example/rac/ansible/inventory/rac/group_vars/all/asm.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
---

device_persistence: asmlib
oracle_asm_disk_string: /dev/oracleasm/disks/*
oracle_asm_init_dg: data

asm_diskgroups: # ASM Diskgroups used for DB-storage. Should map to dict asm_storage_layout.
- diskgroup: data
state: present
properties:
- {redundancy: external, ausize: 4}
attributes:
- {name: compatible.rdbms, value: 11.2.0.4.0}
- {name: compatible.asm, value: "19.0.0.0.0"}
disk:
- {device: /dev/sdc, asmlabel: data01}
- diskgroup: fra
state: present
properties:
- {redundancy: external, ausize: 4}
attributes:
- {name: compatible.rdbms, value: 11.2.0.4.0}
- {name: compatible.asm, value: "19.0.0.0.0"}
disk:
- {device: /dev/sdd, asmlabel: fra01}
49 changes: 49 additions & 0 deletions example/rac/ansible/inventory/rac/group_vars/all/db-homes.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
---
apply_patches_db: true
db_homes_config:
db1913-gi-ee: &db1913-gi-ee
home: db1912-si-ee
version: 19.3.0.0
oracle_home: /u01/app/oracle/product/19/db1913-si-ee
edition: EE
opatch_minversion: 12.2.0.1.27
opatchauto:
- patchid: 33182768
patchversion: 19.13.0.0.211019
state: present
subpatches:
- 33208123 # OCW Release Update 19.13.0.0.211019
- 32585572 # DBWLM Release Update
- 33192793 # Database Release Update 19.13.0.0.211019
opatch: []
# # Remove Oracle Database 19c Important Recommended One-off Patches (Doc ID 555.1)
# - {patchid: 29213893, state: absent, excludeUPI: 24384541, stop_processes: true}
# - {patchid: 30978304, state: absent, excludeUPI: 24384338, stop_processes: true}
# # - {patchid: 31602782, state: absent, excludeUPI: 24384398, stop_processes: true}
# - {patchid: 33121934, state: absent, excludeUPI: 24407586, stop_processes: true}
# - {patchid: 32522300, state: absent, stop_processes: true}
# - {patchid: 31143146, state: absent, stop_processes: true}
# - {patchid: 32919937, state: absent, stop_processes: true}
# - {patchid: 33144001, state: absent, stop_processes: true}
# - patchid: 32876380
# # Oracle JavaVM Component Release Update (OJVM RU) 19.13.0.0.211019
# stop_processes: true
# state: present
# path: 19.13.0.0.211019/ojvm/p33192694_190000_Linux-x86-64.zip
# # Oracle Database 19c Important Recommended One-off Patches (Doc ID 555.1)
# - {patchid: 29213893, path: 19.13.0.0.211019/p29213893_1913000DBRU_Generic.zip, state: present, stop_processes: true}
# - {patchid: 30978304, path: 19.13.0.0.211019/p30978304_1913000DBRU_Generic.zip, state: present, stop_processes: true}
# # Contention on "CURSOR: PIN S WAIT ON X" when PQ slave's execution plan does not match with QC
# # conflicts with 33121934 ...
# # - {patchid: 31602782, path: 19.13.0.0.211019/p31602782_1913000DBRU_Linux-x86-64.zip, state: present, stop_processes: true}
# # Library cache lock / load lock / mutex x during connection storm
# - {patchid: 33121934, path: 19.13.0.0.211019/p33121934_1913000DBRU_Linux-x86-64.zip, state: present, stop_processes: true}

# Current Mapping of ORACLE_HOMEs
# use this mapping for fast change between the Release Updates
# <<: * => merge values from alias and overwrite oracle_home + home
db19-gi-ee:
<<: *db1913-gi-ee
# imagename: db_home_19.13.zip
oracle_home: /u01/app/oracle/product/19/db1
home: db19-gi-ee
15 changes: 15 additions & 0 deletions example/rac/ansible/inventory/rac/group_vars/all/db-profiles.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
---
# global Defaults for Database-Profiles

oracle_default_profiles:
- name: DEFAULT
state: present
attributes:
- {name: password_life_time, value: unlimited}
- name: PW_UNLIMIT
state: present
attributes:
- {name: password_life_time, value: "UNLIMITED"}
- {name: password_grace_time, value: 7}
- {name: password_lock_time, value: 1}
- {name: password_verify_function, value: "null"}
22 changes: 22 additions & 0 deletions example/rac/ansible/inventory/rac/group_vars/all/dev-sec.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
---
# Oracle gets problems, when root processes are not visible
hidepid_option: 0

os_security_kernel_enable_module_loading: true

sysctl_overwrite:
network_ipv6_enable: false
fs.protected_regular: 0 # needed for opatchauto ...

# ssh settings
ssh_print_last_log: true
ssh_allow_agent_forwarding: false
ssh_permit_tunnel: false
ssh_allow_tcp_forwarding: 'no'
ssh_max_auth_retries: 3

ssh_allow_users: vagrant ansible

# disable some ansible-oracle options
disable_selinux: false
configure_oracle_sudo: false
34 changes: 34 additions & 0 deletions example/rac/ansible/inventory/rac/group_vars/all/gi-homes.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
---
# This configuration file is used as a global default
# The variable gi_patches_config is not part of ansible-oracle. It is
# referenced from other structures in the Inventory.

gi_patches_config:
19.23.0.0.240116:
19.3.0.0: # Base Release
opatch_minversion: 12.2.0.1.40
opatchauto:
- patchid: 36233126
patchversion: 19.23.0.0.240416
state: present
subpatches:
- 36240578 # OCW Release Update 19.23.0.0.240416
- 36383196 # DBWLM Release Update
- 36233343 # ACFS Release Update 19.23.0.0.240416
- 36460248 # Tomcat Release Update 19.0.0.0.0
- 36233263 # Database Release Update 19.23.0.0.240416
opath: []
19.22.0.0.240116:
19.3.0.0: # Base Release
opatch_minversion: 12.2.0.1.40
opatchauto:
- patchid: 35940989
patchversion: 19.22.0.0.240116
state: present
subpatches:
- 35967489 # OCW Release Update 19.22.0.0.240116
- 33575402 # DBWLM Release Update
- 35956421 # ACFS Release Update 19.22.0.0.240116
- 36115038 # Tomcat Release Update 19.0.0.0.0
- 35943157 # Database Release Update 19.22.0.0.240116
opath: []
22 changes: 22 additions & 0 deletions example/rac/ansible/inventory/rac/group_vars/all/gi.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
---
oracle_install_option_gi: CRS_CONFIG
oracle_install_version_gi: 19.3.0.0
oracle_home_gi: /u01/app/gridinfra/19
# oracle_install_image_gi: grid_home_19.12.zip
oracle_gi_cluster_type: STANDARD
oracle_asm_init_dg: data

apply_patches_gi: true
patch_before_rootsh: true

gi_patches:
# "{{ gi_patches_config['19.23.0.0.240116'] }}"
"{{ gi_patches_config['19.22.0.0.240116'] }}"

role_separation: true
configure_ssh: true

oracle_scan: scan-192-168-56-199.nip.io
oracle_scan_port: 1521
oracle_gi_nic_pub: eth1
oracle_gi_nic_priv: eth2
40 changes: 40 additions & 0 deletions example/rac/ansible/inventory/rac/group_vars/all/host.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
---
# Set ansible_python_interpreter only when python is executable with that path
# ansible_python_interpreter: /bin/python3

configure_public_yum_repo: true
configure_epel_repo: true
configure_motd: false
configure_etc_hosts: true

configure_oracle_sudo: true
disable_ee_options: true # noqa var-naming

control_management_pack_access: NONE

configure_hugepages_by: memory

# disable hugepages on small systems
# don't forget to enable use_large_pages in oracle parameter
# size_in_gb_hugepages: 2
size_in_gb_hugepages: 0

oracle_stage: /u01/stage

configure_host_disks: true

host_fs_layout:
- vgname: oravg
state: present
filesystem:
- {mntp: /u01, lvname: orabaselv, lvsize: 50G, fstype: xfs}
- {mntp: swap, lvname: swaplv, lvsize: 16g, fstype: swap}
disk:
- {device: /dev/sdb, pvname: /dev/sdb1}
- vgname: rootvg
state: present
filesystem:
- {mntp: /tmp, lvname: tmplv, lvsize: 1400m, fstype: ext4, owner: root, group: root, mode: "u+rwx,g+rwx,o+rwxt"}
- {mntp: /var, lvname: varlv, lvsize: 7g, fstype: ext4, owner: root, group: root, mode: "755"}
disk:
- {device: /dev/sda, pvname: /dev/sda2}
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
---
oracle_sw_patches:
- filename: p36233126_190000_Linux-x86-64.zip
patchid: 36233126
version: 19.3.0.0
description: GI RELEASE UPDATE 19.23.0.0.0
- filename: p35940989_190000_Linux-x86-64.zip
patchid: 35940989
version: 19.3.0.0
description: GI RELEASE UPDATE 19.22.0.0.0
- filename: p33182768_190000_Linux-x86-64.zip
patchid: 33182768
version: 19.3.0.0
description: DB RELEASE UPDATE 19.13.0.0.0
- filename: cvupack_linux_ol7_x86_64.zip
patchid: 30839369
version: 21.0.0.0
description: Latest cluvfy
15 changes: 15 additions & 0 deletions example/rac/ansible/inventory/rac/group_vars/all/passwords.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
---
#
# IMPORTANT!!!!
#
# Do not forget to encrypt this file or entries with ansible-vault.
#
default_dbpass: Oracle_123
default_gipass: Oracle_123

dbpasswords:
DB1:
sys: Oracle_123
system: Oracle_123
dbsnmp: Oracle_456
pdbadmin: Oracle_456
19 changes: 19 additions & 0 deletions example/rac/ansible/inventory/rac/group_vars/all/software_src.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
---
is_sw_source_local: true
oracle_sw_copy: true
oracle_sw_unpack: true

# directory for patch download
oracle_sw_source_local: /vagrant

# Directory for Installation-Media
oracle_stage_remote: /vagrant

# Directory for response files, extraceted patches etc.
oracle_stage: /u01/stage

# Example for Remote NFS
# install_from_nfs: true # Mount NFS-Share?
# nfs_server_sw: 192.168.56.99 # NFS-Server
# nfs_server_sw_path: /sw # NFS-Share
# oracle_stage_remote: /u01/se # local mount point for NFS share
Loading

0 comments on commit 277325a

Please sign in to comment.