Oracle Real Application Clusters (RAC) 12c Best Practices

40
11/20/13 1 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 1 Oracle Real Application Clusters (RAC) 12c Best Practices Markus Michalewicz Director of Product Management Oracle Real Application Clusters (RAC)

Transcript of Oracle Real Application Clusters (RAC) 12c Best Practices

Page 1: Oracle Real Application Clusters (RAC) 12c Best Practices

11/20/13&

1&

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 1

Oracle Real Application Clusters (RAC) 12c Best Practices Markus Michalewicz Director of Product Management Oracle Real Application Clusters (RAC)

Page 2: Oracle Real Application Clusters (RAC) 12c Best Practices

11/20/13&

2&

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 3

Safe Harbor Statement

The following is intended to outline our general product direction. It is intended for information purposes only, and may not be incorporated into any contract. It is not a commitment to deliver any material, code, or functionality, and should not be relied upon in making purchasing decisions. The development, release, and timing of any features or functionality described for Oracle’s products remains at the sole discretion of Oracle.

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 4

Agenda

!  Oracle RAC 12c and Standardization

!  Preparation of the Servers for Oracle RAC 12c

!  Installation of Oracle Grid Infrastructure 12c

!  Installation of the Oracle Database Home

!  Oracle (RAC) Database Creation using DBCA

!  Post-install Steps and Configuration

!  Summary and Q&A

!  Appendices A-C

Page 3: Oracle Real Application Clusters (RAC) 12c Best Practices

11/20/13&

3&

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 5

Standardize on Clusters Clusters increase scalability and HA regardless of DB types used later

Oracle GI

Oracle GI

Oracle GI for a Cluster

Oracle GI

for a

Cluster

High Availability

Scal

abili

ty

License Costs

Oracle GI

Standalone

Oracle GI Re-configuration

to enable cluster

MOS note: 1584742.1

Support Impact of the

Deprecation Announcement

of Oracle Restart with Oracle

Database 12c

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 6

Standardize on Oracle RAC For all the flexibility you need

Oracle GI DB A DB A

Oracle GI DB A DB A

DB A

Oracle RAC One Node Oracle RAC

Flexibility

Scal

abili

ty

Online

upgrade

DB A

Oracle Restart

Oracle GI Online (rolling) Patch and PSU Application

Page 4: Oracle Real Application Clusters (RAC) 12c Best Practices

11/20/13&

4&

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 7

Standardize on Oracle RAC and Oracle Multitenant The new standard for Oracle Database Consolidation

Oracle GI

Oracle RAC One Node

Consolidation

Agi

lity

Oracle GI

Oracle RAC

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 8

Agenda

!  Oracle RAC 12c and Standardization

!  Preparation of the Servers for Oracle RAC 12c

!  Installation of Oracle Grid Infrastructure 12c

!  Installation of the Oracle Database Home

!  Oracle (RAC) Database Creation using DBCA

!  Post-install Steps and Configuration

!  Summary and Q&A

!  Appendices A-C

Page 5: Oracle Real Application Clusters (RAC) 12c Best Practices

11/20/13&

5&

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 9

Preparation of the Servers

!  Setup of the Servers include: –  Setting up network connections

!  Public and private with switch

–  Setting up shared storage for all servers !  Shared storage required

–  Setting up the OS image – here OL 6.4

!  Suggestion: –  Use cloning to deploy OS images faster vixen comet

dancer dasher OS OL 6.4 OS OL 6.4

OS OL 6.4 OS OL 6.4

OS image setup and more

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 10

Preparation of the Servers

!  Recommendations: –  Use OL 6.4+ UEK

–  Use the Oracle preinstall package !  Available for

–  Oracle Database 11g Rel. 2

–  Oracle Database 12c Rel. 1

–  Additional steps to perform after using the pre-install package for an Oracle RAC cluster:

!  Add a “grid” user & “dba” group

!  Align UIDs / GUIDs across servers

!  Set SELinux to “permissive”, if possible

!  Check large / huge pages settings

Kernel and Oracle preinstall package

[root@dasher ~]# uname –a Linux dasher 2.6.39-400.17.1.el6uek.x86_64 #1 SMP Fri Feb 22 18:16:18 PST 2013 x86_64 x86_64 x86_64 GNU/Linux #Get the pre-install package [root@dasher Desktop]# yum list oracle-* oracle-rdbms-server-11gR2-preinstall.x86_64 1.0-7.el6 ol6_latest oracle-rdbms-server-12cR1-preinstall.x86_64 1.0-8.el6 ol6_latest

Page 6: Oracle Real Application Clusters (RAC) 12c Best Practices

11/20/13&

6&

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 11

Agenda

!  Oracle RAC 12c and Standardization

!  Preparation of the Servers for Oracle RAC 12c

!  Installation of Oracle Grid Infrastructure 12c

!  Installation of the Oracle Database Home

!  Oracle (RAC) Database Creation using DBCA

!  Post-install Steps and Configuration

!  Summary and Q&A

!  Appendices A-C

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 12

Install Oracle Grid Infrastructure 12c What is the default when keeping the preselection in steps 1-4…?

!  GI for a Cluster Installation

!  Standard Cluster

!  Typical Installation

Page 7: Oracle Real Application Clusters (RAC) 12c Best Practices

11/20/13&

7&

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 13

Install Oracle Grid Infrastructure 12c Step 3: Double-check the cluster topology to deploy!

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 14

Oracle Flex Cluster The new standard for resource management in the cluster

DB A DB A

DB A DB B

DB B

Hub Nodes

Leaf Nodes

!  Oracle Flex Cluster: –  The new standard for flexible

resource management in the cluster !  Use it as demand requires it

!  Inherits all Flex ASM HA capabilities

!  Will support more use cases in future

–  Efficient High Availability and resource management across tiers

!  Lightweight cluster stack on leaf nodes

–  Benefit from virtualization and physical deployments in one cluster

Page 8: Oracle Real Application Clusters (RAC) 12c Best Practices

11/20/13&

8&

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 15

Install Oracle Grid Infrastructure 12c For now, “Standard Cluster” is the default given the preselection

!  Oracle Flex Cluster –  Can consist of only HUB-nodes

!  If a Leaf-node has access to shared storage, it can perform a role change to a HUB-node

–  A Standard Cluster can be converted to a Flex Cluster at any time after the installation

!  Once a cluster is configured as a Flex Cluster this configuration is irreversible without a re- configuration of the cluster.

!  Recommendation: –  An all-HUB-node Flex Cluster behaves the

same as a Standard Cluster using Flex ASM.

–  Either can be used, but if in doubt, you can choose standard cluster and convert later.

More Information in Appendix A

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 16

Install Oracle Grid Infrastructure 12c Step 4: Do not accept the default – choose “Advanced Installation”

!  Typical Installation

–  Does not provide an option to use “Flex ASM”

–  Does not provide an option to create the “Mgmt DB / Grid Infrastructure Management Repository”

!  Enhancement Requests for later releases have been filed already

!  Advanced Option –  Recommended for all configurations

Page 9: Oracle Real Application Clusters (RAC) 12c Best Practices

11/20/13&

9&

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 17

Install Oracle Grid Infrastructure 12c “Advanced Installation” – SCAN & GNS requirement

!  Recommendations: –  SCAN remains to be required for the cluster

–  Choose cluster-specific unique SCAN names

–  OUI will try to enforce it as much as possible

!  http://www.oracle.com/technetwork/products/ clustering/overview/scan-129069.pdf

–  Choose “Configure GNS” if:

!  You want to use dynamic IP management (DHCP assigned / IPv6 Stateless Address Autoconfiguration) for client connectivity

–  In this case, GNS requirements remain as with previous version for standard cluster

!  You chose to install an Oracle Flex Cluster

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 18

Install Oracle Grid Infrastructure 12c “Advanced Installation” – Network Interface Usage

