Oracle/Enterprise Manager Cloud Control

VMwareWorkstation(VMware Playerでも可能と思う) で CentOS 6.7 x64 で作成

インストールファイルの準備

バイナリダウンロード先(2015/09/10時点)
http://www.oracle.com/technetwork/oem/grid-control/downloads/linuxx8664soft-085949.html
http://www.oracle.com/technetwork/oem/enterprise-manager/downloads/db-templates-2205022.html
http://www.oracle.com/technetwork/jp/database/enterprise-edition/downloads/index.html

以下の6ファイルをDL
・em12105_linux64_disk1.zip
・em12105_linux64_disk2.zip
・em12105_linux64_disk3.zip
・12.1.0.2.0_Database_Template_for_EM12_1_0_5_0_Linux_x64.zip
・linuxamd64_12c_database_1of2.zip
・linuxamd64_12c_database_2of2.zip

HW構成

EMCC

デバイス概要
メモリ5GB
ハードディスク(SCSI)50GB
NIC1ブリッジ(eth0)


EMCC Agent

デバイス概要
メモリ3GB
ハードディスク(SCSI)30GB
NIC1ブリッジ(eth0)


CentOS6.7構成(EMCC)

選択するインストールパッケージ

  • desctop 今すぐカスタマイズにチェックを入れて、次へ進む
  • 開発 - 開発ツール

ネットワーク設定

/etc/sysconfig/network-scripts/ifcfg-eth0

ONBOOT=yes
NM_CONTROLLED=yes
BOOTPROTO=static
IPADDR=192.168.11.45
NETMASK=255.255.255.0

/etc/sysconfig/network

echo "NOZEROCONF=yes" >> /etc/sysconfig/network

/etc/hosts

# Local
127.0.0.1       localhost.zone.com localhost
# EMCC
192.168.11.45   emcc.zone.com emcc
# EMCC Agent
192.168.11.46   emcca.zone.com emcca

ネットワークを再起動

/etc/init.d/network restart

セキュリティと不要なサービス無効化

cat /etc/selinux/config | sed -e 's/=enforcing$/=disabled/' > /tmp/tmp; cp /tmp/tmp /etc/selinux/config
/etc/rc.d/init.d/iptables stop
chkconfig iptables off
chkconfig ip6tables off 
chkconfig iscsi off
chkconfig postfix off
chkconfig bluetooth off
chkconfig abrtd off
chkconfig abrt-ccpp off
chkconfig acpid off
chkconfig atd off
chkconfig cups off
chkconfig cpuspeed off
chkconfig netconsole off
chkconfig netfs off

/etc/〜各種設定

/etc/sysconfig/ntpd

cat /etc/sysconfig/ntpd | sed -e 's/OPTIONS=\"-u/OPTIONS=\"-x -u/' > /tmp/tmp; cp /tmp/tmp /etc/sysconfig/ntpd

/etc/fstab

cat /etc/fstab | sed -e 's/tmpfs   defaults/tmpfs   rw,exec,size=2560M/' > /tmp/tmp;cp /tmp/tmp /etc/fstab

/etc/security/limits.conf

oracle  hard  memlock  3145728
oracle  hard  nofile  65536
oracle  soft  nofile  4096
oracle  hard  nproc  16384
oracle  soft  nproc  2047

/etc/sysctl.conf

kernel.sem = 250      32000   100     128
kernel.shmmni = 4096
fs.file-max = 6815744
net.ipv4.ip_local_port_range = 9000   65535
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
kernel.panic_on_oops = 1
-- 設定反映
sysctl -p

追加インストールパッケージ

mount -t iso9660 -r /dev/cdrom /mnt
cd /mnt/Packages

rpm -ivh compat-libstdc++*.x86_64.rpm
rpm -ivh compat-libcap*.x86_64.rpm
rpm -ivh libaio-devel-*.x86_64.rpm
rpm -ivh unixODBC-*.x86_64.rpm
rpm -ivh ksh-20120801-28.el6.x86_64.rpm

