Install Oracle Enterprise Manager on CentOS 6

Share on Social Media

In this article, we will install the Oracle Enterprise Manager 12c on CentOS 6. But first, we would like to briefly define a few terms, that you may encounter throughout this article.

About Oracle Enterprise Manager:

The architecture of the OEM for Grid Control has three distinct components:

  1. the collection agent (Oracle Management Agent or OMA)
  2. the aggregation agent (Oracle Management Server or OMS)
  3. the repository agent (Oracle Management Repository or OMR)

The Oracle Management Agent / OMA runs on the target host and collects information on the hardware, operating system, and applications, which are running on that target host.

The Oracle Management Server / OMS runs on a central server and collects the data generated by multiple Oracle Management Agents / OMAs. The OMS also provides a web interface for monitoring & management of services.

The Oracle Management Repository / OMR is an Oracle Database 11g R2. The OMS pulls the information from multiple OMAs and aggregates the data into the OMR.

Install Oracle Enterprise Manager on CentOS 6
Install Oracle Enterprise Manager on CentOS 6

System Specification:

We have provisioned a CentOS 6.5 virtual machine with following specifications.

CPU:3.4 Ghz (2 Cores)
Memory:4 GB
Storage:50 GB
Operating System:Centos 6.5 x86_64

We are using CentOS 6.5 operating system to install Oracle Enterprise Manager 12c. However, you can install any certified distribution of Linux (visit Oracle Support for list of certified operating systems).

To install CentOS 6, you can follow the installation steps available in our previous article Installation of CentOS 6.3 Server.

We are using the following network settings, you may adjust it according to your environment.

Hostname:oms12c.mydomain.com
IP Address:170.172.0.123/16
Gateway:170.172.0.1
DNS Server:170.172.0.3

Install Oracle Enterprise Manager on CentOS 6:

We are not using any DNS server for our network, therefore, we will configure local DNS resolver as follows.

cat >> /etc/hosts << EOF
170.172.0.121 omr12c.mydomain.com omr12c
170.172.0.123 oms12c.mydomain.com oms12c
EOF

Change SELinux mode to permissive.

sed -i 's/^SELINUX=.*/SELINUX=permissive/g' /etc/sysconfig/selinux
setenforce permissive

Although, CentOS 6 will automatically synchronize time with its NTP Servers, if connected to the Internet. But, as we mentioned earlier that, our machine is not connected with the Internet, therefore, we must use our internal NTP Servers for time synchronization.

Execute the following commands.

sed -i 's/^server*/#server/g' /etc/ntp.conf
cat >> /etc/ntp.conf << EOF
server 170.172.0.3
server 170.172.0.2
EOF

chkconfig ntpd on
service ntpd start

There are some software packages required by Oracle Enterprise Manager 12c. You can use yum to install online from internet, or setup a local yum repository.

Our CentOS 6 server is not connected to the Internet, therefore,we are using rpm command to install packages from the CentOS 6 installation DVD / ISO.

rpm -Uvh make-3.81-20.el6.x86_64.rpm
rpm -Uvh binutils-2.20.51.0.2-5.36.el6.x86_64.rpm 
rpm -Uvh gcc-4.4.7-4.el6.x86_64.rpm cloog-ppl-0.15.7-1.2.el6.x86_64.rpm cpp-4.4.7-4.el6.x86_64.rpm ppl-0.10.2-11.el6.x86_64.rpm mpfr-2.4.1-6.el6.x86_64.rpm
rpm -Uvh libaio-0.3.107-10.el6.x86_64.rpm
rpm -Uvh glibc-common-2.12-1.132.el6.x86_64.rpm
rpm -Uvh libstdc++-4.4.7-4.el6.x86_64.rpm
rpm -Uvh sysstat-9.0.4-22.el6.x86_64.rpm
rpm -Uvh glibc-devel-2.12-1.132.el6.i686.rpm

Adjust the required Kernel parameters by executing the following commands.

cat >> /etc/sysctl.conf << EOF
fs.file-max = 6815744
kernel.sem = 250 32000 100 128
kernel.shmmni = 4096
kernel.shmall = 1073741824
kernel.shmmax = 4398046511104
net.core.rmem_default = 262144
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 1048576
fs.aio-max-nr = 1048576
net.ipv4.ip_local_port_range = 9000 65500
EOF

