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.
Table of Contents
About Oracle Enterprise Manager:
The architecture of the OEM for Grid Control has three distinct components:
- the collection agent (Oracle Management Agent or OMA)
- the aggregation agent (Oracle Management Server or OMS)
- 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.
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.