ユーザー と グループ作成

groupadd -g 503 oinstall
groupadd -g 504 dba
useradd -g oinstall -G dba,wheel oracle
passwd oracle

ディレクトリ作成

mkdir -p /u01/app/oracle
mkdir /u01/app/oraInventory
chown -R oracle:oinstall /u01
chmod -R 775 /u01

環境変数

~oracle/.bash_profile

# ORACLE環境変数の設定
ORACLE_BASE=/u01/app/oracle
ORACLE_HOME=/u01/app/oracle/product/12.1.0/dbhome_1
# ORACLE_SIDは可変
ORACLE_SID=orcl1
NLS_LANG=Japanese_Japan.AL32UTF8
export ORACLE_BASE ORACLE_HOME ORACLE_SID NLS_LANG

# PATHに$ORACLE_HOME/binを追加
export PATH=$PATH:$ORACLE_HOME/bin


DBソフトウェアインストール

su - oracle
unzip linuxamd64_12102_database_1of2.zip > /devnull
unzip linuxamd64_12102_database_2of2 > /dev/null

./runInstaller
  • インストール・オプション
    データベース・ソフトウェアのみインストール

データベースの作成

$ORACLE_HOME/assistants/dbca/templates フォルダに
12.1.0.2.0_Database_Template_for_EM12_1_0_5_0_Linux_x64 を解凍したファイルを配置
/u01/app/oracle/product/12.1.0/dbhome_1/bin/dbca
  • データベースの操作
    データベースの作成
  • 作成モード
    拡張モード
  • データベース・テンプレート
    12.1.0.2.0_Database_Template_for_EM12_1_0_5_0...S
    ※ 小規模デプロイメント用
    
  • データベース識別情報
    グローバールデータベース名:emcc
    SID接頭辞         :emcc
  • 管理オプション
    以下のチェックを外す
    ・Enterprise Manger(EM)Database Expressの構成
    ・Emterprise Manager(EM)Cloud Control への登録
  • ネットワークの構成
    新規リスナーの作成 にチェック
    リスナー名:LISTENER
    ポート番号:1521
  • 記憶域の場所
    記憶域タイプ:ファイルシステム
    テンプレートデータベース・ファイル位置を使う を選択
    他は全て、チェックを外す
    
  • 初期化パラメータ
    カスタム設定で自動的に割り振られているが、自動管理で1024MBに減らしても大丈夫だった
    キャラクタセット、UTF8 選択
  • 作成オプション
    データベースの作成 にチェック

EMCC構成

unzip em12105_linux64_disk1.zip > /dev/null
unzip em12105_linux64_disk2.zip > /dev/null
unzip em12105_linux64_disk3.zip > /dev/null
※ disk2 は カレントディレクトリに色々展開されるので注意
./runInstaller
  • 前提条件
    glibc-devel-2.12-1.7-i686 で失敗するが「無視」にチェックを入れて進める
  • インストールタイプ
    簡易
  • インストール詳細
    ミドルウェアホーム:/u01/app/oms
    エージェントベース:/u01/app/oa
    ホスト名     :emcc.zone.com
  • 構成の詳細
    データベースの詳細は、事前にインストールした情報を入力
    ライブラリ構成は、デフォルトのまま(/u01/app/swlib)
  • インストール中
    ins_sqlplus.mkのターゲット install を起動中のエラー が出るが「無視」で進める

インストール後

emctl oms status
-------------
WebTier is Up
Oracle Management Server is Up

OMSにある以下のファイルを修正(Agent配布の時エラーになるので)

/u01/app/oms/oms/sysman/prov/agentpush/agentpush.properties
⇒ oracle.sysman.prov.agentpush.enablePtyを「true」に変更


CnetOS6.7構成(EMAC)