!  Recommendations: –  Use “Redundant Interconnect Usage” feature

!  Bonding can be used underneath if required

!  MOS notes explain further configuration – e.g.: –  MOS note 1210883.1 - 11gR2 Grid

Infrastructure Redundant Interconnect and ora.cluster_interconnect.haip

•  It is recommended to align the ASM network with the private interconnect. •  Using different subnets for the private interconnect is required.

Page 10: Oracle Real Application Clusters (RAC) 12c Best Practices

11/20/13&

10&

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 19

Install Oracle Grid Infrastructure 12c “Advanced Installation” – Grid Infrastructure Management Repository

!  Grid Infrastructure Management Repository (GIMR) –  A Single Instance Oracle Database 12c

–  It will be installed on one of the nodes !  It is managed as a failover database

–  It contains the Cluster Health Monitor (CHM) data

–  It is stored in the first ASM disk group created

–  As part of the configuration, Quality of Service Management (QoS) required resources are added to the cluster configuration (e.g. OC4J)

!  Recommendation: configure the GIMR!

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 20

Install Oracle Grid Infrastructure 12c “Advanced Installation” – Storage Options

!  For Standard Cluster Installations three storage options are available:

1.  Standard ASM

!  ASM configuration as known from previous releases

2.  Oracle Flex ASM

!  Recommended option available with Oracle Grid Infrastructure 12c

–  Flex Cluster requires Flex ASM

3.  Shared File System

!  Alternative

Page 11: Oracle Real Application Clusters (RAC) 12c Best Practices

11/20/13&

11&

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 21

Oracle ASM 12c – Overview Oracle ASM 12c Standard Deployment

ASM Cluster Pool of Storage

Disk Group B Disk Group A Shared Disk Groups Wide File Striping

One to One Mapping of ASM Instances to Servers

ASM Instance

Database Instance

ASM Disk

RAC Cluster

Node4 Node3 Node2 Node1 Node5 ASM ASM ASM ASM ASM

ASM Instance

Database Instance

DBA DBA DBC DBB DBB DBB

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 22

Introducing Oracle Flex ASM Removal of One to One Mapping and HA

ASM Cluster Pool of Storage

Disk Group B Disk Group A Shared Disk Groups Wide File Striping

Databases share ASM instances

ASM Instance

Database Instance

ASM Disk

RAC Cluster

Node5 Node4 Node3 Node2 Node1

Node5 runs as ASM Client to Node4

Node1 runs as ASM Client to Node2

Node1 runs as ASM Client to Node4

Node2 runs as ASM Client to Node3

ASM ASM ASM

ASM Instance

DBA DBA DBC DBB DBB DBB

Page 12: Oracle Real Application Clusters (RAC) 12c Best Practices

11/20/13&

12&

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 23

Install Oracle Grid Infrastructure 12c Use Oracle Flex ASM for storage management

!  Recommendations: –  Use Oracle Flex ASM for storage

!  For better HA of database instances

!  Reserve per-node spare memory

[GRID]> ps -ef |grep pmon grid 3822 1 0 08:05 ? 00:00:00 asm_pmon_+ASM1 grid 4865 1 0 08:06 ? 00:00:00 mdb_pmon_-MGMTDB grid 9592 1 0 08:09 ? 00:00:00 apx_pmon_+APX1 grid 19114 19003 0 09:22 pts/0 00:00:00 grep pmon

More Information in Appendix B

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 24

Install Oracle Grid Infrastructure 12c “Advanced Installation” – Create ASM Disk Group

!  Recommendations: –  Create Infrastructure Disk Group (DG) first

!  Use it to host OCR / Voting Disk –  Choose Redundancy accordingly

–  Normal (+) redundancy is recommended

–  Create Data and FRA disk groups post installation and as required.

!  Optional: Use it to host shared DB homes by creating an ACFS file system on top of it

–  http://www.oracle.com/technetwork/products/cloud-storage/oop-patching-of-acfs-shared-oh-1885763.pdf

–  ADVM volumes can be of lower redundancy than the underlying DG

Page 13: Oracle Real Application Clusters (RAC) 12c Best Practices

11/20/13&

13&

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 25

Install Oracle Grid Infrastructure 12c “Advanced Installation” – Prerequisite Checks Part 1

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 26

New Memory Requirements Just something to consider

[GRID]> srvctl status asm ASM is running on comet,dasher,dancer [GRID]> srvctl status mgmtdb Database is enabled Instance -MGMTDB is running on node dasher [GRID]> ps -ef |grep pmon grid 3227 1 0 13:54 ? 00:00:02 asm_pmon_+ASM1 grid 3868 1 0 13:55 ? 00:00:01 mdb_pmon_-MGMTDB grid 7364 1 0 13:57 ? 00:00:01 apx_pmon_+APX1 oracle 7917 1 0 13:57 ? 00:00:02 ora_pmon_raccdb1_4 [RAC]> df -h Filesystem Size Used Avail Use% Mounted on ... tmpfs 1.7G 1.3G 475M 73% /dev/shm ...

Physical memory requirements with Oracle RAC 12c: 4GB

Page 14: Oracle Real Application Clusters (RAC) 12c Best Practices

11/20/13&

14&

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 27

Install Oracle Grid Infrastructure 12c “Advanced Installation” – Prerequisite Checks Part 2

Do fix later!

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 28

Agenda

!  Oracle RAC 12c and Standardization

!  Preparation of the Servers for Oracle RAC 12c

!  Installation of Oracle Grid Infrastructure 12c

!  Installation of the Oracle Database Home

!  Oracle (RAC) Database Creation using DBCA

!  Post-install Steps and Configuration

!  Summary and Q&A

!  Appendices A-C

Page 15: Oracle Real Application Clusters (RAC) 12c Best Practices

11/20/13&

15&

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 29

Install the Oracle Database Home Nothing special – just a quick walk through

Not the default…

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 30

Install the Oracle Database Home A few things to point out

ACFS based shared home …

Page 16: Oracle Real Application Clusters (RAC) 12c Best Practices

11/20/13&

16&

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 31

Before Creating Databases Create Server Pools and additional disk groups as required

[GRID]$ srvctl add srvpool –serverpool backoffice –min 1 –max 2 –i 1 [GRID]$ srvctl add srvpool –serverpool frontoffice –min 1 –max 4 –i 2

Create additional disk groups as required.

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 32

Agenda

!  Oracle RAC 12c and Standardization

!  Preparation of the Servers for Oracle RAC 12c

!  Installation of Oracle Grid Infrastructure 12c

!  Installation of the Oracle Database Home

!  Oracle (RAC) Database Creation using DBCA

!  Post-install Steps and Configuration

!  Summary and Q&A

!  Appendices A-C

Page 17: Oracle Real Application Clusters (RAC) 12c Best Practices

11/20/13&

17&

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 33

Create an Oracle Database What is the default when keeping the preselection in steps 1-4…?

!  Policy-managed

!  Oracle RAC-based

!  Non-CDB Database

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 34

Create an Oracle RAC Database A few tips and tricks…

Create an empty multitenant CDB.

Page 18: Oracle Real Application Clusters (RAC) 12c Best Practices

11/20/13&

18&

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 35

Create an Oracle RAC Database A few tips and tricks…

This is the default…, but not recommended

!  Recommendations: –  Use a different disk group than the “database file

location”-disk group as the Fast Recovery Area.

–  Automatic Storage Management (ASM) recommendation remains unchanged

!  Use it for any current production database

!  New in Oracle Database 12c: ACFS can be used to host database files

–  Use ACFS for database files, if you want to

!  manage “all data” on a file system

!  use advanced functionality such as

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 36

Milestone What has been installed and configured so far?

vixen srvpool: frontoffice comet srvpool: backoffice

dancer srvpool: backoffice dasher srvpool: frontoffice

OS OL 6.4 OS OL 6.4

OS OL 6.4 OS OL 6.4

