- name: display pre database software install message remote_user: "{{ root_user }}" debug: msg: - 'Oracle Database Software 19c Installation started for Single Instance at {{ansible_date_time.iso8601}}:' - name: Ensure free space on disk is more than 7.2 GB assert: that: item.size_available > 7200000000 msg: "warning: disk space is low" when: item.mount == mount_directory with_items: "{{ ansible_mounts }}" no_log: true - debug: msg: "checking resource limits" - name: check file descriptor soft limit shell: cmd: ulimit -Sn register: limits - name: --- fail: msg: "warning: file descriptor soft limit is {{ limits.stdout }}" ignore_errors: yes when: limits.stdout | int < 1024 - name: check file descriptor hard limit shell: cmd: ulimit -Hn register: limits - name: --- fail: msg: "warning: file descriptor hard limit is {{ limits.stdout }}" ignore_errors: yes when: limits.stdout | int < 65536 - name: check available processes soft limit shell: cmd: ulimit -Su register: limits - name: --- fail: msg: "warning: available processes soft limit is {{ limits.stdout }}" ignore_errors: yes when: limits.stdout | int < 2047 - name: check available processes hard limit shell: cmd: ulimit -Hu register: limits - name: --- fail: msg: "warning: available processes hard limit is {{ limits.stdout }}" ignore_errors: yes when: limits.stdout | int < 16384 - name: check stack segment soft limit shell: cmd: ulimit -Ss register: limits - name: --- fail: msg: "warning: stack segment soft limit is {{ limits.stdout }}" ignore_errors: yes when: limits.stdout | int < 10240 - name: check stack segment hard limit shell: cmd: ulimit -Hs register: limits - name: --- fail: msg: "warning: stack segment hard limit is {{ limits.stdout }}" ignore_errors: yes when: limits.stdout | int < 10240 or limits.stdout | int > 32768 - name: create required directories when: inventory_hostname in groups['dbservers'] remote_user: "{{ root_user }}" file: path="{{ item }}" state=directory owner="{{ oracle_user }}" group="{{ oracle_install_group }}" mode=0775 with_items: - "{{ root_directory }}" - "{{ scripts_directory }}" - "{{ oracle_inventory }}" - "{{ oracle_base }}" - "{{ stage_dir }}" - "{{ oracle_home }}" - "{{ oracle_datadir }}" - "{{ oracle_fra }}" tags: - db19c_createinventory - name: Unpack Oracle 19c Database Software to the target server when: inventory_hostname in groups['dbservers'] remote_user: "{{ root_user }}" become: yes become_user: "{{ oracle_user }}" unarchive: src: "{{ oracle19c_path }}" dest: "{{ oracle_home }}" remote_src: yes mode: 0775 # group: "{{ oracle_install_group }}" owner: "{{ oracle_user }}" tags: - db19c_unpackdbsoftware - name: Setup Oracle 19c Database Software silent response file when: inventory_hostname in groups['dbservers'] remote_user: "{{ root_user }}" become: yes become_user: "{{ oracle_user }}" template: src=roles/dbsoftware19c_install/templates/{{ oradbsoft_rsp }}.rsp.j2 dest={{ stage_dir }}/{{ oradbsoft_rsp }}.rsp mode=0755 tags: - db19c_setuprspfile - name: Install Oracle 19c Database Software when: inventory_hostname in groups['dbservers'] remote_user: "{{ root_user }}" become: yes become_user: "{{ oracle_user }}" shell: "CV_ASSUME_DISTID=OEL7.6 {{ oracle_home }}/runInstaller -silent -responseFile {{ stage_dir }}/{{ oradbsoft_rsp }}.rsp -noconfig -ignorePrereqFailure" ignore_errors: True tags: - dbsoft19c_install - name: Execute orainstroot.sh when: inventory_hostname in groups['dbservers'] remote_user: "{{ root_user }}" shell: "{{ oracle_inventory }}/orainstRoot.sh" ignore_errors: True tags: - db19c_exeorainstroot - name: Execute root.sh when: inventory_hostname in groups['dbservers'] remote_user: "{{ root_user }}" shell: "{{ oracle_home }}/root.sh -silent" tags: - db19c_exeroot - name: Remove stage directory when: inventory_hostname in groups['dbservers'] file: path={{ stage_dir }} state=absent - name: Ensure /bin exists file: path: ~oracle/bin state: directory owner: oracle group: oinstall mode: '0755' tags: - dbca_mkbin - name: Create Oracle profile when: inventory_hostname in groups['dbservers'] remote_user: "{{ root_user }}" become: yes become_user: "{{ oracle_user }}" template: src=roles/dbsoftware19c_install/templates/{{ profile_script }}.j2 dest=~/bin/{{ profile_script }} mode=0755 tags: - dbca_setupprofile - name: Ensure setEnv.sh is sourced in .bash_profile lineinfile: path: ~{{ oracle_user }}/.bash_profile line: ". ~{{ oracle_user }}/bin/setEnv.sh" state: present create: yes insertafter: EOF remote_user: "{{ root_user }}" become: yes become_user: "{{ oracle_user }}" tags: - dbca_setenvprofile - name: Setup Oracle 19c DBCA silent response file when: inventory_hostname in groups['dbservers'] remote_user: "{{ root_user }}" become: yes become_user: "{{ oracle_user }}" template: src=roles/dbsoftware19c_install/templates/{{ dbca_rsp }}.rsp.j2 dest=/tmp/{{ dbca_rsp }}.rsp mode=0755 tags: - dbca_setuprspfile - name: Creating Oracle 19c Database when: inventory_hostname in groups['dbservers'] remote_user: "{{ root_user }}" become: yes become_user: "{{ oracle_user }}" shell: "{{ oracle_home }}/bin/dbca -createDatabase -silent -responseFile /tmp/{{ dbca_rsp }}.rsp -enableArchive true" ignore_errors: True tags: - dbca_createdatabase