IBM Unix 歷史
自 1986 年 1 月AIX v1推出 以來, AIX 就成為 IBM 進入開放系統和標準( UNIX 、 TCP/IP 和乙太網)世界的催化劑。從 1990 年到 1994 年, AIX 為支持領先的硬體技術提供了一個優秀的作業系統。 AIX 從一個技術工作站平台發展為一個真正的伺服器作業系統。與此同時, IBM 推出了 POWER 微處理器架構並將其與 AIX 結合在一起,製造出第一台 RISC 6000 系統,也就是後來人們所稱的 RS/6000 系統。
從 1995 年到 2000 年, AIX 開始將重點放在支持商業和技術套用負載,提供對稱多處理以及高端的可擴展性。 IBM 在高性能計算領域所處的領先地位源自運行 AIX 的“深藍”這樣的高可用性系統以及高能集群。隨著 2001 年 AIX 5L 的發布, IBM 開始在系統分區領域實現重大的創新。 AIX 利用虛擬技術實現了邏輯分區、動態邏輯分區和微分區,將系統靈活性和使用率提高到了一個新的水平。
IBM 於 2005 年 12 月宣布 AIX 協作中心投入運行。通過 2 年 2 億美元的投入, IBM 將使用這一設在德州奧斯汀的中心與客戶、開發人員、 ISV 和學術界進行合作,推動以 AIX 技術為中心的創新,同時開發、測試和使用各種用於支持 AIX 作業系統的新套用和中間件。
AIX 協作中心將重點推動關鍵技術領域的系統級創新,如虛擬、安全性、性能和可擴展性,該中心將幫助 ISV 們利用新的 IBM 硬體和軟體功能來改進自己在 AIX 上運行的套用。另外,這一中心還將提供包括培訓、設備、有經驗的技術諮詢顧問以及遠程或現場測試功能在內的豐富資源,幫助這些 ISV 在 AIX 和最新 64 位 POWER 系統上實現自己的套用。
下面這些"第一個"記錄了IBM UNIX系統的技術成長過程.
發明 RISC 技術 - 1975
第一個可用的商用 RISC 系統 (RT/ PC) -1986
第一個超標量體系結構 RISC (POWER) - 1990
第一個支持TCP/ IP v6 的UNIX (AIX) -1997
第一個64- 位UNIX98 認證 (AIX) - 1998
唯一通過 VPN認證的 UNIX (AIX)
第一個可從Itanium啟動的 UNIX (AIX) - 1999
第一個使用銅技術的商業系統 (S80) - 1999
第一個雙處理器/ L3 cache 架構的RISC 晶片 (POWER4) - 1999
第一個支持Java 2 V1. 3的 UNIX (AIX) - 2000
第一個緊密結合Linux的 UNIX (AIX5L) - 2001
AIX 5L性能特點
AIX 5L 是AIX的當前使用版本,它支持IBM POWER 和Intel 64位(IA-64)平台。“L” 指Linux affinity
虛擬伺服器
通過在AIX 5L V5.2中引入動態邏輯分區(DLPAR),IBM為基於POWER4的p系列系統提供了高級的靈活性和可擴展性功能。
LPAR功能使得在一個單一p系列伺服器上運行AIX 5L和Linux的多個獨立作業系統映像成為可能。邏輯分區不需要與系統的組建模組(資源集合)的物理邊界相一致。LPAR允許客戶以更小的粒度從整個可用資源池中選擇組件,從而能夠增加運行的靈活性。一個p系列分區所要求的最少資源包括一個處理器、256MB記憶體以及一個I/O適配器。
利用DLPAR,客戶可以"在一個伺服器的內部創建多個虛擬伺服器",並能夠從活動分區中動態地添加和刪除處理器、物理記憶體和I/O插槽-每個分區都與其它分區相隔離,而且每個分區都運行自己的AIX 5L V5.2作業系統;添加和刪除操作都是在分區環境的內部進行,而且不要求重新執行系統引導。客戶可以將系統資源分配給應用程式最需要的地方,在根據不斷變化的系統優先權和資源需求進行調整的同時,能夠將多個分區上的負載整合到一個單一伺服器上。此外,客戶在完成這些工作的同時,能夠將運行、服務和支持水平保持在所要求的級別上。
運行效率和容量規劃
為提供更高的靈活性、可擴展性和可用性,AIX 5L V5.2在p650, p670和p690系統上推出了動態隨需應變容量升級(CUoD)功能。
CUoD允許客戶在進行系統安裝時安裝比初始需要數量更多的處理器,保持這些處理器(處於休眠狀態)直至業務的增長要求將其激活。CUoD選項將為系統管理員提供一個用於激活更多處理器的加密密鑰,可以在不中斷系統運行的情況下將新激活的處理器動態分配給各個分區。
CUoD提高了系統可用性。當一個處理器的出錯頻率到達一個錯誤閾值(儘管發生這種情況的可能性很小),AIX 5L V5.2將以透明的方式激活一個可用的CUoD處理器並使用它來替換故障處理器-直至客戶準備好修復計畫為止。此外,即使是單處理器分區也可以支持這一被稱為動態處理器備用(Dynamic Processor Sparing)的功能,這一功能允許系統在保持處理能力不變的情況下繼續運行,能夠保證系統的性能和可用性不會受到影響。
集群管理
為實現快速同步和協調回響,集群環境要求節點之間能夠進行全面的協作。AIX 5L使用基於AIX 5L的Linux軟體和IBM集群系統管理器(CSM)支持和最佳化集群伺服器的管理。CSM為指定p系列和IBM eServer x系列伺服器的安裝、配置、維護和更新提供了一個單一的控制點。基於AIX 5L的CSM以安裝選項和單獨許可產品的形式,包括在AIX 5L V5.2基本安裝介質之中。
高可靠性:
利用自身的軟體,HACMP可以實現 雙機切換,確保高穩定性的實現。
Linux親和性
AIX 5L與Linux之間的親和性可以幫助以速度更快、成本更低的方式實現跨AIX和Linux平台的多平台集成解決方案。對於很多在Linux上開發或為Linux開發的套用,只需對原始碼進行一次簡單的重編譯,它們就可以在AIX 5L上運行。IBM免費為客戶提供一個用於Linux套用的AIX工具箱,該工具箱由一組多個Linux版本中常見的開放原始碼和GNU軟體組成。因為這些套用運行在AIX上,所以公司可以將Linux的靈活性與AIX的高級功能結合在一起-這些高級功能包括先進的負載管理、完善的系統管理工具以及可擴展性和安全性功能。
安全性
通過C2級認證的AIX 5L提供並全面使用了強大的行業標準安全技術和目錄技術。AIX 5L V5.2包括和擴展了這些技術,它提供了對可拔插身份驗證模組(PAM)、基於用戶的PKI證書、企業身份映射(EIM)、BIND V9、SNMP V3、移動IPv6、無限訪問協定(WAP)v1.1、OpenSSH v3.4的集成支持,並支持新的基於AES(Rijndael)、SEAL、Mars、Twofish和其它算法的加密解密庫。此外,AIX 5L V5.2繼續支持IBM網路身份驗證伺服器(NAS)、IBM目錄伺服器v4.1和ICSA認證IPsec/VPN安全組網功能。AIX 5L V5.2提供的Java安全技術包括JAAS、JCE/JCE、JSSE、JGSS和J-PKI。
AIX版本歷史
IBM AIX 6.1 , 2006年
AIX 5L 5.3, 2004年8月
NFS Version 4 支持
Advanced Accounting
虛擬 SCSI
虛擬乙太網
SMT
微分區(Micro-Partitioning)
JFS2 配額(quota)支持
JFS2 檔案系統收縮(shrink)支持
AIX 5L 5.2, 2002年10月
支持多路IO光纖信道磁碟
動態LPAR支持
AIX 5L 5.1, 2001年5月
引入64位核心
JFS2
AIX 4.3.3, 1999年9月
增加了線上備份功能
AIX 4.3.2, 1998年10月
AIX 4.3.1, 1998年4月
AIX 4.3, 1997年10月
支持 64位 體系
AIX v4, 1994年
AIX v3, 1990年
AIX v3.1
引入了日誌檔案系統 (JFSv1)
AIX v2
AIX v1, 1986年
IBM AIX 6 的賣點
不單單是新一代 IBM 的作業系統,它也將給 UNIX 世界帶來新的革命!
AIX® 是一個基於開放標準的 UNIX 作業系統 ,為全球數以萬計的用戶提供企業信息技術基礎架構。IBM 在今年年中發布了最新的 AIX 6 的 Beta 版本,供全球的使用者免費下載使用,同時希望廣大的用戶提出自己的使用意見以及發現的問題。經過幾個月以來全球用戶的試用和測試,IBM 終於正式發布了 AIX 6.1 版本。雖然很多人通過先前的 Beta 版已經領略過了這個 IBM 王牌產品的最新面目,但是對於大多數的使用者來說,它還是很陌生的。這個最新的版本到底增加了什麼新的功能呢?有什麼新的特性呢?有什麼新的讓人振奮,甚至是革命性的技術呢?在這裡,我們集中地通過 AIX 6 的最新的 6 個特性來向您展示這個新產品的亮點。您還可以通過訪問 AIX 6 的論壇(英文),來和全世界的使用者交流您的親身使用經驗。
新特性
新的虛擬化方法
AIX 6 引入了一種稱為“工作負載分區 (WPAR) ”的、基於純軟體的虛擬化技術。它通過減少在整合工作負載時需要管理的作業系統鏡像數量來補充現有的 IBM 系統邏輯分區。同時,“應用程式實時移動性”這個新的特性還可以將工作負載分區從一個系統移動到另一個系統,而無需重新啟動應用程式,讓應用程式的最終用戶感覺不到明顯中斷。
安全性
AIX 6 作業系統中將提供的幾項顯著的安全性增強功能包括:基於角色的訪問控制,受信任的 AIX,加密檔案系統,AIX Security Expert LDAP 集成,Secure by Default 安裝選項,通過這些新的特性進一步提高了 AIX 作業系統自身的安全能力,從而使用戶可以使用更多的解決方案來加強他們的系統。
可管理性
AIX 6 作業系統新的管理特性體現在“圖形化安裝”和“網路安裝管理器支持 NFSv4”這兩個方面,“圖形化安裝”是那些沒有 AIX 安裝經驗的使用者也可以很輕鬆的完成整個系統的安裝,後者則更注重於分散式管理的安全性,便捷性和靈活性上。
持續可用性
AIX 6 利用了許多源於 IBM 大型機技術的可靠功能,為 UNIX 市場引入了前所未有的持續可用性功能,例如:核心支持 POWER6 存儲密鑰,並發 AIX 核心更新,動態跟蹤,增強了軟體第一次失敗數據捕獲。
利用 POWER6 處理器
與以前發布的 AIX 作業系統類似,版本 6.1 完全利用了最新的 POWER? 處理器,即 IBM POWER6? 處理器。AIX 6 將要利用的一些 POWER6 處理器功能包括利用存儲密鑰的核心和自動最佳化頁面大小。
二進制兼容性
AIX 6 與以前發行版 AIX 版本 5 具有二進制兼容性,這在 AIX 二進制兼容性聲明中進行了記錄。32 位和 64 位 AIX V5.1、V5.2 和 V5.3 應用程式只要運行良好並且沒有使用明顯確定為不可移植的編程技術,無需對它們重新編譯就可以在 AIX 6 上執行。為 AIX V4.1、4.2 或 4.3 編寫的 32 位應用程式只要滿足同一運行良好的程式標準,無需對它們重新編譯就可以在 AIX 6 上執行。
AIX 全名為(Advanced Interactive Executive),它是IBM 公司的UNIX作業系統,整個系統的設計從網路、主機硬體系統,到作業系統完全遵守開放系統的原則。
下面對AIX 作以介紹。
RS/6000 採用IBM 的UNIX作業系統-AIX作為其作業系統。這是一個目前作業系統界最成功,套用領域最廣,最開放的第二代的UNIX系統。它特別適合於做關鍵數據處理(CRITICAL)。
AIX 包含了許多IBM 大型機傳統受歡迎的特徵,如系統完整性,系統可管理性和系統可用性。
在 AIX 作業系統上,有許多的資料庫和開發工具,用戶除了選用已有的套用軟體外,還可以根據各自的需要進行開發。
此外,在AIX 之上,有一組功能強,使用方便的系統管理工具。對於異種平台互存,互操作有很成熟的解決方案。
由於該 UNIX 的先進的核心技術和最好的開放性,因此,雖然RS/6000從宣布到今天只有短短的5 年多的時間,它已在各行各業有了廣泛的運用,並在1993和1994年連續二年在MIDRANGE商用 UNIX 領域處於第一位。
RISC SYSTEM/6000的作業系統是AIX ,它是性能卓越的、開放的UNIX,匯集了多年來計算機界在UNIX上的研究成果,以IBM 在計算機體系結構、作業系統方面40多年極其豐富的經驗。最大限度的使用RISC技術,安裝了象AIX 這樣的具備工業界實力的UNIX作業系統。
它既可連線SAA 體系結構,又能與非IBM 系統的網路相連,因此,可以和多數專業銀行現有的系統實現互連,這對今後業務系統拓展將帶來極大的靈活性,並降低投資。
使用 NIM 資源部署自定義的 AIX 系統
使用 NIM (Network Installation Management) 所提供的 installp_bundle、image_data 和 fb_scripts 等資源 (Resource),來實現安裝時的自動化配置 (Install time customization)。文章假設讀者已經掌握 NIM 的基本操作,因此對相關的基礎知識不做重點介紹。讀者可以從 " 網路安裝管理器的強大功能 " 了解所需的背景知識。本方法介紹的技術適用於 AIX™ 5L 和 AIX™ 6L 各版本的網路安裝。
引言
NIM 是系統管理人員遠程、批量安裝 AIX 系統的常用工具。它提供了一些嚮導程式,如 nim_master_setup,簡化了 NIM 的基本配置。但是這種配置下的 NIM 所提供的 AIX 遠程安裝服務,往往不能滿足系統管理人員的自動化安裝需求。比如,系統管理人員還是要手工設定 DNS 或 LVM,又或是另行安裝一些未與 AIX 捆綁的常用軟體,如 bash。為了進一步提高安裝的自動化,NIM 提供了多種資源。
NIM 資源概述
NIM 資源本質上是一個指針,指向一個存儲著安裝包的目錄,或是某個配置檔案。NIM master 負責管理這些資源,並在提供 NIM client 作業系統安裝和軟體維護服務時,通過 NFS 協定共享給 NIM client 來使用。下面列出了本文重點討論的幾種 NIM 資源:
NIM client 既可以是 AIX 系統,也可以是 NIM 支持的 Linux 系統。本文中,NIM client 只限於 AIX 系統。
lpp_source: lpp_source 指向一個目錄,這個目錄按照 NIM 規定的結構存儲 AIX 的各種安裝包。lpp_source 分兩種,如果所指的目錄中存儲的安裝包集合包含了實現 AIX 作業系統安裝所需的基本組件 (BOS installation),那么這種 lpp_source 就稱具有 simages 屬性。這種 lpp_source 分配給某個 NIM client 後,NIM master 就可以執行在該 NIM client 上安裝作業系統的任務了。反之,NIM master 就只能執行一些軟體維護的任務。simages 屬性在創建 lpp_source 時由 NIM 判斷產生。利用 NIM 提供的嚮導,如 nim_master_setup,用戶可以方便的生成具有 simages 屬性的 lpp_source。如果用戶還需要在安裝過程中加入自定義的軟體,則要將該軟體的安裝包按照 NIM 的規定複製到 lpp_source 的特定目錄下。
installp_bundle: installp_bundle 指向一個配置檔案,用於從 lpp_source 中選擇需要的 AIX 安裝包。因此,如果用戶需要加入自定義的軟體,除了要將安裝包拷貝到 lpp_source,還需要通過 installp_bundle 來明確聲明這個安裝包。
resolv_conf: resolv_conf 指向的配置檔案在安裝過程中被用於設定 NIM Client 的 DNS。儘管 NIM 在安裝過程中已經自動完成了對 NIM client 的基本網路配置,如對主機名、IP 地址、網關等的配置。但是 DNS 這方面,還是需要使用 resolv_conf 來進行配置。
image_data: image_data 所指向的配置檔案定義了 NIM client 的根卷組 (root Volume Group) 以及檔案系統。NIM 在安裝作業系統的初期,會根據 NIM client 的環境進行根卷組的配置。用戶可以使用 image_data 來修改這個默認設定,例如,擴容某個邏輯卷 (Logical Volume) 以及做為該卷掛載點 (mount) 的目錄,或是擴大默認的頁面空間 (Paging Space)。這一點對於需要在安裝過程中加入自定義軟體的用戶來說比較重要,因為某些自定義軟體在安裝過程中不會自動擴充安裝目錄,安裝目錄容量過小會導致這些軟體的安裝失敗。image_data 的配置需要用戶對 AIX 的相關檔案系統有比較深入的理解。
bosinst_data: bosinst_data 所指向的配置檔案預填了在進行 AIX 作業系統安裝時所需回答的問題,如是否接受 Licenses 或是安裝 CDE 等。
fb_script 和 script: fb_script 通常指向一個 shell 腳本,該腳本會在 AIX 作業系統安裝完後的首次引導時執行。NIM 還有一個類似的資源 script。兩者的區別在於執行的時間點不同,script 資源所指的腳本在早些時候被調用。具體的時間點是在作業系統的安裝過程中,所有的軟體包安裝完成之後。這個時間點上,某些守護進程並沒有啟動,無法執行一些配置工作,如硬體的配置,或是遠程掛載一些目錄等等,所以使用 fb_script 相對來說比較方便一些。當然,除了配置硬體以外,fb_script 也可以用來設定 root 的密碼和默認 shell 等等。
adapter_def: adapter_def 所指向的目錄包含了配置雙網卡所需要的信息。關於 adapter_def 的使用,在 "NIM from A to Z in AIX 5L" 有比較詳細地描述。
還有一些資源,如 tmp、root 和 home 等,是用於無盤工作站 (diskless station) 的安裝配置,這裡就不詳述了。
配置需求
本節通過一個配置實例來進一步闡述 NIM 資源的使用。下面的表格列出了配置的需求:
類型 需求
NIM master 作業系統 AIX6.1.0.0
NIM client 作業系統 AIX6.1.0.0
附加軟體 bash-3.0-1, openssh.*
域 ibm.com
NameServer 192.168.1.1
頁面空間 1G
/opt 目錄大小 4G
root 密碼 / 默認 shell abcdefg/bash
AIX使用的檔案系統
JFS
JFS( JOURNAL FILE SYSTEM),一種位元組級日誌檔案系統,借鑑了資料庫保護系統的技術,以日誌的形式記錄檔案的變化。JFS通過記錄檔案結構而不是數據本身的變化來保證數據的完整性。這種方式可以確保在任何時刻都能維護數據的可訪問性。
該檔案系統主要是為滿足伺服器(從單處理器系統到高級多處理器和群集系統)的高吞吐量和可靠性需求而設計、開發的。JFS檔案系統是為面向事務的高性能系統而開發的。在IBM的AIX系統上,JFS已經過較長時間的測試,結果表明它是可靠、快速和容易使用的。 2000年2月,IBM宣布在一個開放資源許可證下移植Linux版本的JFS檔案系統。JFS也是一個有大量用戶安裝使用的企業級檔案系統,具有可伸縮性和健壯性。與非日誌檔案系統相比,它的突出優點是快速重啟能力,JFS能夠在幾秒或幾分鐘內就把檔案系統恢復到一致狀態。雖然JFS主要是為滿足伺服器(從單處理器系統到高級多處理器和群集系統)的高吞吐量和可靠性需求而設計的,但還可以用於想得到高性能和可靠性的客戶機配置,因為在系統崩潰時JFS能提供快速檔案系統重啟時間,所以它是網際網路檔案伺服器的關鍵技術。使用資料庫日誌處理技術,JFS能在幾秒或幾分鐘之內把檔案系統恢復到一致狀態。而在非日誌檔案系統中,檔案恢復可能花費幾小時或幾天。
JFS的缺點是,使用JFS日誌檔案系統性能上會有一定損失,系統資源占用的比率也偏高,因為當它保存一個日誌時,系統需要寫許多數據。
JFS2
JFS2(又稱 enhanced journaled file system)是最早期的日誌檔案系統,在植入 Linux 之前已被套用於 IBM AIX作業系統多年。它是 64 位的檔案系統,雖然它是在原來的 JFS 的基礎上開發的,但卻較之有所改進,即:JFS2 具有更優的擴展性能,而且支持多處理器架構。
JFS2 支持預定的日誌記錄方式,可以提高較高的性能,並實現亞秒級檔案系統恢復。JFS2 同時為提高性能提供了基於分區的檔案分配(Extent-based allocation)。基於分區的分配 是指對一組連續的塊而非單一的塊進行分配。由於這些塊在磁碟上是連續的,其讀取和寫入的性能就會更好。這種分配的另外一個優勢就是可以將元數據管理最小化。按塊分配磁碟空間就意味著要逐塊更新元數據。而使用分區,元數據則僅需按照分區(可以代表多個塊)更新。
JFS2 還使用了 B+ 樹,以便更快地查找目錄和管理分區描述符。JFS2 沒有內部日誌提交策略,而是在 kupdate 守護進程逾時時提交。
NIM 資源清單
下面是使用 "NIM 資源概述 " 介紹的工具來滿足配置需求的一種實現。下表列出了所需定義的資源以及其所指向的配置檔案或者相關目錄,本文所用到的配置檔案可以直接 下載 :
資源類型 資源名稱 指向的配置檔案或目錄
lpp_source lpp_AIX6_1 /export/lpp_source/lpp_AIX6_1.d
spot spot_AIX6_1 /export/spot/spot_AIX6_1
installp_bundle Extra_AIX6_1_bnd /export/installp_bundle/Extra_AIX6_1.bnd
resolv_conf resolv_AIX6_1_conf /export/resolv_conf/resolv_AIX6_1.conf
image_data image_AIX6_1_data /export/image_data/image_AIX6_1.data
bosinst_data bosinst_AIX6_1_data /export/bosinst_data/bosinst_AIX6_1.data
fb_script fb_AIX6_1_sh /export/fb_script/fb_AIX6_1.sh
NIM 資源的創建
一個完整的配置過程,除了按照 "NIM 資源清單 " 定義所需的資源外,還包括 NIM master 的初始化以及 NIM Client 的資源分配等步驟。
NIM master 的初始化
首先,用戶需要將 AIX6.1.0.0 的安裝光碟放置在擔任 NIM master 的機器的光碟機中,接下來用戶就可以使用 nim_master_setup 等工具來安裝和配置 NIM master。下面列出了五條命令: NIM 命令結構比較清晰。在本文中,主要用到的參數有三種,參數 '-o' 表示操作的類型,比如說用 'define' 定義一個 NIM 對象 (object),或是用 'lslpp' 列出某個 lpp_source 包含的安裝包。參數 '-t' 表示操作對象的具體類型,可以是機器 (machine) 或某種資源等等。參數 '-a' 表示一些具體的屬性設定。關於 NIM 命令的細則,可以參考相關的 man 頁。
-bash-3.00# nim_master_setup -B -a mk_resource=no \
-a file_system=/export
-bash-3.00# mkdir -p /export/lpp_source/lpp_AIX6_1.d
-bash-3.00# nim -o define -t lpp_source \
-a server=master \
-a location=/export/lpp_source/lpp_AIX6_1.d \
-a source=/dev/cd0 lpp_AIX6_1
-bash-3.00# mkdir -p /export/spot
-bash-3.00# nim -o define -t spot -a server=master \
-a location=/export/spot -a source=lpp_AIX6_1 \
-a installp_flags=-aQg spot_AIX6_1
這五條命令中,第一條命令用 nim_master_setup 來安裝 NIM 自身所需的安裝包,並生成 master、master_net 和 boot。第二、三條命令創建目錄 "/export/lpp_source/lpp_AIX6_1.d",將 AIX6.1.0.0 的安裝包從光碟機拷貝到新創建的目錄,然後創建資源 lpp_AIX6_1 來管理這個目錄。當然,lpp_AIX6_1 是帶有 simages 屬性的。第四、五條命令創建目錄 "/export/spot",從 lpp_AIX6_1 生成 SPOT 資源 spot_AIX6_1。用戶可以參考 " 網路安裝管理器的強大功能 " 獲得關於 NIM master 配置更詳細的描述。用戶可以使用如下命令來驗證執行結果: master_net 存儲了一個子網的基本配置,包括網路地址及其掩碼,用於設定 NIM client 的網路。boot 指向 "/tftpboot" 目錄,該目錄存儲著 AIX 網路安裝時需要的 boot 程式。
-bash-3.00# lsnim
master machines master
boot resources boot
master_net networks ent
lpp_AIX6_1 resources lpp_source
spot_AIX6_1 resources spot
lpp_source 的修改
NIM 6.1.1.1 支持四種安裝檔案:BFF、RPM、ISMP 和 Interim Fix format,本文只涉及前兩種格式。BFF 就是 AIX 的 installp 格式,存儲在 lpp_source 所指的目錄下的 installp/ppc 子目錄。而 rpm 格式則存儲在 RPMS/ppc 子目錄下。用戶自定義的安裝包如果要被 NIM 找到,也需要根據安裝包的類型拷貝到指定目錄下。例如將 "bash-3.0-1.aix5.1.ppc.rpm" 拷貝到 "/export/lpp_source/lpp_AIX6_1.d/RPMS/ppc" 下,將 "openssh.*" 和 "openssl.*" 拷貝到 "/export/lpp_source/lpp_AIX6_1.d/installp/ppc" 下。拷貝完成後,使用如下命令檢查結果:
-bash-3.00# nim -o lslpp lpp_AIX6_1 | egrep 'bash|ssh'
openssh.base
openssh.base.client
openssh.base.server
openssh.license
openssh.license
openssh.man.en_US
openssh.man.en_US
bash-3.0
bash-3.0
installp_bundle 的定義
接著,用戶需要創建 installp_bundle 來選擇需要安裝的軟體包。下面是配置檔案 "Extra_AIX6_1.bnd" 的內容 :
-bash-3.00# cat /export/installp_bundle/Extra_AIX6_1.bnd
I:openssh.license
I:openssh.man.en_US
I:openssh.base.client
I:openssh.base.server
I:openssl.license
I:openssl.base
I:openssl.man.en_US
R:bash-3.0
每行由符號 ':' 分成兩部分,左邊的字元表示安裝包的格式。'I' 代表 BFF 格式,'R' 表示 RPM 格式。右邊是安裝包的名稱,可以用上一操作 "lpp_source 的修改 " 獲得。生成配置檔案後,就可以用如下命令創建 installp_bundle 類型的 NIM 資源 Extra_AIX6_1_bnd 了:
-bash-3.00# nim -o define \
-t installp_bundle -a server=master \
-a location=/export/installp_bundle/Extra_AIX6_1.bnd \
Extra_AIX6_1_bnd
resolv_conf 的定義
接下來是創建 resolv_conf。首先是創建用於 DNS 配置檔案 resolv_AIX6_1.conf。本例中,域名伺服器設定為 192.168.1.1,默認域為 "ibm.com"。具體的語法,請參考 "Files Reference" 關於系統檔案 "/etc/resolv.conf" 的描述。有了配置檔案,就可以創建 resolv_AIX6_1_conf。下面是具體的命令:
-bash-3.00# cat /export/resolv_conf/resolv_AIX6_1.conf
nameserver 192.168.1.1
domain ibm.com
-bash-3.00# nim -o define -t resolv_conf -a server=master \
-a location=/export/resolv_conf/resolv_AIX6_1.conf \
resolv_AIX6_1_conf
image_data 的定義
下面是 image_data 資源的配置。首先需要創建配置檔案 "image_AIX6_1.data",該檔案通常不需要用戶從頭寫起,有兩種辦法可以得到默板。一是通過 AIX 命令 mkszfile 創建 "/image.data",這個檔案記錄了所在的 AIX 的根卷組 (root Volume Group) 以及檔案系統的信息,用戶可以在這個基礎上進行修改。需要注意的是,配置檔案的語法與 AIX 系統的版本有關。二是在 spot 資源所指向的目錄下有一個 "image.data" 檔案,如本例中的 "/export/spot/spot_AIX6_1/image.data",也可以作為模板來修改。下面列出配置檔案中與修改相關的部分 :
-bash-3.00# cat /export/image_data/image_AIX6_1.data
......
lv_data:
VOLUME_GROUP= rootvg
LOGICAL_VOLUME= hd6
TYPE= paging
LPs= 256
PP_SIZE= 4
PP= 256
......
lv_data:
VOLUME_GROUP= rootvg
LOGICAL_VOLUME= hd10opt
TYPE= jfs2
LPs= 32
MOUNT_POINT= /opt
PP_SIZE= 128
PP= 32
......
fs_data:
FS_NAME= /opt
FS_SIZE= 8388608
FS_LV= /dev/hd10opt
......
因為需求是擴容邏輯卷,所以修改集中在 LPs、PP 這兩項上。LPs 表示該邏輯卷邏輯分區 LP(Logical Partition) 的數量,PP 表示分配的物理分區 (Physical Partition) 的數量。在這裡,LPs 和 PP 的值是一樣的。PP_SIZE 是物理分區的大小,以 Megabyte 為單位。邏輯卷的大小就可以通過計算 PP 和 PP_SIZE 的乘積得到。從上面的配置可以看出,邏輯卷 hd6 大小是 1G。因為 hd6 被用作頁面空間,所以頁面空間就被擴容為 1G。邏輯卷 hd10opt 大小是 4G,因為 hd10opt 會被掛載到目錄 /opt,所以還需要修改 /opt 目錄的大小 FS_SIZE 以保持一致。FS_SIZE 的單位是 512 位元組。具體的參數解釋,用戶可以參考 "Files Reference" 關於 "image.data" 的描述。用戶也可以通過 "AIX Logical Volume Manager, from A to Z: Introduction and Concepts" 了解更多關於 LVM 的知識。在得到配置檔案 "/export/image_data/image_AIX6_1.data" 後,就可以用如下命令創建 image_data 資源了 :
-bash-3.00# nim -o define -t image_data -a server=master \
-a location=/export/image_data/image_AIX6_1.data \
image_AIX6_1_data
bosinst_data 的定義
然後是 bosinst_data 相關的配置,該配置檔案的模版也可以從 spot 資源所指目錄中,也就是 "/export/spot/spot_AIX6_1/bosinst.data",獲得。下面列出對該模版的修改部分 :
-bash-3.00# cat /export/spot/spot_AIX6_1/bosinst.data
control_flow:
CONSOLE = Default
INSTALL_METHOD = overwrite
PROMPT = no
EXISTING_SYSTEM_OVERWRITE = yes
ACCEPT_LICENSES = yes
.......
修改主要集中在是否覆蓋原有作業系統 EXISTING_SYSTEM_OVERWRITE,是否接受 License 這兩方面。還有其他一些選項,用戶可以參考 "Files Reference" 中關於 "bosinst.data" 的描述。在得到配置檔案後,就可以用如下命令創建 bosinst_data 資源了 :
-bash-3.00# nim -o define \
-t bosinst_data -a server=master \
-a location=/export/bosinst_data/bosinst_AIX6_1.data \
bosinst_AIX6_1_data
fs_script 的定義
最後是 fs_script 資源的設定。首先是創建需要執行的 shell 腳本 "/export/fb_script/fb_AIX6_1.sh",該腳本分成兩個部分:第一個部分是使用命令 chpasswd 設定 root 賬號的密碼為 "abcdefg"。第二部分用 sed 編輯 "/etc/passwd" 檔案來設定 root 賬號的默認 shell。用戶可以用 shell 選項 '-n' 來檢查腳本語法的正確性。
-bash-3.00# cat /export/fb_script/fb_AIX6_1.sh
# set root's passwd
echo root:abcdefg | chpasswd; pwdadm -c root
# set bash as default shell
if rpm -aq | grep bash
then
if sed '/^root/s/\/usr\/bin\/ksh/\/usr\/bin\/bash/' /etc/passwd > /tmp/passwd
then
cp -f /tmp/passwd /etc/passwd
fi
fi
-bash-3.00# ksh -xvn /export/fb_script/fb_AIX6_1.sh
編輯完 "/export/fb_script/fb_AIX6_1.sh",就可以用如下命令創建 fs_script 資源了:
-bash-3.00# nim -o define -t fs_script -a server=master \
-a location=/export/fb_script/fb_AIX6_1.sh fb_AIX6_1_sh
最後的檢查
創建完上述的資源後,可以用如下命令來檢查所有的步驟是否正確執行:
-bash-3.00# lsnim
master machines master
boot resources boot
master_net networks ent
lpp_AIX6_1 resources lpp_source
spot_AIX6_1 resources spot
Extra_AIX6_1_bnd resources installp_bundle
resolv_AIX6_1_conf resources resolv_conf
image_AIX6_1_data resources image_data
bosinst_AIX6_1_data resources bosinst_data
fb_AIX6_1_sh resources fb_script
開始安裝
在上面的步驟都成功完成以後,就可以進行 AIX 的安裝了:
-bash-3.00# nim -o define -t standalone \
-a if1="master_net aix01 0" aix01
-bash-3.00# nim -o allocate \
-a lpp_source=lpp_AIX6_1\
-a spot=spot_AIX6_1 \
-a installp_bundle=Extra_AIX6_1_bnd \
-a resolv_conf=resolv_AIX6_1_conf \
-a image_data=image_AIX6_1_data \
-a bosinst_data=bosinst_AIX6_1_data \
-a fb_script=fb_AIX6_1_sh \
aix01
-bash-3.00# nim -o bos_inst \
-a source=rte \
-a installp_flags=agX \
-a accept_licenses=yes aix01
第一條命令在 NIM 維護的資料庫里定義了一個 NIM Client "aix01","aix01" 所在網路由 master_net 指定,主機名仍然是 "aix01"。第二條命令將前面定義的資源都分配給 "aix01",這樣在安裝 AIX6.1.0.0 到 "aix01" 的過程中,就可以使用這些資源實現安裝的自動化了。最後一條命令執行 AIX 作業系統的 BOS 安裝。
結論
NIM 資源提供給系統管理人員按需定製以及遠程批量部署 AIX 作業系統的機制。而系統測試人員也可以利用這一機制,再結合 HMC 的 mksyscfg、chsysstate 這些 LPAR 的創建和管理接口,方便的寫出從虛擬機的創建到作業系統的安裝的自動化腳本。從而實現基於虛擬技術的測試環境的自動化搭建工作。
AIX 遵循一系列的國際標準:
* IEEE POSIX1004.1-1990
* X/OPEN 移植指南ISSUE3的基本級(XPG3)
* AES/OS REVISION A (OSF/1 LEVEL 2 資格)
* FIPS 151-1
* AIX的編譯器: XLC、C++(可選)、FORTRAN(可選)、PASCAL(可選)、COBOL(可選)
* ADA 的編譯器已達到XPG3“成員”級的認可。
* AIX 支持多用戶、多任務。
AIX有一些其它特性包括:
AIX 提供了3 種SHELL :SYSTEM V的KORN、BOURNE SHELL和4.3BSDC SHELL作為可選擇的UNIX系統界面;
安全設施滿足TCB (Trusted Computing Base)的C2級;實時處理能力,這對於“面向交易”的套用至關重要(如零售業和銀行等),它使RS/6000 獲得極高的回響和吞吐量;
虛擬存儲管理,當需要時,可將一些不常用的模組轉送至外存,提高記憶體的可利用性。
先進的檔案系統,使得系統管理更加有效,並提高了數據可靠性以及完整性。
能兼容DOS 應用程式和數據。
InfoExplorer,快速信息超文本索引系統- 不僅包括文字,而且對包含聲音、圖像的索引系統,這是個在線上的檔案接口。包括全部的超文本的索引和查找,以及面向任務和坐標的多重導引和索引系統。這個文字及圖形索引系統以一個靈活的、基於任務的方式去使用詳細資訊及培訓資料。
高級系統管理工具(SMIT,System Management Interface Tool)。提供一級選單驅動程式,諸如完成軟體的安裝與設定、設備的設定及管理、問題的測定、存貯管理等。可以自動地進行I/O 設備設定,ASCII 終端也可充當系統控制台。在LAN 上可以進行遠程系統的安裝。
什麼是IBM AIX 6 資源中心
不單單是新一代 IBM 的作業系統,它也將給 UNIX 世界帶來新的革命!
AIX 是一個基於開放標準的 UNIX 作業系統 ,為全球數以萬計的用戶提供企業信息技術基礎架構。IBM 在 2007 年年中發布了最新的 AIX 6 的 Beta 版本,供全球的使用者免費下載使用,同時希望廣大的用戶提出自己的使用意見以及發現的問題。經過幾個月以來全球用戶的試用和測試,IBM 正式發布了 AIX 6.1 版本。雖然很多人通過先前的 Beta 版已經領略過了這個 IBM 王牌產品的最新面目,但是對於大多數的使用者來說,它還是很陌生的。這個最新的版本到底增加了什麼新的功能呢?有什麼新的特性呢?有什麼新的讓人振奮,甚至是革命性的技術呢?在這裡,我們集中地通過 AIX 6 的最新的 6 個特性來向您展示這個新產品的亮點。
AIX不會用於桌面系統,一般用來運行Oracle、Sybase、DB2等大型資料庫系統。其系統構建、實施、運維、高可用設定,有其平台特點。對於Oracle資料庫來說,《Oracle大型資料庫系統在AIX/UNIX上的實戰詳解》則是一本具有非常強針對性的技術專著。以AIX UNIX平台為主線,以其他UNIX系統為參照,描述了資料庫系統Oracle 10g、Oracle 11g的構架方法,說明了該資料庫在AIX平台常用的管理內容,提供了AIX上實施Oracle集群的環境要素和實施方法,分析了伺服器綜合容災的工程手段和技術方法,綜合了在AIX系統上最佳化Oracle的諸多做法和要點。最後,該書還以Sybase ASE資料庫系統作為對比,論述了Oracle在AIX上的特徵。.對於Sybase資料庫來說,《Sybase資料庫在UNIX、Windows上的實施和管理》則是一本面向構建、管理、維護、高可用設定的技術專著。