Oracle GI for a cluster Oracle GI for a cluster

Oracle GI for a cluster Oracle GI for a cluster

Oracle RAC Oracle RAC

Oracle RAC Oracle RAC

raccdb1

raccdb1_2

raccdb1_1

[RAC]> srvctl status database -d raccdb1 Instance raccdb1_1 is running on node comet Instance raccdb1_2 is running on node dancer [RAC]>srvctl status srvpool -serverpool backoffice -detail Server pool name: backoffice Active servers count: 2 Active server names: comet,dancer NAME=comet STATE=ONLINE NAME=dancer STATE=ONLINE [RAC]> srvctl status srvpool Server pool name: Free Active servers count: 0 Server pool name: Generic Active servers count: 0 Server pool name: backoffice Active servers count: 2 Server pool name: frontoffice Active servers count: 2

Page 19: Oracle Real Application Clusters (RAC) 12c Best Practices

11/20/13&

19&

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 37

Create Pluggable Databases Create HR PDB on running instances

vixen srvpool: frontoffice comet srvpool: backoffice

dancer srvpool: backoffice dasher srvpool: frontoffice Oracle GI for a cluster Oracle GI for a cluster

Oracle GI for a cluster Oracle GI for a cluster

Oracle RAC Oracle RAC

Oracle RAC Oracle RAC

raccdb1

raccdb1_2

raccdb1_1

Create a PDB on a node that hosts a multintenant

CDB instance

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 38

Create Pluggable Databases Create CRM PDB on running instances

vixen srvpool: frontoffice comet srvpool: backoffice

dancer srvpool: backoffice dasher srvpool: frontoffice Oracle GI for a cluster Oracle GI for a cluster

Oracle GI for a cluster Oracle GI for a cluster

Oracle RAC Oracle RAC

Oracle RAC Oracle RAC

raccdb1

raccdb1_2

raccdb1_1

Page 20: Oracle Real Application Clusters (RAC) 12c Best Practices

11/20/13&

20&

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 39

Agenda

!  Oracle RAC 12c and Standardization

!  Preparation of the Servers for Oracle RAC 12c

!  Installation of Oracle Grid Infrastructure 12c

!  Installation of the Oracle Database Home

!  Oracle (RAC) Database Creation using DBCA

!  Post-install Steps and Configuration

!  Summary and Q&A

!  Appendices A-C

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 40

Post-Creation Steps Create services to balance the workload – part 1

vixen srvpool: frontoffice comet srvpool: backoffice

dancer srvpool: backoffice dasher srvpool: frontoffice Oracle GI for a cluster Oracle GI for a cluster

Oracle GI for a cluster Oracle GI for a cluster

Oracle RAC Oracle RAC

Oracle RAC Oracle RAC

raccdb1

raccdb1_2

raccdb1_1 [RAC]> srvctl add service -d raccdb1 -s hrsvc -pdb hr -serverpool backoffice [RAC]> srvctl add service -d raccdb1 -s crmsvc -pdb crm -serverpool frontoffice

!  Dynamic Database Services –  For easier management of multitenant CDBs

–  For better workload management in the cluster

!  Start services after creation and as required

Page 21: Oracle Real Application Clusters (RAC) 12c Best Practices

11/20/13&

21&

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 41

!  Pluggable Databases –  By default are in mount status after creation

–  They need to be opened in either r/o or w/r

–  Startup and distribution of Pluggable databases can be automated and optimized using services

Post-Creation Steps Create services to balance the workload – part 2

vixen srvpool: frontoffice comet srvpool: backoffice

dancer srvpool: backoffice dasher srvpool: frontoffice Oracle GI for a cluster Oracle GI for a cluster

Oracle GI for a cluster Oracle GI for a cluster

Oracle RAC Oracle RAC

Oracle RAC Oracle RAC

raccdb1

raccdb1_3

raccdb1_4 raccdb1_2

raccdb1_1

[RAC]> srvctl status database -d raccdb1 Instance raccdb1_1 is running on node comet Instance raccdb1_2 is running on node dancer Instance raccdb1_3 is running on node vixen Instance raccdb1_4 is running on node dasher [RAC]> srvctl status service -d raccdb1 Service crmsvc is running on nodes: vixen,dasher Service hrsvc is running on nodes: comet,dancer

More Information in Appendix C

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 42

Post-Install Steps Check your environment regularly using CVU and RACcheck

#CVU is run regularly by default [GRID]> srvctl status cvu CVU is enabled and running on node comet

!  CVU is run regularly as part of the GI stack !  Use RACcheck - RAC Configuration Audit Tool

–  For details see MOS note 1268927.1

–  New features in 2.2.2 included (latest version 2.2.3): !  Execution as the root user for sysadmin

profile e.g. ./raccheck -profile sysadmin

!  RACcheck daemon feature to automate execution of RACcheck non-interactively at predefined interval

!  Support for Solaris Sparc 11

!  Upgrade best practices for 11.2.0.3, 11.2.0.4 and Oracle Database 12c

!  Standard health check is now included in post upgrade

Page 22: Oracle Real Application Clusters (RAC) 12c Best Practices

11/20/13&

22&

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 43

Log Collection Essentials

dasher

comet

Use Trace File Analyzer (TFA) to collect Data

!  Goals –  Improved comprehensive first

failure diagnostics collection

–  Efficient collection, packaging and transfer of data for customers

–  Reduce round trips between customers and Oracle

–  Supports 10.2, 11.1, 11.2 and 12.1

–  Included in the 11.2.0.4 patch set and future versions – including 12c

Oracle GI Oracle RAC

Oracle GI Oracle RAC

LOGs

LOGs TFA

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 44

Log Collection Essentials

dasher

comet

Use Trace File Analyzer (TFA) to collect Data

!  Approach –  Collect for all relevant components

(OS, Grid Infrastructure, ASM, RDBMS)

–  One command to collect all information

–  Prune large files based on temporal criteria

–  Collect time relevant IPS (incident) packages on RAC nodes

–  Collect time relevant CHM/OS, OSWatcher data on all Oracle RAC nodes

–  On-demand (default) and Event Driven diagnostic collections !  TFA Collector – MOS note ID 1513912.1

Oracle GI Oracle RAC

Oracle GI Oracle RAC

LOGs

LOGs TFA

Page 23: Oracle Real Application Clusters (RAC) 12c Best Practices

11/20/13&

23&

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 45

TFA – Usage Example

Sending diagcollect request to host : myhost2 Getting list of files satisfying time range [Tue Sep 03 14:17:43 PDT 2013, Tue Sep 03 18:17:43 PDT 2013] myhost1: Zipping File: /opt/oracle/oak/oswbb/archive/oswiostat/myhost1_iostat_13.09.03.1500.dat.gz myhost1: Zipping File: /u01/app/oracle/diag/rdbms/bill/bill1/trace/alert_bill1.log Trimming file : /u01/app/oracle/diag/rdbms/bill/bill1/trace/alert_bill1.log with original file size : 109kB myhost1: Zipping File: /opt/oracle/oak/oswbb/archive/oswtop/myhost1_top_13.09.03.1500.dat.gz myhost1: Zipping File: /opt/oracle/oak/log/myhost1/oak/oakd.log Trimming file : /opt/oracle/oak/log/myhost1/oak/oakd.log with original file size : 9.2MB myhost1: Zipping File: /u01/app/11.2.0.3/grid/log/myhost1/gipcd/gipcd.log myhost1: Zipping File: /u01/app/11.2.0.3/grid/log/myhost1/agent/ohasd/oraagent_grid/oraagent_grid.log Trimming file : /u01/app/11.2.0.3/grid/log/myhost1/agent/ohasd/oraagent_grid/oraagent_grid.log with original filesize 4.3MB myhost1: Zipping File: /var/log/messages …Truncated for brevity myhost1: Zipping File: /opt/oracle/oak/oswbb/archive/oswslabinfo/myhost1_slabinfo_13.09.03.1800.dat Collecting ADR incident files... Total Number of Files checked : 10543 Total Size of all Files Checked : 3.9GB Number of files containing required range : 68 Total Size of Files containing required range : 129MB Number of files trimmed : 10 Total Size of data prior to zip : 144MB Saved 63MB by trimming files Zip file size : 8.6MB Total time taken : 47s. Logs are collected to: /opt/oracle/tfa/tfa_home/repository/collection_Tue_Sep_3_18_17_24_PDT_2013_node_all/myhost1.tfa_Tue_Sep_3_18_17_24_PDT_2013.zip /opt/oracle/tfa/tfa_home/repository/collection_Tue_Sep_3_18_17_24_PDT_2013_node_all/myhost2.tfa_Tue_Sep_3_18_17_24_PDT_2013.zip

