Monday, 20 February 2017

The benefits of DevOps


Companies that incorporate DevOps practices get more done, plain and simple. With a single team composed of cross-functional members all working in collaboration, DevOps organizations can deliver with maximum speed, functionality, and innovation.

There are technical benefits:

Continuous software delivery
Less complexity to manage
Faster resolution of problems

There are cultural benefits:

Happier, more productive teams
Higher employee engagement
Greater professional development opportunities

And there are business benefits:

Faster delivery of features
More stable operating environments
Improved communication and collaboration
More time to innovate (rather than fix/maintain)

Friday, 10 February 2017

How to create soft link in linux

how to create soft link in linux

1. take backup for old files
2.mv latest latest_old
3. ls -n /usr/java/jkd1.7.0-101 latest
then restart your managed servers.

Thursday, 9 February 2017

Fusion Applications Vs Fusion Middleware


There is a lot of confusion in people regarding Fusion Applications and Fusion Middleware.
Suddenly ORACLE FUSION has become the buzz word. Everyone is talking about it and many wants to get trained or aquire this niche skill.

Oracle has invested billions of dollar in the research and development of Fusion Applications.
Fusion Applications is next generation ERP. It is going to replace EBS R12. As far as I am aware, there won't be any new development or new release of Oracle EBS. There is a phase shift happening towards Fusion Applications. Most of the customers are already using it on SAAS (Software As A Service) environment. Oracle has recently launced the latest version of FA (Fusion Applicattions) for on-premise customers as well.

Following products are offered in Fusion Applications:
1) Oracle Fusion Customer Relationship Management
2) Oracle Fusion Financials
3) Oracle Fusion Governance
4) Oracle Fusion Human Capital Management
5) Oracle Fusion Procurement
6) Oracle Fusion Project Portfolio Management
7) Oracle Fusion Supply Chain Management
8) Oracle Fusion Setup

Fusion Applications is build on top of Fusion Middleware Stack.
It is based on Service-Oriented Architecture (SOA) and includes Application Development Framework (ADF), WebCenter, Business Intelligence (BI), Content Management (UCM/ECM) and Identity Management (IdM).

Fusion Middleware consist of an Application Server (Weblogic) and other technology stack like SOA, BI, Identity Managagement, Content Management. It is a Middleware like Tibco, which is used to integrate applications. With OFM (Oracle Fusion Middleware), we can develop, model business processes, integrate them with various business partners using out of the box plugins or adapters.

Fusion Applications are organized as Pillars where Pillar is standalone subset of Oracle Fusion Applications. In terms of OFMW, these pillars can be related to Domain.

Each Product of FA, is deployed as a Domain. A domain contains multiple J2EE applications related to that product. For example if we consider, Human Capital Managment, it will have all the applications like HCM Absence Administration, HCM Workforce management etc deployed in the HCM domain and targeted on different managed servers of the domain which will be serving the request.

Each product family is based on a common Oracle Fusion Applications data model and services. Product families contain one or more Java EE applications that are specific to Oracle Fusion Applications and deployed to Oracle WebLogic Server.

How to find the version of Fusion Application Installed


To find the Fusion Application Version Installed we can query the database by giving the following query:

SQL> select release_name from fusion.ad_product_groups;

RELEASE_NAME
--------------------------------------------------
11.1.8.0.0

How to change EM Agent Port ?

EM Agent uses a specific port to receive requests. This port is defined during installation. We faced an issue while installing OID and ODS, both have EMAGENT component:

Processes in Instance: oid1
---------------------------------+--------------------+---------+----------+------------+----------+-----------+------
ias-component                    | process-type       |     pid | status   |        uid |  memused |    uptime | ports
---------------------------------+--------------------+---------+----------+------------+----------+-----------+------
oid1                             | oidldapd           |   31821 | Alive    | 1389237283 |  1472620 |  21:24:59 | N/A
oid1                             | oidldapd           |   31790 | Alive    | 1389237282 |   415084 |  21:25:00 | N/A
oid1                             | oidmon             |   31754 | Alive    | 1389237281 |   559676 |  21:25:00 | LDAPS:4040,LDAP:4041
EMAGENT                          | EMAGENT            |   31755 | Alive    | 1389237280 |   106148 |  21:25:00 | N/A



Processes in Instance: ods1
---------------------------------+--------------------+---------+----------+------------+----------+-----------+------
ias-component                    | process-type       |     pid | status   |        uid |  memused |    uptime | ports
---------------------------------+--------------------+---------+----------+------------+----------+-----------+------
EMAGENT                          | EMAGENT            |   30455 | Down    |  436375769 |   106148 |   | N/A


