Why... Why... Why?
This blog is dedicated to documenting error resolution and other tidbits that I discover while working as a Consultant in the Oracle EPM (Hyperion) field. As much of my job revolves around issue resolution, I see an opportunity to supplement the typical troubleshooting avenues such as the Oracle Knowledgebase and Oracle Forums with more pinpointed information about specific errors as they are encountered. Beware, the information found in this blog is for informational purposes only and comes without any warranty or guarantee of accuracy.

EPMVirt: Create your own Oracle Hyperion Virtual Environment:

Thursday, December 29, 2016

A Look Inside EPMVirt: OS Install

I will be doing a multi part series of articles on the details of how EPMVirt works. This deep dive can help strengthen your automation skills and give a better understanding what is occurring under the hood.

EPMVirt:
http://epm-errors.blogspot.com/p/epmvirt-11124-oracle-hyperion-virtual.html

The basic idea behind EPMVirt is to allow anyone to create an Oracle Virtual Machine with a working test version of Hyperion. The basic steps:
  1. Download all the required software
  2. Create a virtual Oracle Linux instance using Oracle Virtual Box
  3. Copy downloaded software from step 1 to virtual instance
  4. Run custom buildEPMvirt script to build the environment 
Let's focus on step 2. The Oracle Virtual Machine provides an environment we which can be run on many different platforms and systems. In other words, adding this virtual layer allows anyone with Oracle Virtual Box installation to be able run the environment. Instructions are provided in the link above on how to setup Oracle Virtual Box.

Next comes the OS, From a licensing standpoint, I decided to avoid Microsoft since it is not freely distributed. Going with the Oracle Linux seems like the best choice for an open system. However, the choice of Linux does come with downsides. For instance, EPMA and DRM are Windows only products, and consequently must be excluded.

From a Hyperion EPM standpoint, the OS setup is an important aspect. It must include specific packages and tuning settings for Hyperion to run. Let's look further at the OS automated installation.
To get Oracle Linux installed, there is a special kickstart file that provides all the details. It is specified on the command line after booting from the Oracle Linux DVD ISO image:
vmlinuz initrd=initrd.img ks=http://interopconsulting.com/ks2


The ks2 script has the following contents:
# Kickstart file automatically generated by anaconda.

#version=DEVEL
install
text
cdrom
reboot --eject
lang en_US.UTF-8
keyboard us
network --onboot yes --device eth0 --bootproto dhcp --noipv6 --hostname EPMVirt

rootpw  --iscrypted $6
firewall --service=ssh
authconfig --enableshadow --passalgo=sha512
selinux --enforcing
timezone --utc America/New_York
bootloader --location=mbr --driveorder=sda --append="crashkernel=auto rhgb quiet"
# The following is the partition information you requested
# Note that any partitions you deleted are not expressed
# here so unless you clear all partitions first, this is
# not guaranteed to work

clearpart --all --initlabel
zerombr
part /boot --fstype=ext4 --size=500
part pv.008002 --grow --size=1


volgroup VolGroup --pesize=4096 pv.008002
logvol / --fstype=ext4 --name=lv_root --vgname=VolGroup --grow --size=1024 --maxsize=51200
logvol swap --name=lv_swap --vgname=VolGroup --grow --size=3776 --maxsize=3776



%packages --nobase
@core
zip
emacs
unzip
xauth
xdpyinfo
compat-libcap1
libstdc++-devel
sysstat
gcc
gcc-c++
ksh
libaio
libaio-devel
lsof
numactl
glibc-devel
glibc-devel.i686
libgcc
libgcc.i686
compat-libstdc++-33
compat-libstdc++-33.i686
openssh-clients


%post --log=/root/ks-post.log
curl -L http://interopconsulting.com/rpms/epmvirt-11.1.2.4.0-4.x86_64.rpm -o EPMVirt.rpm
yum install -y EPMVirt.rpm


%end

The script roughly does the following:

  1. Creates the Unix file system partitions
  2. Sets up the network interface to connect to the internet
  3. Specifies specific packages to install. Notice some of these are both x86 and i686.
  4. Finally, tries to download and install the EPMVirt rpm which provides customization for all remaining steps.
For reference, details of the install are logged to /root/ks-post.log



Provided the automated install runs successfully, you will have Oracle Linux installed with packages required for installing EPM and the Oracle Database, along with a custom EPMVirt package. The EPMVirt package is where most of the magic happens. The next installment will provide details. Stay tuned. 


No comments:

Post a Comment