OS Watcher files

Pruning

47 seconds! – 1 command, 2 nodes, 4 databases, ASM, Clusterware, OS

Relevant files only

$ sudo ./tfactl diagcollect

144MB pruned and compressed down to 8.6MB

One simple command

ADR Incident files

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 46

Post-Install Steps Monitor best practices notes and announcements

!  RACcheck - RAC Configuration Audit Tool –  For details see MOS note 1268927.1

!  Great, but as any tool, RACcheck has a release cycle

!  Best practices My Oracle Support (MOS) notes: –  MOS note 810394.1 - RAC and Oracle Clusterware Best Practices and Starter Kit (Platform Independent)

!  MOS note 811306.1 - RAC and Oracle Clusterware Best Practices and Starter Kit (Linux)

!  MOS note 811280.1 - RAC and Oracle Clusterware Best Practices and Starter Kit (Solaris)

–  Note: Engineered Systems with the same OS will have additional recommendations

!  MOS note 811271.1 - RAC and Oracle Clusterware Best Practices and Starter Kit (Windows)

!  MOS note 811303.1 - RAC and Oracle Clusterware Best Practices and Starter Kit (HP-UX)

!  MOS note 811293.1 - RAC and Oracle Clusterware Best Practices and Starter Kit (AIX) !  MOS note 1452965.2 –

–  Information Center: Oracle Scalability Grid Infrastructure / Clusterware and Real Application Clusters (RAC)

Page 24: Oracle Real Application Clusters (RAC) 12c Best Practices

11/20/13&

24&

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 47

Agenda

!  Oracle RAC 12c and Standardization

!  Preparation of the Servers for Oracle RAC 12c

!  Installation of Oracle Grid Infrastructure 12c

!  Installation of the Oracle Database Home

!  Oracle (RAC) Database Creation using DBCA

!  Post-install Steps and Configuration

!  Summary and Q&A

!  Appendices A-C

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 48

Questions and

Answers

Page 25: Oracle Real Application Clusters (RAC) 12c Best Practices

11/20/13&

25&

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 49

Agenda

!  Oracle RAC 12c and Standardization

!  Preparation of the Servers for Oracle RAC 12c

!  Installation of Oracle Grid Infrastructure 12c

!  Installation of the Oracle Database Home

!  Oracle (RAC) Database Creation using DBCA

!  Post-install Steps and Configuration

!  Summary and Q&A

!  Appendices A-C

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 50

Appendix A: Converting to an Oracle Flex Cluster with Node Conversion Example

Page 26: Oracle Real Application Clusters (RAC) 12c Best Practices

11/20/13&

26&

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 51

Oracle Flex Cluster Some configuration details

!  Oracle Flex Cluster –  Will be the basis for more uses cases

in future releases (for resource mgmt)

–  Can consist of only HUB-nodes

–  If a Leaf-node has access to shared storage, it can perform a role change to a HUB-node

–  A Standard Cluster can be converted to a Flex Cluster at any time after the installation

–  Once a cluster is configured as a Flex Cluster this configuration is irreversible without a re- configuration of the cluster.

!  More Information: –  http://docs.oracle.com/cd/E16655_01/rac.121/e17886/

bigcluster.htm#CWADD92560

[GRID]> crsctl get cluster mode config Cluster is configured as "standard" [GRID]> crsctl get cluster mode status Cluster is running in "standard" mode [GRID]> olsnodes -s -a -t dasher Active Hub Unpinned vixen Active Hub Unpinned dancer Active Hub Unpinned comet Active Hub Unpinned

•  Not a Flex Cluster yet. •  An all-Hub Flex Cluster is

basically a Standard Cluster

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 52

Oracle Flex Cluster Converting to Flex Cluster

!  More Information: –  http://docs.oracle.com/cd/E16655_01/rac.121/e17886/

bigcluster.htm#CHDJGBII

!  Flex Cluster implementations require GNS

!  Converting a Flex Cluster requires a cluster restart –  Use “crsctl stop crs” followed by “crsctl start crs” as root

–  Hence the difference between “status” and “config”

–  Nodes can be restarted in a rolling fashion:

[GRID]> srvctl config gns PRKF-1110 : Neither GNS server nor GNS client is configured on this cluster [GRID]> more /etc/hosts |grep gns 10.1.1.99 mygns mygns.localdomain #Change to root [GRID]> su Password: [GRID]> srvctl add gns -vip mygns [GRID]> srvctl start gns [GRID]> crsctl set cluster mode flex Cluster mode set to "flex » [GRID]> crsctl get cluster mode status Cluster is running in "standard" mode [GRID]> crsctl get cluster mode config Cluster is configured as "flex"

[GRID]> date ; hostname ; crsctl get cluster mode status Sat Sep 14 14:43:45 PDT 2013 dasher Cluster is running in "flex" mode

[GRID]> date ; hostname ; crsctl get cluster mode status Sat Sep 14 14:43:37 PDT 2013 dancer Cluster is running in "standard" mode

Page 27: Oracle Real Application Clusters (RAC) 12c Best Practices

11/20/13&

27&

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 53

Oracle Flex Cluster Standard to Flex Cluster conversion – what has changed?

vixen srvpool: frontoffice comet srvpool: backoffice

dancer srvpool: backoffice dasher srvpool: frontoffice Oracle GI | HUB Oracle GI | HUB

Oracle GI | HUB Oracle GI | HUB

Oracle RAC Oracle RAC

Oracle RAC Oracle RAC

raccdb1

raccdb1_3

raccdb1_4 raccdb1_2

raccdb1_1

[GRID]> crsctl get cluster mode status Cluster is running in "flex" mode [GRID]> olsnodes -a -s -t dasher Active Hub Unpinned vixen Active Hub Unpinned dancer Active Hub Unpinned comet Active Hub Unpinned [RAC]> srvctl status database -d raccdb1 Instance raccdb1_1 is running on node comet Instance raccdb1_2 is running on node dancer Instance raccdb1_3 is running on node vixen Instance raccdb1_4 is running on node dasher

!  Nothing at first glance… –  An all-Hub Flex Cluster behaves

like a Standard Cluster

–  When converting from Standard Cluster all nodes are converted into HUB-nodes

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 54

Oracle Flex Cluster Changing node roles – server vixen becomes a Leaf node

!  More Information: –  http://docs.oracle.com/cd/E16655_01/rac.121/e17886/

bigcluster.htm#BABHCEAE

[GRID]> hostname vixen [GRID]> srvctl config vip -node vixen VIP exists: network number 1, hosting node vixen VIP Name: vixen-vip VIP IPv4 Address: 10.1.1.33 VIP IPv6 Address: [GRID]> crsctl get node role config Node 'vixen' configured role is 'hub' #Change to root … [GRID]> su Password: [GRID]> crsctl set node role leaf CRS-4408: Node 'vixen' configured role successfully changed; restart Oracle High Availability Services for new role to take effect. [GRID]> crsctl stop crs [GRID]> crsctl start crs