sysctl -p

Execute following command to set limits for oracle user.

cat >> /etc/security/limits.conf << EOF
oracle soft nofile 4096
oracle hard nofile 65536
oracle soft nproc 16384
oracle hard nproc 16384
oracle soft stack 10240
oracle hard stack 32768
EOF

Following users and groups are required by Oracle Enterprise Manager 12c. You can create these users and groups by using following commands.

groupadd -g 54321 oinstall 
groupadd -g 54322 dba 
groupadd -g 54323 oper
useradd -u 54321 -g oinstall -G dba,oper oracle
echo “oracle” | passwd oracle –-stdin

I am creating another user for myself to perform DBA tasks.

useradd -u 54322 -g oinstall -G dba,oper ahmer
echo “123” | passwd ahmer –-stdin

Create the OMS_BASE & AGENT_BASE directories and change owner to oracle user.

mkdir -p /u01/app/oracle/oms12cr2 
mkdir -p /u01/app/oracle/agent12c
chown –R oracle:oinstall /u01/app
chmod -R 775 /u01/app

Run following command from the Setup directory. Installation is pretty straight forward, just follow the default configurations, during the installation you have to provide the credentials of OMR admin user, so the installer can create repository within the OMR database (Please read Configure Oracle Managment Repository 12c on CentOS 6). Also note down any passwords that you have set during the installation, you may need it later.

su – oracle
cd /soft/install
./runInstaller

At the end of installation, the Installer will give you a list of services and their respective ports, you have to open these ports in the firewall for proper functionality of Oracle Enterprise Manager 12c.

Execute the following commands to open the ports that are provided by Installer after Oracle Enterprise Manager 12c installation. Be noted that ports may vary from installation to installation. we write the commands according to our ports, you can adjust it according to yours.

  • 7803    EM Central Console
  • 7103    Weblogic Admin Server  
  • 7890    EM Upload http
  • 4904    EM Upload https
  • 7404    Node Maneger https
  • 7203    Managed Server http
  • 7790    EM Central Console http
  • 3872    OM Agent
  • 7302    Managed Server https
iptables -I INPUT 5 -p tcp --dport 7803 -m state --state NEW,ESTABLISHED -j ACCEPT
iptables -I INPUT 5 -p tcp --dport 7103 -m state --state NEW,ESTABLISHED -j ACCEPT
iptables -I INPUT 5 -p tcp --dport 7890 -m state --state NEW,ESTABLISHED -j ACCEPT
iptables -I INPUT 5 -p tcp --dport 4904 -m state --state NEW,ESTABLISHED -j ACCEPT
iptables -I INPUT 5 -p tcp --dport 7404 -m state --state NEW,ESTABLISHED -j ACCEPT
iptables -I INPUT 5 -p tcp --dport 7203 -m state --state NEW,ESTABLISHED -j ACCEPT
iptables -I INPUT 5 -p tcp --dport 7790 -m state --state NEW,ESTABLISHED -j ACCEPT
iptables -I INPUT 5 -p tcp --dport 3872 -m state --state NEW,ESTABLISHED -j ACCEPT
iptables -I INPUT 5 -p tcp --dport 7302 -m state --state NEW,ESTABLISHED -j ACCEPT

service iptables save

Set environment variables as required by Oracle Enterprise Manager 12c.

su - oracle
cat >> ~/.bash_profile << EOF
OMS_HOME = /u01/app/oracle/oms12cr2/oms
AGENT_HOME = /u01/app/oracle/agent12c/agent_inst
export OMS_HOME AGENT_HOME
EOF

You can  use the URL https://170.172.0.123:7803/em to access to Administration Console.

We have successfully installed Oracle Enterprise Manager 12c on CentOS 6. Continue reading our next article Using Offline Self Update in Cloud Control 12c.

Struggling with Linux server management? I offer professional support to ensure your servers are secure, optimized, and always available. Visit my Fiverr profile to learn more!

Looking for something?

Leave a Reply