ネットワーク構成 〜 データベースの作成まで終わらせる
※ ホスト名とIPアドレスは、emcca / 192.168.11.46 とする

sudo権限を与える

visudo
※ %wheel ALL=(ALL) ALL のコメントを外す

ターゲットにAgentを配布する

https://192.168.11.45:7802/em
※ ユーザーは、sysman でパスワードはインストール内で設定したもの
設定 - ターゲットの追加 - ターゲットの手動追加 - ホスト追加 - 追加
インストール詳細
ベースディレクトリ   :/u01/app/oa
インスタンスディレクトリ:/u01/app/oa/agent_inst
名前付き資格証明    :+ボタン押下し、oracleユーザー(/u01/app のオーナー)を指定。sudoは空欄でOK
-- 以下は、やらなくても良かった
数分でデプロイが完了するので、
設定 - 自動構成の検出 - ホスト上のターゲット
追加したターゲットを選択し「新規に検出」をクリックする

データベース作成

/u01/app/oracle/product/12.1.0/dbhome_1/bin/dbca
※ 管理オプションの箇所で、EM Cloud Controlの登録にチェックを入れる(Database Expressは外す)


スクリプト

DB自動起動

/etc/init.d/oracle
#!/bin/bash
# oracle: Start/Stop Oracle Database 12c R1
#
# chkconfig: 345 90 10
# description: The Oracle Database is an Object-Relational Database Management System.
#
# processname: oracle
. /etc/rc.d/init.d/functions
LOCKFILE=/var/lock/subsys/oracle
ORACLE_HOME=/u01/app/oracle/product/12.1.0/dbhome_1
ORACLE_USER=oracle

case "$1" in
'start')
    if [ -f $LOCKFILE ]; then
        echo $0 already running.
        exit 1
    fi
    echo -n $"Starting Oracle Database:"
    su - $ORACLE_USER -c "$ORACLE_HOME/bin/lsnrctl start"
    su - $ORACLE_USER -c "$ORACLE_HOME/bin/dbstart $ORACLE_HOME"
    touch $LOCKFILE
    ;;
'stop')
    if [ ! -f $LOCKFILE ]; then
        echo $0 already stopping.
        exit 1
    fi
    echo -n $"Stopping Oracle Database:"
    su - $ORACLE_USER -c "$ORACLE_HOME/bin/lsnrctl stop"
    echo "shutdown abort" > /tmp/tmp.sql
    echo "quit" >> /tmp/tmp.sql
    su - $ORACLE_USER -c "sqlplus / as sysdba @/tmp/tmp.sql"
#    su - $ORACLE_USER -c "$ORACLE_HOME/bin/dbshut"
    rm -f $LOCKFILE
    ;;
'restart')
    $0 stop
    $0 start
    ;;
'status')
    if [ -f $LOCKFILE ]; then
        echo $0 started.
    else
        echo $0 stopped.
    fi
    ;;
*)
    echo "Usage: $0 [start|stop|status]"
    exit 1
esac
exit 0
chmod 755 /etc/rc.d/init.d/oracle
chkconfig --add oracle
chkconfig oracle on

パーティションテーブルメンテナンス

set line 10000 pages 0  num 20 colsep "," verify off feedback off trims on term off

spool run.sql

SELECT 'ALTER TABLE MGMT_AUDIT_LOGS DROP PARTITION "' || PARTITION_NAME || '" UPDATE GLOBAL INDEXES;'
FROM ALL_TAB_PARTITIONS, SYSMAN.MGMT_AUDIT_MASTER
WHERE TABLE_NAME = 'MGMT_AUDIT_LOGS'
AND TABLE_OWNER = 'SYSMAN'
AND PARTITION_NAME != 'MAX_VALUE'
AND PARTITION_NAME < TO_CHAR(sysdate - 3, 'YYYY-MM-DD HH24:MI');

SELECT 'ALTER TABLE EM_CS_SCORE_HIST DROP PARTITION "' || PARTITION_NAME || '" UPDATE GLOBAL INDEXES;'
FROM ALL_TAB_PARTITIONS
WHERE TABLE_NAME = 'EM_CS_SCORE_HIST'
AND TABLE_OWNER = 'SYSMAN'
AND PARTITION_NAME != 'MAX_VALUE'
AND PARTITION_NAME < TO_CHAR(sysdate - 3, 'YYYY-MM-DD HH24:MI');

SELECT 'ALTER TABLE EM_CCC_FILEOBS_DIFF DROP PARTITION "' || PARTITION_NAME || '" UPDATE GLOBAL INDEXES;'
FROM ALL_TAB_PARTITIONS
WHERE TABLE_NAME = 'EM_CCC_FILEOBS_DIFF'
AND TABLE_OWNER = 'SYSMAN'
AND PARTITION_NAME != 'MAX_VALUE'
AND PARTITION_NAME < TO_CHAR(sysdate - 3, 'YYYY-MM-DD HH24:MI');

SELECT 'ALTER TABLE EM_CCC_OBSERVATION DROP PARTITION "' || PARTITION_NAME || '" UPDATE GLOBAL INDEXES;'
FROM ALL_TAB_PARTITIONS
WHERE TABLE_NAME = 'EM_CCC_OBSERVATION'
AND TABLE_OWNER = 'SYSMAN'
AND PARTITION_NAME != 'MAX_VALUE'
AND PARTITION_NAME < TO_CHAR(sysdate - 3, 'YYYY-MM-DD HH24:MI');

spool off

@ run.sql
quit

MGMT_AUDIT_LOGSの不要なパーティション(毎日01:00?に作成される)を自動的にメンテナンスする

-- SYSMANユーザーに'DATA_PUMP_DIR'への読み書き権限を付与
grant read,write on directory data_pump_dir to sysman;
select * from dba_tab_privs where TABLE_NAME='DATA_PUMP_DIR' ;

-- 外部化設定
emcli login -username=SYSMAN
emcli sync
emcli show_audit_settings
$ORACLE_HOME/bin/emcli update_audit_settings -externalization_switch="ENABLE" -directory="DATA_PUMP_DIR"
$ORACLE_HOME/bin/emcli update_audit_settings -data_retention_period="1" -directory="DATA_PUMP_DIR"

emcli show_audit_settings

emctl stop oms -all
emctl start oms
emctl status oms

 emcli show_audit_settings

-- XMLファイル出力
sqlplus sysman
exec EM_AUDIT_EXTERNALIZATION.audit_externalization_proc();
select * from dba_directories where directory_name='DATA_PUMP_DIR';
! ls -l DATA_PUMP_DIRのパス
※ XMLファイルが出力されていること


 

各種操作

WEBアクセス

https://192.168.11.45:7802/em
https://192.168.11.45:7102/console

emctlコマンド

${OMS_HOME}/oms/bin
$<AGENT_BASE_DIRECTORY>/agent_inst/bin
  • OMS起動/停止
    emctl start oms
    emctl stop oms
  • OMS起動状態確認
    emctl status oms [-details]
  • OMSプロパティ確認
    emctl list properties
  • OMA起動/停止
    -- Agentのインストールディレクトリにある emctl で実行する必要あり
    emctl start agent
    emctl stop agent
  • プラグイン表示?
    emctl listplugins agent -type all

emcli

  • EM CLIにログイン(ログインしないと各種操作ができない)
    emcli login [-username=<USER> -password=<PASSWORD>]

ファイル

  • ポート番号一覧
    ${OMS_HOME}/oms/installportlist.ini
    
  • インストール対象プラグインリスト
    $<AGENT_BASE_DIRECTORY>/plugins.txt

トップ   編集 凍結解除 差分 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2017-01-18 (水) 21:02:46 (97d)