[GRID]> crsctl get node role config Node 'vixen' configured role is 'leaf' [GRID]> srvctl config vip -node vixen VIP exists: network number 1, hosting node vixen VIP Name: vixen-vip VIP IPv4 Address: 10.1.1.33 VIP IPv6 Address:

Page 28: Oracle Real Application Clusters (RAC) 12c Best Practices

11/20/13&

28&

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 55

Oracle Flex Cluster Node role change to Leaf – what has changed?

vixen srvpool: FREE comet srvpool: backoffice

dancer srvpool: backoffice dasher srvpool: frontoffice Oracle GI | HUB Oracle GI | HUB

Oracle GI | LEAF Oracle GI | HUB

Oracle RAC Oracle RAC

Oracle RAC Oracle RAC

raccdb1

raccdb1_4 raccdb1_2

raccdb1_1 [RAC]> srvctl status database -d raccdb1 Instance raccdb1_1 is running on node comet Instance raccdb1_2 is running on node dancer Instance raccdb1_4 is running on node dasher [RAC]> srvctl status server -servers vixen -detail Server active pools: Free Server name: vixen Server state: ONLINE Server state details:

!  Server vixen has converted to a Leaf node !  Leaf nodes do not host DB instances in 12.1 !  Server vixen moved to Server Pool “FREE” as

Server Pool “frontoffice” is a database pool –  Note: all nodes in this example have access

to shared storage, which means only the node role changes – storage access is preserved.

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 56

Oracle Flex Cluster Revert role change – server vixen becomes a HUB again

comet srvpool: backoffice

dancer srvpool: backoffice dasher srvpool: frontoffice Oracle GI | HUB Oracle GI | HUB

Oracle GI | HUB

Oracle RAC Oracle RAC

Oracle RAC

raccdb1

raccdb1_4 raccdb1_2

raccdb1_1

vixen srvpool: frontoffice Oracle GI | HUB

Oracle RAC

raccdb1_3

#As root [GRID]> crsctl set node role hub CRS-4408: Node 'vixen' configured role successfully changed; restart Oracle High Availability Services for new role to take effect. [GRID]> crsctl stop crs [GRID]> crsctl start crs [RAC]> srvctl status database -d raccdb1 Instance raccdb1_1 is running on node comet Instance raccdb1_2 is running on node dancer Instance raccdb1_3 is running on node vixen Instance raccdb1_4 is running on node dasher

Page 29: Oracle Real Application Clusters (RAC) 12c Best Practices

11/20/13&

29&

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 57

Appendix B: Oracle Flex ASM – Details and Test Scenarios

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 58

Oracle Flex ASM Configuration details

!  Flex ASM introduces new local resources: –  At least one ASM listener

–  One “proxy_advm” (per node)

!  Used for ACFS access to Flex ASM instances

!  Connections from a database instance to an ASM instance are based on SQLnet using listeners.

–  The listener directs the connection to the least loaded ASM instance based on the load metric it maintains.

–  The connection details are fetched from CSS global data

–  The ASM instance to which the database instance connects to is listed in the database alert log:

!  NOTE: ASMB connected to ASM instance +ASM1 (Flex mode; client id 0x10004)

–  The userid and password supplied are also managed automatically. They are supplied while establishing the session, not while connecting.

[GRID]> crsctl stat res -t ------------------------------------------------------------------------------- Name Target State Server State details ------------------------------------------------------------------------------- Local Resources -------------------------------------------------------------------------------

ora.ASMNET1LSNR_ASM.lsnr ONLINE ONLINE comet STABLE ONLINE ONLINE dancer STABLE ONLINE ONLINE dasher STABLE ONLINE ONLINE vixen STABLE ... ora.DATA.dg ONLINE ONLINE comet STABLE ONLINE ONLINE dancer STABLE ONLINE ONLINE dasher STABLE OFFLINE OFFLINE vixen STABLE ... ora.INFRA.dg ONLINE ONLINE comet STABLE ONLINE ONLINE dancer STABLE ONLINE ONLINE dasher STABLE OFFLINE OFFLINE vixen STABLE ...

ora.proxy_advm ONLINE ONLINE comet STABLE ONLINE ONLINE dancer STABLE ONLINE ONLINE dasher STABLE ONLINE ONLINE vixen STABLE

Page 30: Oracle Real Application Clusters (RAC) 12c Best Practices

11/20/13&

30&

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 59

Oracle Flex ASM Administering Flex ASM

!  Check ASM mode using asmcmd

!  Check where ASM instances are running using srvctl

!  Check the configuration of ASM using srvctl

!  Modify the ASM configuration using srvctl

!  Cluster ASM listener: –  Flex ASM can have its own network or overlap with the

private interconnect network used by RAC DB instances

–  It is recommended to configure a full overlap of the private interconnect and the ASM network in current use cases:

[GRID]> asmcmd ASMCMD> showclustermode ASM cluster : Flex mode enabled

[GRID]> srvctl status asm ASM is running on comet,dasher,dancer

[GRID]> srvctl config asm -detail ASM home: /u01/app/12.1.0/grid Password file: +INFRA/orapwASM ASM listener: LISTENER ASM is enabled. ASM instance count: 3 Cluster ASM listener: ASMNET1LSNR_ASM,ASMNET2LSNR_ASM

[GRID]> srvctl modify asm -count all

[GRID]> srvctl status asm ASM is running on comet,dasher,dancer

[GRID]> srvctl start asm [GRID]> srvctl status asm ASM is running on comet,vixen,dasher,dancer

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 60

Oracle Flex ASM Some test scenarios…

!  A failure of an ASM instance is without effect for the databases using ASM disk groups (here: -MGMTDB)

–  If an ASM instance is running on all nodes (count all) the ASM instance is restarted upon failure

–  If an ASM instance is running on a subset of nodes the ASM instance might be restarted on another node

–  The client using the ASM instance may change

!  A failure of an ASM instance is without effect for the APX (ADVM proxy) running on the same node

!  A failure of the APX will lead to a restart of the database instance (on the node) that uses an ACFS file system.

!  More information: –  http://docs.oracle.com/cd/E16655_01/server.121/e17612/

asminst.htm#OSTMG95329

[GRID]> ps -ef |grep pmon grid 3840 1 0 09:11 ? 00:00:01 mdb_pmon_-MGMTDB grid 4093 1 0 11:35 ? 00:00:00 asm_pmon_+ASM1 grid 4548 1 0 11:36 ? 00:00:00 apx_pmon_+APX1 oracle 5092 1 0 11:36 ? 00:00:00 ora_pmon_raccdb1_4 [GRID]> kill -9 4093 [GRID]> ps -ef |grep pmon grid 3840 1 0 09:11 ? 00:00:01 mdb_pmon_-MGMTDB grid 4548 1 0 11:36 ? 00:00:00 apx_pmon_+APX1 oracle 5092 1 0 11:36 ? 00:00:00 ora_pmon_raccdb1_4 [GRID]> ps -ef |grep pmon grid 3840 1 0 09:11 ? 00:00:01 mdb_pmon_-MGMTDB grid 4548 1 0 11:36 ? 00:00:00 apx_pmon_+APX1 oracle 5092 1 0 11:36 ? 00:00:00 ora_pmon_raccdb1_4 grid 5748 1 0 11:39 ? 00:00:00 asm_pmon_+ASM1 grid 5793 19013 0 11:39 pts/1 00:00:00 grep pmon [GRID]> asmcmd lsct data DB_Name Status Software_Version Compatible_version Instance_Name Disk_Group +APX CONNECTED 12.1.0.1.0 12.0.0.0.0 +APX1 DATA

[GRID]> ssh vixen /u01/app/12.1.0/grid/bin/asmcmd lsct data DB_Name Status Software_Version Compatible_version Instance_Name Disk_Group +APX CONNECTED 12.1.0.1.0 12.0.0.0.0 +APX2 DATA +APX CONNECTED 12.1.0.1.0 12.0.0.0.0 +APX3 DATA

