Oracle ASM FLEX (12cR1)

ORACLE ASM FLEX

As we know, the ASM introduces with oracle 10g keeping the goal in terms of manageability of storage for oracle databases. If you have no concepts on ASM then it's time to go back and learn some. Oracle 10g ASM uses the same binaries as RDBMS and other major changes has been added into  oracle 11gR2 where the ASM moves with Grid Infrastructure binaries and comes with ACFS (ASM Clustered File System). The ACFS provides the manageability of all customer data. The 12c ASM comes with the storage manageability for cloud with bundled features.

The 12c introduced Oracle FLEX ASM which provides the cloud computing capabilities for enterprise environments. The databases 12c pre-releases, ASM instances run on each clustered node and tightly coupled with the database instances to provide the shared storage. The problem with this configuration is, if any of the ASM instance will fail or crashed the corresponding database instance  will also crashed(1:1 mapping).
Tightly Coupled ASM Arch


Oracle Flex ASM introduced in oracle database 12c which fundamentally revised the cluster architecture where every node doesn't require ASM instance running on each node and serving the database instance means the ASM and database instances are loosely coupled. The 12c cluster require few ASM instances running on cluster nodes i.e. by default you will get three ASM instances in cluster regardless of its size. The same concepts as SCAN.

The ASM FLEX enables the ASM instance run on separate physical nodes from the database servers. In earlier versions, the database clients connect to ASM using operating system authentication and suited well because of tight coupled architecture. In 12c the clients connect to ASM instances on remote and require the password file for authentication. The password file must be placed on shared locations that is available in ASM diskgroup.  If any of the ASM instance failed, the database instance will failover to any of the least loaded ASM instance.
 
The 12c ASM instances uses a dedicated private interconnect for communication with each other like the methodology used for database private interconnect. You can also use the same interconnect which is configured for database. The installation will provide you with the option for configuring the private interconnect.
ASM Flex Arch. with Failover
 SETTING UP THE ORACLE ASM FLEX
There are two ways to setup and configure the ASM Flex,
i.) During GI installation, Setup and Configure the oracle ASM Flex. 
ii.) Configure ASM Flex after installation using ASMCA.

Lets go with the first option, I am using three guest machines for ASM Flex configuration. Make sure all the required 12c installation prerequisites has been met and guest machines are up and running. if you have not done yet, refer my earlier post Grid Infrastructure Installation 12c (RAC) on Linux 6.4.

Login as grid user and start the runInstaller,
  
The OUI starts and the first window visible as,
  Step 1, select "Skip software updates" and click on "Next"

 Select "Install and Configuure Oracle Grid Infrastructure for a Cluster" and hit "Next" button.



Select "Configure a Standard cluster" and hit "Next" button (Note:- we are working on ASM Flex not Cluster yet)



Select "Advance Installation" and hit "Next" button.


Leave default language and hit "Next" button.



Provide the details like "Cluster Name, Scan Name, SCAN Port" check the "Configure GNS" with VIP and Sub Domain. hit "Next" button.



Step7, Click on Add button and add the public Node2, Node3 and corresponding virtual hostnames. you have option to setup the SSH by clicking "SSH connectivity" and provide the OS username and password. Click "Next" button.



 The next step give you the opportunity to select the interface and their usage. (dedicated eth2 for ASM interconnect) and hit "Next".


Select "No" for grid infrastructure repository (I am not configuring), hit "Next" button.



You have warning for not to configuring the grid infrastructure, decide and hit "Yes" if you agreeing.



The next window is important for us and select "Use Oracle Flex ASM for storage" option and hit "Next" button.



Provide the diskgroup name and select redundancy and select the correct allocation unit. If the disks are not visible, change the discovery string parameter by clicking the "Change Discovery Path". hit "Next" if you satisfied.



Provide the sys and ASMSNMP password by selecting any of the below options. if the password will not match the password recommendation, oracle will prompt you warning. hit "Next" and move.



Select "Do not use IPMI" and move "Next"



Select the groups or leave them default (if displayed correctly).



Provide the "Oracle base" and "Software location" move "Next"



Select the correct "Inventory Directory" and move "Next".



Select the option, if you want to run the "root.sh" scripts automatically,



The next step will do the prerequisite checks, fix any failure before proceeding further.



The next move will give you the opportunity to verify the details and if you are satisfy with the details, hit "Next" button to proceed for installation.



The step will take you to the progressing window, enjoy the coffee while the installation progressing.



When prompted, execute the "root.sh" as instructed and hit "OK" after execution on all the nodes.



You have the successful installation window.



The installation finished successfully, and hit "Close".



Hurray!!! The oracle ASM Flex installation and configuration done. Note: The above is tested on test lab using virtualbox and be extra cautious while implementing it in production environment specially with GNS.


Verification Time:
1.) Once the installation is done, you can verify the ASM flex using showclustermode from asmcmd.




2.) You can also use the srvctl utility to administer and manage the ASM Flex.

3.) You can view the oracle ASM flex client by quering the v$asm_client.


SQL> SELECT instance_name, db_name, status FROM V$ASM_CLIENT;
INSTANCE_NAME   DB_NAME  STATUS
--------------- -------- ------------
+ASM3           +ASM     CONNECTED
orcl1           orcl     CONNECTED
orcl2           orcl     CONNECTED


4.) The database clients are automatically failover to the least loaded available ASM instance but if you are intended to relocate any of the clients manually, use the below syntax,
SQL> alter system relocate client 'client-id';

where client-id -> "instance_name:db_name" query the v$asm_client for the information.

   ** *******************END of Part-I***********************




1 comment: