沃趣科技產(chǎn)品專家 郭旭瑞
容器技術并非Docker的創(chuàng)新,容器技術所依賴的一些基礎技術,如namespace、cgroup、chroot等等,也都不是Docker的首創(chuàng)。
Docker之所以流行,很大程度上取決于它提出的鏡像(image)的概念。Docker通過其鏡像的概念,重新定義了云時代的應用程序分發(fā)方式。
Docker讓軟件開發(fā)過程中的環(huán)境構建變得簡單,消除軟件測試過程中環(huán)境不一致導致的問題,又讓運維和部署變得輕松快速。
從Docker的logo就可以看出:容器就是集裝箱,我們的程序都被打包在集裝箱里;Docker就是搬運工,幫你把打包好的應用運輸?shù)绞澜绺鞯?,隨處運行。
在《翻過那座山,就能看見海 | Kubernetes讓DBA更優(yōu)雅地管理數(shù)據(jù)庫》一文中,我們探討過:數(shù)據(jù)庫的部署過程中,依賴包、內(nèi)核參數(shù)、用戶與組、目錄等等一系列前置條件都需要DBA人工或腳本方式進行操作,以及后續(xù)的數(shù)據(jù)庫軟件安裝、數(shù)據(jù)庫創(chuàng)建等工作,造成了大量重復性無意義的時間、精力消耗。Docker的鏡像便是將這所有的一切配置進行打包,一個鏡像就是一個容易分發(fā)的即啟即用的應用,與數(shù)據(jù)庫結合后一個鏡像就是一個迅速部署、即啟即用的數(shù)據(jù)庫。
沃趣科技緊跟時代發(fā)展浪潮,將容器技術融入到數(shù)據(jù)庫全生命周期管理,打造容器化云數(shù)據(jù)庫RDS產(chǎn)品,同時也積極回饋社區(qū),貢獻我們在容器化數(shù)據(jù)庫建設中的諸多經(jīng)驗。本文將公開我們制作的Oracle Database 11.2.0.4.0版本的Docker鏡像。
Oracle官方在Github上提供了一些Oracle Docker image,但并未提供11g R2版本??紤]到目前仍有大量用戶使用11g R2,所以,我們參考官方12.1版本image制作了11.2.0.4.0版本的image,并且在其基礎上做了進一步豐富和標準化,包括:
指定是否開啟歸檔
指定SGA及PGA大小(官方image指定的是固定的內(nèi)存大小,如需修改,需要在數(shù)據(jù)庫創(chuàng)建之后手動調(diào)整,所以,在此我們做了相應的自動化)
指定數(shù)據(jù)庫角色,包括primary及standby(官方鏡像只能創(chuàng)建primary數(shù)據(jù)庫,我們同時實現(xiàn)了創(chuàng)建standby數(shù)據(jù)庫的邏輯,但該部分邏輯依賴沃趣科技QCFS云存儲提供的快照功能,目前只能在QFusion 3.0 RDS數(shù)據(jù)庫云平臺中實現(xiàn))
包含對主庫實例狀態(tài)、備庫實例狀態(tài)和MRP恢復狀態(tài)的健康檢查
ONLINE REDO LOG自動調(diào)整為1G大小避免日志切換過于頻繁
設置用戶名密碼永不過期(雖不安全,但在絕大部分企業(yè)級用戶均采用此實踐)
關閉Concurrent Statistics Gathering功能
TEMP表空間設置為30G大小
SYSTEM表空間設置為1G大小
SYSAUX表空間設置為1G大小
UNDO表空間設置為10G大小
點擊(此處)折疊或打開