Page 31: Oracle Real Application Clusters (RAC) 12c Best Practices

11/20/13&

31&

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 61

Appendix C: Policy-Managed Databases and with Oracle RAC 12c

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 62

Policy-Managed Databases with Oracle RAC 12c Database Services

vixen srvpool: frontoffice

dancer srvpool: backoffice dasher srvpool: frontoffice Oracle GI | HUB Oracle GI | HUB

Oracle GI | HUB

Oracle RAC Oracle RAC

Oracle RAC

raccdb1

raccdb1_3

raccdb1_4 raccdb1_2

[GRID]> srvctl status serverpool Server pool name: frontoffice Active Servers count: 2 Server pool name: backoffice Active Servers count: 2 [RAC]> srvctl status service -d raccdb1 Service crmsvc is running on nodes: dasher,vixen Service hrsvc is running on nodes: comet,dancer

!  Database Services –  Ensure that workload is hosted in the respective

server pool with the cardinality defined as part of the policy definition.

comet srvpool: backoffice Oracle GI | HUB

Oracle RAC

raccdb1_1

Page 32: Oracle Real Application Clusters (RAC) 12c Best Practices

11/20/13&

32&

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 63

Policy-Managed Databases with Oracle RAC 12c Improved HA Management - Startup

raccdb1

[GRID]> srvctl config serverpool Server pool name: frontoffice Importance: 10, Min: 2, Max 2 Server pool name: backoffice Importance: 5, Min: 1, Max 1 Server pool name: Free Importance: 0, Min: 0, Max -1

!  Defining a Service Startup Order –  Ensure services are started in specified groups

and specified order.

–  Leverages Serverpool Min and Importance properties

dasher srvpool: frontoffice Oracle GI | HUB

Oracle RAC

raccdb1_4

1st

vixen srvpool: frontoffice Oracle GI | HUB

Oracle RAC

raccdb1_3

2nd

comet srvpool: backoffice Oracle GI | HUB

Oracle RAC

raccdb1_1

4th

dancer srvpool: backoffice Oracle GI | HUB

Oracle RAC

raccdb1_2

3rd

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 64

dancer srvpool: backoffice Oracle GI | HUB

Oracle RAC

raccdb1_2

dancer srvpool: frontoffice Oracle GI | HUB

Oracle RAC

raccdb1_2

Policy-Managed Databases with Oracle RAC 12c Improved HA Management – New Failover Strategy

raccdb1

[GRID]> srvctl config serverpool Server pool name: frontoffice Importance: 10, Min: 2, Max 2 Server pool name: backoffice Importance: 5, Min: 1, Max 1 [GRID]> srvctl status serverpool Server pool name: frontoffice Active Servers count: 2 Server pool name: backoffice Active Servers count: 1

dasher srvpool: frontoffice Oracle GI | HUB

Oracle RAC

raccdb1_4

vixen srvpool: frontoffice Oracle GI | HUB

Oracle RAC

raccdb1_3

comet srvpool: backoffice Oracle GI | HUB

Oracle RAC

raccdb1_1

!  Servers “Move” to Replace Failed node –  Protects against cascade failures due to load

–  Ensures workload isolation between pools

–  Less important workloads shutdown transactionally

Page 33: Oracle Real Application Clusters (RAC) 12c Best Practices

11/20/13&

33&

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 65

dancer srvpool: backoffice Oracle GI | HUB

Oracle RAC

raccdb1_2

dancer srvpool: frontoffice Oracle GI | HUB

Oracle RAC

raccdb1_2

Policy-Managed Databases with Oracle RAC 12c Improved HA Management – Manage Last Service Standing

raccdb1

[RAC]> srvctl config serverpool Server pool name: frontoffice Importance: 10, Min: 2, Max 2 Server pool name: backoffice Importance: 5, Min: 1, Max 1 [RAC]> srvctl status service –db Service crmsrv is running on nodes comet,vixen Service hrsvc is not running

dasher srvpool: frontoffice Oracle GI | HUB

Oracle RAC

raccdb1_4

vixen srvpool: frontoffice Oracle GI | HUB

Oracle RAC

raccdb1_3

comet srvpool: backoffice Oracle GI | HUB

Oracle RAC

raccdb1_1

!  Business Critical Services survive multiple failures –  Most important pool always gets the servers

–  Services preserved across multiple failures

–  Less important workloads shutdown transactionally

comet srvpool: frontoffice Oracle GI | HUB

Oracle RAC

raccdb1_1

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 66

Policy-Managed Databases with Oracle RAC 12c Improved HA Management – Dynamic Provisioning

vixen srvpool: frontoffice

dancer srvpool: backoffice dasher srvpool: frontoffice Oracle GI | HUB Oracle GI | HUB

Oracle GI | HUB

Oracle RAC Oracle RAC

Oracle RAC

raccdb1

raccdb1_3

raccdb1_4 raccdb1_2

[GRID]> srvctl modify serverpool –serverpool backoffice –max 1 [RAC]> srvctl config serverpool Server pool name: frontoffice Importance: 10, Min: 2, Max 4 Server pool name: backoffice Importance: 5, Min: 1, Max 1 [RAC]> srvctl status service –db Service crmsrv is running on nodes dasher,dancer,vixen Service hrsvc is not running

comet srvpool: backoffice Oracle GI | HUB

Oracle RAC

raccdb1_1

!  Add Servers Just-In Time to meet demand –  Server Pools sized via Min and Max properties

–  Dynamically controlled by QoS Management

–  Planned control via Clusterware or QoSM Policies

dancer srvpool: frontoffice Oracle GI | HUB

Oracle RAC

raccdb1_2

Page 34: Oracle Real Application Clusters (RAC) 12c Best Practices

11/20/13&

34&

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 67

Policy-Management with Oracle RAC 12c Support for Multiple Policies tracking business objectives

!  More Information: –  http://docs.oracle.com/cd/E16655_01/rac.121/e17886/pbmgmt.htm

!  New in Oracle Grid Infrastructure 12c –  Server Categories

!  Server Categories use server attributes to allow for an active use of differently sized servers

–  Policy Sets !  Policy Sets allow for dynamic adjustment

to demand changes in an atomic transaction

Server Categories •  NAME •  ACL •  EXPRESSION •  …

Server Attributes •  NAME •  MEMORY_SIZE!•  CPU_COUNT •  CPU_CLOCK_RATE!•  CPU_HYPERTHREADING!•  CPU_EQUIVALENCY • …!

[GRID]> crsctl modify policyset –attr "LAST_ACTIVATED_POLICY=NightTime“ CRS-2673: Attempting to stop 'ora.raccdb1.crmsvc.svc' on 'comet' CRS-2673: Attempting to stop 'ora.raccdb1.crmsvc.svc' on 'dancer' CRS-2677: Stop of 'ora.raccdb1.crmsvc.svc' on 'comet' succeeded CRS-2673: Attempting to start 'ora.raccdb1.backup.svc' on 'comet' CRS-2677: Stop of 'ora.raccdb1.crmsvc.svc' on 'dancer' succeeded CRS-2672: Attempting to start 'ora.raccdb1.hrsvc.svc' on 'dancer‘ …

QoS Management

OR Oracle Clusterware - CRSCTL

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 68

Policy-Management with Oracle RAC 12c Setting up policy sets – Provision Server Pools and creating a PolicySet

!  Add another server pool “backup”

!  Set up policy set with 3 server pools & 3 policies as follows: –  DayTime:

!  frontoffice uses three servers (MIN_SIZE=3)

!  backoffice uses one server (MIN_SIZE=1)

!  backup does not run during daytime (MIN_SIZE=0)

–  NightTime:

!  frontoffice uses one server (MIN_SIZE=1)

!  backoffice uses two servers (MIN_SIZE=2)

!  backup uses only one server (MIN_SIZE=1)

–  Weekend:

!  frontoffice uses one server (MIN_SIZE=1)

!  backoffice uses one server (MIN_SIZE=1)

!  backup uses two servers (MIN_SIZE=2)

[GRID]> srvctl add serverpool –serverpool backup –min 0 –max 2 –importance 20 [GRID] srvctl status serverpool Server pool name: frontoffice Active Servers count: 3 Server pool name: backoffice Active Servers count: 1 Server pool name: backup Active Servers count: 0 [GRID]> crsctl modify policyset -file /u01/app/…/policyset.txt

Page 35: Oracle Real Application Clusters (RAC) 12c Best Practices

11/20/13&

35&

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 69

Policy-Management with Oracle RAC 12c Using Policy Sets – part 1: Activate a policy

!  Activate the policy for the weekend

[GRID]> crsctl modify policyset -attr "LAST_ACTIVATED_POLICY=Weekend" [GRID]> srvctl config serverpool Server pool name: Free Importance: 0, Min: 0, Max: -1 Category: Candidate server names: Server pool name: Generic Importance: 0, Min: 0, Max: -1 Category: Candidate server names: Server pool name: backoffice Importance: 0, Min: 1, Max: 1 Category: Candidate server names: Server pool name: backup Importance: 1, Min: 2, Max: 2 Category: Candidate server names: Server pool name: frontoffice Importance: 0, Min: 1, Max: 1 Category: Candidate server names:

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 70

Policy-Management with Oracle RAC 12c Using Policy Sets – part 2: check the result

vixen srvpool: frontoffice comet srvpool: backup

dancer srvpool: backup dasher srvpool: backoffice Oracle GI | HUB Oracle GI | HUB

Oracle GI | HUB Oracle GI | HUB

Oracle RAC Oracle RAC

Oracle RAC Oracle RAC

raccdb1

raccdb1_3

raccdb1_4 raccdb1_2

raccdb1_1

[RAC]> srvctl status database -d raccdb1 Instance raccdb1_1 is running on node comet Instance raccdb1_2 is running on node dancer Instance raccdb1_3 is running on node vixen Instance raccdb1_4 is running on node dasher [RAC]> srvctl status service -d raccdb1 Service backup is running on nodes: comet,dancer Service crmsvc is running on nodes: vixen Service hrsvc is running on nodes: dasher

!  With an activated weekend policy

Page 36: Oracle Real Application Clusters (RAC) 12c Best Practices

11/20/13&

36&

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 71

Policy-Management with Oracle RAC 12c Adding Server Categories to the picture – part 1

!  Assume you have 2 servers that have better IO –  Use these servers for backups whenever possible

!  Here comet and dancer have better IO by definition

!  What you need to do: –  Set up a server category that identifies the servers

–  Add the use of the server category to the server pool !  Define the server pools that utilize the category

and during which policy activation it shall be used.

!  You need to restart the cluster stack on the servers that you modify in this fashion

[GRID]> su Password: [GRID]> crsctl set server label IOplus ... #On dancer [GRID]> crsctl set server label Ioplus [GRID]> crsctl get server label CRS-4972: Current SERVER_LABEL parameter value is Ioplus [GRID]> crsctl status server comet dancer –f Comet Dancer

NAME=comet MEMORY_SIZE=3338 CPU_COUNT=1 CPU_CLOCK_RATE=2132 CPU_HYPERTHREADING=0 CPU_EQUIVALENCY=1000 DEPLOYMENT=other CONFIGURED_CSS_ROLE=hub RESOURCE_USE_ENABLED=1 SERVER_LABEL=IOplus ...

NAME=dancer MEMORY_SIZE=3338 CPU_COUNT=1 CPU_CLOCK_RATE=2247 CPU_HYPERTHREADING=0 CPU_EQUIVALENCY=1000 DEPLOYMENT=other CONFIGURED_CSS_ROLE=hub RESOURCE_USE_ENABLED=1 SERVER_LABEL=IOplus ...

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 72

Policy-Management with Oracle RAC 12c Adding Server Categories to the picture – part 2

!  What you need to do: –  Set up a server category that identifies the servers -

done –  Add the use of the server category to the server pool

!  Define the server pools that utilize the category and during which policy activation it shall be used

!  Note: Add the server category usage to the server pool(s) that require it & specify the policies that should be altered accordingly

–  In this example the backup server pool is the one that will benefit the most and the policies will only start this server pool as required.

[GRID]> crsctl add category moreIO –attr "EXPRESSION='SERVER_LABEL co IOplus'" [GRID]> crsctl status category moreIO NAME=moreIO ACL=owner:grid:rwx,pgrp:oinstall:rwx,other::r-- ACTIVE_CSS_ROLE=hub EXPRESSION=(SERVER_LABEL co IOplus) [GRID]> crsctl modify serverpool ora.backup -attr "SERVER_CATEGORY=moreIO" -all_policies

Page 37: Oracle Real Application Clusters (RAC) 12c Best Practices

11/20/13&

37&

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 73

Policy-Management with Oracle RAC 12c Adding Server Categories to the picture – comparison

Before After

[GRID]> crsctl status policy DayTime POLICY NAME=DayTime DESCRIPTION= SERVERPOOL NAME=Free ... SERVERPOOL NAME=ora.backoffice IMPORTANCE=0 MAX_SIZE=1 MIN_SIZE=1 SERVER_CATEGORY= SERVER_NAMES= SERVERPOOL NAME=ora.backup IMPORTANCE=0 MAX_SIZE=0 MIN_SIZE=0 SERVER_CATEGORY= SERVER_NAMES= SERVERPOOL NAME=ora.frontoffice IMPORTANCE=0 MAX_SIZE=3 MIN_SIZE=3 SERVER_CATEGORY= SERVER_NAMES=

[GRID]> crsctl status policy DayTime POLICY NAME=DayTime DESCRIPTION= SERVERPOOL NAME=Free ... SERVERPOOL NAME=ora.backoffice IMPORTANCE=0 MAX_SIZE=1 MIN_SIZE=1 SERVER_CATEGORY= SERVER_NAMES= SERVERPOOL NAME=ora.backup IMPORTANCE=0 MAX_SIZE=0 MIN_SIZE=0 SERVER_CATEGORY=moreIO SERVER_NAMES= SERVERPOOL NAME=ora.frontoffice IMPORTANCE=0 MAX_SIZE=3 MIN_SIZE=3 SERVER_CATEGORY= SERVER_NAMES=

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 74

Policy-Management with Oracle RAC 12c Using Policy Sets and the effect of Server Categories

vixen srvpool: frontoffice comet srvpool: backup

dancer srvpool: backup dasher srvpool: backoffice Oracle GI | HUB Oracle GI | HUB

Oracle GI | HUB Oracle GI | HUB

Oracle RAC Oracle RAC

Oracle RAC Oracle RAC

raccdb1

raccdb1_3

raccdb1_4 raccdb1_2

raccdb1_1

vixen srvpool: backoffice comet srvpool: frontoffice

dancer srvpool: frontoffice dasher srvpool: frontoffice Oracle GI | HUB Oracle GI | HUB

Oracle GI | HUB Oracle GI | HUB

Oracle RAC Oracle RAC

Oracle RAC Oracle RAC

raccdb1

raccdb1_3

raccdb1_4 raccdb1_2

raccdb1_1

Page 38: Oracle Real Application Clusters (RAC) 12c Best Practices

11/20/13&

38&

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 75

[GRID]> crsctl modify policyset –attr "LAST_ACTIVATED_POLICY=DayTime“ [GRID] srvctl status serverpool Server pool name: frontoffice Active Servers count: 3 Server pool name: backoffice Active Servers count: 1 Server pool name: backup Active Servers count: 0

[RAC]> srvctl status service -d raccdb1 Service backup is not running. Service crmsvc is running on nodes: dasher,vixen,comet Service hrsvc is running on nodes: dancer

