天天看點

Oracle Apps AutoConfig

1.   Background

2.   什麼是AutoConfig

3.   AutoConfig腳本所在的目錄

4.   運作方法

5.   AutoConfig工作原理

1.   Context檔案

2.   AutoConfig模闆檔案

3.   driver檔案

6.   AutoConfig的日志檔案

7.   AutoConfig配置復原

8.   Autoconfig Context檔案的修改

9.   Reference about AutoConfig

Background

Oracle Apps的架構非常複雜,使用了非常多技術(或服務)。比如Apache Web server, Apache Jserv, Forms Listener servlet (或forms server) 等等,每一個服務都有着自己的配置檔案,隻有都設定正确了,系統才能正常運作。而且,Oracle Apps使用了許多的Profile Options(比如Applications Web Agent, Applications Framework Agent等),這些也需要都設定正确,人工管理這麼多配置檔案,其實并不容易,對于新人來說,學習成本很高。

是以Oracle推出了一個非常強大的工具--Autoconfig(Autoconfig是11.5.4後引入的),用于維護這些配置檔案和Profile Options。我們可以認為AutoConfig是一些系列模闆化配置檔案的集合,用于配置出一個标準化的應用環境。

什麼是AutoConfig

AutoConfig是集中并簡化Oracle Apps的配置管理的工具,一個自動配置EBS Instance的工具,不需要手工幹預。它所需要的資訊僅僅是兩個存儲在本地Context檔案(XML類型的檔案),一個是Apps Context檔案,另外一個是DB Context檔案。

AutoConfig在Apps層運作的話,那麼它就需要讀取Apps Context檔案來産生所有的配置檔案,并且會更新資料庫的Profiles。

如果AutoConfig在DB層運作的話,那麼它就需要讀取DB Context檔案來産生所有用于DB層面的配置檔案。

AutoConfig内部其實是一組Java Class檔案,這些Class檔案由Shell腳本(或者perl腳本)來調用,通過模闆化的配置來維護系統的配置檔案。Autoconfig運作時,會用新的配置檔案重寫已存在的配置檔案(這個新的配置檔案其實是:模闆配置檔案+context檔案,建構而成的)

總之:AutoConfig确實很好的簡化了系統的配置工作。

AutoConfig腳本所在的目錄

Application tier: <INST_TOP>/admin/scripts/adautocfg.sh

                            (eg./u01/oracle/mc3yd213/inst/apps/mc3yd213_bej301441/admin/scripts/adautocfg.sh)

Database tier: <RDBMS_ORACLE_HOME>/appsutil/scripts/<CONTEXT_NAME>/adautocfg.sh

                          (eg./u01/oracle/mc3yd213/db/tech_st/11.1.0/appsutil/scripts/mc3yd213_bej301441/adautocfg.sh)

運作方法

Apps Tier:

sh <INST_TOP>/admin/scripts/adautocfg.sh

注意:

·         在運作AutoConfig的過程中,Database server和database listener必須已經啟動,Apps Server應該處于關閉狀态。

·         Running AutoConfig may change your existing environment files. After running AutoConfig, you should always set the environment before you run any Applications utilities, in order to apply the changed environment variables.

DB Tier:

sh <RDBMS_ORACLE_HOME>/appsutil/scripts/<CONTEXT_NAME>/adautocfg.sh

·         在運作AutoConfig的過程中,Database server和database listener必須已經啟動,其他資料庫服務應該處于關閉狀态。

AutoConfig工作原理

Oracle Apps AutoConfig

Autoconfig會涉及三類檔案:Context檔案,Template檔案,Driver檔案。

Context檔案

Context檔案可以說一個記錄環境參數的基礎檔案,它存儲了Apps所有的配置資訊,如果需要更改某項配置,則需要首先修改Context檔案的配置資訊,然後在通過AutoConfig,把更改的資訊更新到所有的真實配置檔案中去。

Apps Context檔案:<INST_TOP>/appl/admin/<CONTEXT_NAME>.xml (eg./u01/oracle/mc3yd213/inst/apps/mc3yd213_bej301441/appl/admin/mc3yd213_bej301441.xml)

Oracle Apps AutoConfig

