Sunday, August 17, 2014

Oracle EBS 12.2 Installer



I have just been trying to install EBS Suite 12.2 with 11.2.0.3/11.2.0.4 Grid.  It is the worst ever, most painful install ever.

The number of files to be downloaded, the config changes for the servers and just the complexity makes me wonder how many people who've posted that they've done this install to be true!

Here is what I'm trying to do.

2 Node RAC
1 Node Application Tier (I want 2, but starting with 1).

This post will be updated to something sane, once I get through it...though - I'm posting just incase, someone can be saved some of the pain.

System Config
Oracle Linux x86_64
Yum Repo:
Oracle Public and Oracle Addons
[public_ol6_latest]
name=Oracle Linux $releasever Latest ($basearch)
baseurl=http://public-yum.oracle.com/repo/OracleLinux/OL6/latest/$basearch/
gpgkey=http://public-yum.oracle.com/RPM-GPG-KEY-oracle-ol6
gpgcheck=1
enabled=1

[public_ol6_addons]
name=Oracle Linux $releasever Addons ($basearch)
baseurl=http://public-yum.oracle.com/repo/OracleLinux/OL6/addons/$basearch/
gpgkey=http://public-yum.oracle.com/RPM-GPG-KEY-oracle-ol6
gpgcheck=1
enabled=1

RPMs Used:
yum install oracle-rdbms-server-11gR2-preinstall
yum install oracle-ebs-server-R12-preinstall
.>
Other config:
Fix the hosts file to have only the following
127.0.0.1  localhost
  FQDN  DN

For the oracle hosts, when trying to install the Database with the EBS installer, cluvfy will most likely fail because of the network check, dns check or something else (11.2.0.4 cluvfy will successfully complete, the issue is only with 11.2.0.3)

NSLookup Fix

To temporarily fix the nslookup error:
# mv /usr/bin/nslookup /usr/bin/nslookup.orig
# echo '#!/bin/bash
/usr/bin/nslookup.orig $*
exit 0' > /usr/bin/nslookup
# chmod a+x nslookup

Network Check
Once I confirmed that everything was fine with the 11.2.0.4 cluvfy, modify the runcluvfy in the /TechInstallMedia/database/grid directory
The last line, change it as below
# Return the status of executed cluster verification command
exit 0 # new add
#exit $EXEC_STATUS





Thursday, July 10, 2014

Oracle Database Appliance - My case for Solaris


I just got to try out the Oracle database appliance (ODA).  It's supposed to be quick and easy to setup and get it running.  We've run into some intial hiccups, but this is a POC box and I'm not going to give Oracle grief here.

Here are my quick thoughts

Pros:
1.  Extremely easy to setup (hardware perspective)
2.  Very cost effective.
3.  Comes with lots of Storage and now allows expansion into another Storage Shelf.

Cons:

1.  Only Oracle Linux.  No Solaris.
2.  Only one ASM across all the databases.
3.  Patching has to be done in a particular order.  You can't simply patch Db, you need to patch hardware, OS and such, before you get to the Db patching (There is a hierarchy)
4.  When you start patching, depending upon what you're patching, ALL Databases need to be shutdown.  This is very hard to do, especially when you have multiple applications using Dbs hosted on the ODA.

So - where is Solaris and why you ask.

1.  Solaris 10 / 11 allows you to run Oracle RAC clusters in Zones.
2.  With Solaris, you can have Zones running your Oracle RAC, and multiple Oracle RAC instances can be spun up, especially with MULTIPLE ASMs running.  This will immediately allow you to patch your infrastructure one node at a time.
3.  The bonded connections with Solaris 11 makes it incredibly simple to work with.  This link specifically: Network Virtualization High Availability made me think of ODA on Solaris a lot more.
4.  Solaris 11 allows you to add disks to zones without a reboot (a big Solaris 10 limitation).
5.  Zones allow you to CPU cage.
6.  The Hardware is all based off the Sun systems.
7.  You can use ZFS for all OS disks.
8.  You can get away from the clunky OVM DOM0 world that the ODA appliance uses now.
9.  You can effortlessly do virtualization and use the VM Templates.
10.  CloudFS partition would be effortless too - just make a new ZPOOL and you're done!
11.  All this can be tied into Oracle Enterprise Manager & Oracle Ops Center for the hardware.
12.  All the patching can be made so much more effortless.