If by mistake you give same port to EMAGENT during installation of OID and ODS then it will give you an exception of "Address already in use or bind exception" while starting the component. EMAGENT can be seen as down in one of the instance.

Solution

You have to change EMAGENT port for one of the component.

Steps

1. Stop the EMAgent.
$ $AGENT_HOME/bin/emctl stop agent

In our case $AGENT_HOME=/home/ajNode1/instances/ods1/EMAGENT/EMAGENT

2. Modify the $AGENT_HOME/sysman/config/emd.properties file in the EMAgent home directory:
    For example:
    EMD_URL=http://ajmachine1:5011/emd/main

    Modify the in the EMD_URL property so the EMAgent uses a new unused port on the target host.
    EMD_URL=http://ajmachine1:5015/emd/main

3. Start the EMAgent.
$ $AGENT_HOME/bin/emctl start agent

Opatch: LsInventorySession failed: OracleHomeInventory gets null oracleHomeInfo : OPatch failed with error code 73

Opatch: LsInventorySession failed: OracleHomeInventory gets null oracleHomeInfo : OPatch failed with error code 73
Problem
While running opatch lsinventory, command fails with the below error:

Inventory load failed... OPatch cannot load inventory for the given Oracle Home.
Possible causes are:
   Oracle Home dir. path does not exist in Central Inventory
   Oracle Home is a symbolic link
   Oracle Home inventory is corrupted
LsInventorySession failed: OracleHomeInventory gets null oracleHomeInfo

OPatch failed with error code 73


Solution
Attach the Oracle Home to the Central Inventory:

$ cd $ORACLE_HOME/oui/bin
$ ./attachHome.sh

Now check, command should work fine.

$ORACLE_HOME/OPatch/opatch lsinventory

How to move the central Inventory (oraInventory) to another location.

Solution On Unix:

Find the current location of the central inventory (normally $ORACLE_BASE/oraInventory):

For example:

find /home/oracle -name oraInventory -print

 /u01/app/oracle/oraInventory

Open the oraInst.loc file in /var/opt/oracle and check the value of inventory_loc

cat /var/opt/oracle/oraInst.loc

inventory_loc=/u01/app/oracle/oraInventory inst_group=oinstall

Remark: The oraInst.loc file is simply a pointer to the location of the central inventory (oraInventory)

Copy the oraInventory directory to the destination directory

cp -Rp /home/oracle/oraInventory /app/oracle

Edit the oraInst.loc file to point to the new location

For example:

vi /var/opt/oracle/oraInst.loc

inventory_loc=/app/oracle/oraInventory inst_group=dba

Java.lang.OutOfMemoryError" Error When Applying Oracle Weblogic Server Patch(bsu.sh)

Java.lang.OutOfMemoryError" Error When Applying Oracle Weblogic Server Patch(bsu.sh)

While applying the latest PSU for Weblogic, you might get below error:

./bsu.sh -install -patch_download_dir=/home/oracle/fmw/product/112/utils/bsu/cache_dir -patchlist=S8C2 -prod_dir=/home/oracle/fmw/product/112/wlserver_10.3/

Exception in thread "main" java.lang.OutOfMemoryError: getNewTla
        at java.util.HashMap.createEntry(HashMap.java:897)
        at java.util.HashMap.addEntry(HashMap.java:884)
        at java.util.HashMap.put(HashMap.java:505)
        at com.bea.cie.common.dao.xbean.XBeanDataHandler.loadPropertyMap(XBeanDataHandler.java:778)
        at com.bea.cie.common.dao.xbean.XBeanDataHandler.(XBeanDataHandler.java:99)
        at com.bea.cie.common.dao.xbean.XBeanDataHandler.createDataHandler(XBeanDataHandler.java:559)

Cause:
The memory arguments are in bsu.sh are not sufficient

Solution:
1) Go to/u9000/app/oracle/product/ofm_11.1.1.6/fmw/utils/bsu
2) Take backup of bsu.sh and edit as below

> take back up and edit bsu.sh

From MEM_ARGS="-Xms256m -Xmx512m" to MEM_ARGS="-Xms1024m -Xmx1024m"

4) Apply the patch
./bsu.sh -install -patch_download_dir=/u9000/app/oracle/product/ofm_11.1.1.6/fmw/utils/bsu/cache_dir -patchlist=K25M -prod_dir=/u9000/app/oracle/product/ofm_11.1.1.6/fmw/wlserver_10.3
Checking for conflicts.....
No conflict(s) detected

Installing Patch ID: K25M..
Result: Success