Policy-Management with Oracle RAC 12c Using Policy Sets means changing policies on a push of a button

raccdb1

vixen srvpool: frontoffice Oracle GI | HUB

Oracle RAC

raccdb1_3

dasher srvpool: frontoffice Oracle GI | HUB

Oracle RAC

raccdb1_4

comet srvpool: backup Oracle GI | HUB

Oracle RAC

raccdb1_1

dancer srvpool: backup Oracle GI | HUB

Oracle RAC

raccdb1_2

dancer srvpool: backoffice Oracle GI | HUB

Oracle RAC

raccdb1_2

comet srvpool: frontoffice Oracle GI | HUB

Oracle RAC

raccdb1_1

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 76

Policy-Management with Oracle RAC 12c Using Policy Sets – changing policies on the push of a button is fast …

vixen srvpool: frontoffice comet srvpool: backup

dancer srvpool: backup dasher srvpool: backoffice Oracle GI | HUB Oracle GI | HUB

Oracle GI | HUB Oracle GI | HUB

Oracle RAC Oracle RAC

Oracle RAC Oracle RAC

raccdb1

raccdb1_3

raccdb1_4 raccdb1_2

raccdb1_1

vixen srvpool: backoffice comet srvpool: frontoffice

dancer srvpool: frontoffice dasher srvpool: frontoffice Oracle GI | HUB Oracle GI | HUB

Oracle GI | HUB Oracle GI | HUB

Oracle RAC Oracle RAC

Oracle RAC Oracle RAC

raccdb1

raccdb1_3

raccdb1_4 raccdb1_2

raccdb1_1

[GRID]> date; crsctl modify policyset -attr "LAST_ACTIVATED_POLICY=DayTime"; date Mon Sep 16 19:26:42 PDT 2013 CRS-2673: Attempting to stop 'ora.raccdb1.backup.svc' on 'dancer' CRS-2673: Attempting to stop 'ora.raccdb1.backup.svc' on 'comet' CRS-2677: Stop of 'ora.raccdb1.backup.svc' on 'dancer' succeeded CRS-2677: Stop of 'ora.raccdb1.backup.svc' on 'comet' succeeded CRS-2672: Attempting to start 'ora.raccdb1.crmsvc.svc' on 'dancer' CRS-2672: Attempting to start 'ora.raccdb1.crmsvc.svc' on 'comet' CRS-2676: Start of 'ora.raccdb1.crmsvc.svc' on 'dancer' succeeded CRS-2676: Start of 'ora.raccdb1.crmsvc.svc' on 'comet' succeeded Mon Sep 16 19:26:43 PDT 2013 " Time to execute: 1 second!

Page 39: Oracle Real Application Clusters (RAC) 12c Best Practices

11/20/13&

39&

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 77

Policy-Management with Oracle RAC 12c What-If evaluation of policy changes

[RAC]> srvctl status service -d raccdb1 Service backup is not running. Service crmsvc is running on nodes: dancer,vixen,dasher Service hrsvc is running on nodes: comet [GRID]> crsctl eval activate policy Weekend Stage Group 1: ------------------------------------------------------------------------------- Stage Number Required Action ------------------------------------------------------------------------------- 1 Y Server 'comet' will be moved from pools [ora.frontoffice] to pools [ora.backup] Y Server 'dancer' will be moved from pools [ora.frontoffice] to pools [ora.backup] Y Resource 'ora.raccdb1.crmsvc.svc' (1/1) will be in state [OFFLINE] Y Resource 'ora.raccdb1.crmsvc.svc' (2/1) will be in state [OFFLINE] 2 Y Resource 'ora.raccdb1.backup.svc' (1/1) will be in state [ONLINE|INTERMEDIATE] on server[comet] Y Resource 'ora.raccdb1.backup.svc' (2/1) will be in state [ONLINE|INTERMEDIATE] on server [dancer]

vixen srvpool: frontoffice comet srvpool: frontoffice

dancer srvpool: backoffice dasher srvpool: frontoffice Oracle GI | HUB Oracle GI | HUB

Oracle GI | HUB Oracle GI | HUB

Oracle RAC Oracle RAC

Oracle RAC Oracle RAC

raccdb1

raccdb1_3

raccdb1_4 raccdb1_2

raccdb1_1

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 78

What-If with Oracle RAC 12c What-If evaluation of policy changes – in various levels

[RAC]> srvctl status service -d raccdb1 Service backup is not running. Service crmsvc is running on nodes: dancer,vixen,dasher Service hrsvc is running on nodes: comet [GRID]> crsctl eval activate policy Weekend -admin -l 'serverpools' NAME = Free ACTIVE_SERVERS = NAME = Generic ACTIVE_SERVERS = NAME = ora.backoffice ACTIVE_SERVERS = vixen NAME = ora.backup ACTIVE_SERVERS = comet dancer NAME = ora.frontoffice ACTIVE_SERVERS = dasher

[RAC]> srvctl status service -d raccdb1 Service backup is not running. Service crmsvc is running on nodes: dancer,vixen,dasher Service hrsvc is running on nodes: comet [GRID]> crsctl eval activate policy Weekend -admin -l 'resources' -------------------------------------------------------------------------------- Name Target State Server Effect -------------------------------------------------------------------------------- Cluster Resources -------------------------------------------------------------------------------- ora.mgmtdb 1 ONLINE ONLINE dasher ora.raccdb1.backup.svc 1 ONLINE ONLINE comet Started 2 ONLINE ONLINE dancer Started ora.raccdb1.crmsvc.svc 1 ONLINE OFFLINE Stopped 2 ONLINE OFFLINE Stopped 3 ONLINE ONLINE dasher ora.raccdb1.db 1 ONLINE ONLINE comet 2 ONLINE ONLINE dancer 3 ONLINE ONLINE vixen 4 ONLINE ONLINE dasher ora.raccdb1.hrsvc.svc 1 ONLINE ONLINE vixen 2 ONLINE OFFLINE --------------------------------------------------------------------------------

Page 40: Oracle Real Application Clusters (RAC) 12c Best Practices

11/20/13&

40&

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 79

Policy-Management with Oracle RAC 12c Information on each step on the way

Before After

[GRID]> crsctl modify policyset -attr "LAST_ACTIVATED_POLICY=NightTime“ CRS-2673: Attempting to stop 'ora.raccdb1.crmsvc.svc' on 'dancer' CRS-2673: Attempting to stop 'ora.raccdb1.crmsvc.svc' on 'comet' CRS-2677: Stop of 'ora.raccdb1.crmsvc.svc' on 'dancer' succeeded CRS-2677: Stop of 'ora.raccdb1.crmsvc.svc' on 'comet' succeeded CRS-2672: Attempting to start 'ora.raccdb1.backup.svc' on 'dancer' CRS-2672: Attempting to start 'ora.raccdb1.backup.svc' on 'comet' CRS-2676: Start of 'ora.raccdb1.backup.svc' on 'dancer' succeeded CRS-2676: Start of 'ora.raccdb1.backup.svc' on 'comet' succeeded

[GRID]> crsctl modify policyset -attr "LAST_ACTIVATED_POLICY=DayTime" CRS-2673: Attempting to stop 'ora.raccdb1.backup.svc' on 'dancer' CRS-2673: Attempting to stop 'ora.raccdb1.backup.svc' on 'comet' CRS-2677: Stop of 'ora.raccdb1.backup.svc' on 'dancer' succeeded CRS-2677: Stop of 'ora.raccdb1.backup.svc' on 'comet' succeeded CRS-2672: Attempting to start 'ora.raccdb1.crmsvc.svc' on 'dancer' CRS-2672: Attempting to start 'ora.raccdb1.crmsvc.svc' on 'comet' CRS-2676: Start of 'ora.raccdb1.crmsvc.svc' on 'dancer' succeeded CRS-2676: Start of 'ora.raccdb1.crmsvc.svc' on 'comet' succeeded

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 80