Tuesday, April 08, 2014

Chef - my journey with the Infrastructure tool - Part 1 of hopefully many more...



Chef is a Infrastructure in Code service, which allows you to define your infrastructure in different files (recipes, Cookbooks, resources etc) and by using Chef - you can build all your servers the exact same way.  The advantage I see with Chef is - it has inbuilt knowledge on how to work with a number of different OS's - so Solaris could have pkgadd, RHEL yum or CentOS apt-get and these would automatically be determined by Chef.

Chef is written in Ruby, and you need to know just some basics of Ruby to get started with Chef.  However, even if you dont know it - you can keep following along - or you can learn what you need for Chef here.

I highly recommend going through the screencasts available at OpsCode - here.

So - here's where I am - I got my workstation (a Mac) setup for Chef. I decided if I was going to learn it, the best spot to try things out is the Amazon cloud - it'll cost me some money, but considering a lot of organizations are moving there, might as well get experience with that as well :)

Amazon does offer a Micro instance for free for 750 hrs - and yes thats what I'm trying to use.

So to get Started, I picked an UBUNTU image which is available on the Amazon Market place.

I played around with Chef - and got Chef talking between Amazon and my desktop +  Enterprise Hosted Chef (free for less than 5 nodes).

Yes - I am getting to the meat now :).

My next target is to be able to Deploy an OS on the Amazon cloud using just Chef.

There's probably a ton of blogs out there with this - so I am adding to it. I'm hoping to detail any issues that I've run into as well as use this blog as my own documentation :)

One of the things to note is that : chef always installs in "/opt/chef" on *nix flavors.  There are too many dependencies, and its not supported if its not there.

First : Install knife-ec2 plugin for Chef.  This is assuming that has already been installed.

/opt/chef/embedded/bin/gem install knife-ec2

Next, get the Amazon EC2 key and access code - its available under your Amazon Account, "Security Credentials" & Access Keys.

You'll also need your Amazon key pair - you can create a new one, or use the existing one you have already.  Its under "Network Security"&  Key Pairs

this is what you'll need to put in the knife.rb file.

### The Key pair with .pem file name. (without the .pem)
knife[:aws_ssh_key_id] = 'KEY_ID' 
#### The Access key id and access key from Amazon account. knife[:aws_access_key_id] = 'ACCESS_KEY_ID' 
knife[:aws_secret_access_key] = 'SECRET_ACCESS_KEY'

Make sure the .pem file has permissions of 400.  Otherwise, the ssh-user wont allow the use of the .pem file.

Monday, April 07, 2014

Solaris 10 x86 - Grub not loading



I have a Solaris 10x86 install which failed all attempts after a reboot with ZFS

After a lot of trial and error, I finally did the below from the Grub menu and it worked.

grub> find /sbin/init
grub> root (hd1,0,a)  <<---this a="" command.="" find="" hd1="" is="" of="" output="" p="" the="">grub> kernel$ /platform/i86pc/multiboot -B $ZFS-BOOTFS
grub>module /platform/i86pc/boot_archive
grub> boot

An example of the menu.lst at /rpool/boot/grub/menu.lst

#---------- ADDED BY BOOTADM - DO NOT EDIT ----------
title Solaris 10 10/09 s10x_u8wos_08a X86
findroot (pool_rpool,0,a)
kernel$ /platform/i86pc/multiboot -B $ZFS-BOOTFS
module /platform/i86pc/boot_archive
#---------------------END BOOTADM--------------------
#---------- ADDED BY BOOTADM - DO NOT EDIT ----------
title Solaris failsafe
findroot (pool_rpool,0,a)
kernel /boot/multiboot -s
module /boot/amd64/x86.miniroot-safe
#---------------------END BOOTADM--------------------