DB Context檔案:<RDBMS_ORACLE_HOME>/appsutil/<CONTEXT_NAME>.xml(eg./u01/oracle/mc3yd213/db/tech_st/11.1.0/appsutil/mc3yd213_bej301441.xml)

NOTE:<CONTEXT_NAME> = <SID>_<hostname>

AutoConfig模闆檔案

用于生成配置檔案的模闆,Apps裡的每一個配置檔案都有一個對應的模闆。模闆檔案中包含了很多的Tag,這些Tag最終會被Context檔案中環境變量替換掉。

模闆檔案存放的地方: 

Apps層的模闆檔案:<product_top>/admin/template,比如: <FND_TOP>/admin/template (eg./u01/oracle/mc3yd213/apps/apps_st/appl/fnd/12.0.0/admin/template,打開目錄能看到很多tmp的模闆檔案)

Oracle Apps AutoConfig

DB層的模闆檔案:<RDBMS ORACLE_HOME>/appsutil/template,比如<ORACLE_HOME>/appsutil/template(eg./u01/oracle/mc3yd213/db/tech_st/11.1.0/appsutil/template)

Oracle Apps AutoConfig

driver檔案

Driver檔案會列出了AutoConfig模闆檔案路徑以及模闆檔案對應的目标配置檔案的真實路徑,以及一些腳本指令。

Apps的Driver檔案位于:<product_top>/admin/driver,比如: <FND_TOP>/admin/driver(eg./u01/oracle/mc3yd213/apps/apps_st/appl/fnd/12.0.0/admin/driver,裡邊有很多.drv檔案)

DB的Driver檔案位于:<RDBMS ORACLE_HOME>/appsutil/template,比如<ORACLE_HOME>/appsutil/template(eg./u01/oracle/mc3yd213/db/tech_st/11.1.0/appsutil/template裡的.drv檔案)

每當Autoconfig運作的時候,都會在先找到Driver檔案,然後按照Driver檔案提供的腳本指令,模闆檔案,以及Context檔案生成目标配置檔案。

AutoConfig的日志檔案

Application Tier: <INST_TOP>/admin/log/<MMDDhhmm>

Database Tier:   <RDBMS ORACLE_HOME>/appsutil/log/<CONTEXT_NAME>/<MMDDhhmm>

                          eg./u01/oracle/mc3yd213/db/tech_st/11.1.0/appsutil/log/mc3yd213_bej301441/05240310

<MMDDhhmm> = (month, day, hour, minute of AutoConfig run)

AutoConfig配置復原

每一次AutoConfig的運作都會産生一個復原腳本,如果AutoConfig配置錯誤,你可以使用復原腳本來恢複之前的配置。

Application Tier:     <INST_TOP>/admin/out/<MMDDhhmm>

Database Tier:    <RDBMS ORACLE_HOME>/appsutil/out/<CONTEXT_NAME>/<MMDDhhmm>

并且運作指令:  restore.sh(Unix) 或者restore.cmd(Windows)

Autoconfig Context檔案的修改

路徑:System Administration > Oracle Applications Manager > AutoConfig

從清單中可以看到DB層和Apps層的Autoconfig Context檔案

Oracle Apps AutoConfig

點選Edit Parameter,可以在這裡修改Context File的Parameter,在這裡改Context檔案應該比直接修改Context的XML檔案更安全些。

Oracle Apps AutoConfig

從截圖的頁簽,也可以看出,Autoconfig Context的配置主要涉及到Global,System,Local,Install,Environments,Processes,Custom幾塊。

Reference about AutoConfig

http://www.appsdba.info/docs/oracle_apps/R12/AutoConfig.pdf

387859.1  Using AutoConfig to Manage System Configurations in Oracle Applications Release 12

http://onlineappsdba.com/index.php/2008/01/28/autoconfig-in-oracle-apps-11i-r12-12i/

165195.1  Using AutoConfig to Manage System Configurations with Oracle Applications 11i

218089.1  Autoconfig FAQ

270519.1  Customizing an AutoConfig Environment

364927.1 How To Run Autoconfig On Database Tier (DB-Tier)

341322.1 How to change the hostname of an Applications Tier using AutoConfig

338003.1 How to change the hostname and/or port of the Database Tier using AutoConfig

315674.1 How To Verify if Autoconfig is Enabled on 11.5.x

391406.1 How to get a clean Autoconfig Environment

======EOF======