Odoo v10.0版本遷移指南

1. 說明


Odoo是python語言開發的一個開源的ERP系統。
目前,我們工作中用到的也只有休假這一個模塊。

2. 原服務情況


  • 服務
  • Odoo v10.0_20170303
  • postgresql v9.2
  • 目錄
  • /usr/lib/python2.7/site-packages/odoo #Odoo運行的所有服務端代碼存放位置
  • /var/lib/odoo #Odoo的數據存儲位置
  • /etc/odoo/odoo.conf #Odoo的服務端配置文件
  • OS
  • CentOS 7.2

3. 備份


大致了解了原服務器的大致信息后,我們就開始備份數據。有一點很重要,我們為了確保數據的完整,一定要先停掉服務,然后再做備份的操作。

  • Odoo

/var/lib/odoo目錄下有三個目錄addonsfilestoresessions。addons目錄默認是空的,實際的文件都在/usr/lib/python2.7/site-package/odoo/addons這個目錄下面的。filestore是Odoo用來存放附件的目錄,這個必須做一個備份才行。sessions是Odoo用來存放用戶會話信息的目錄,對于遷移后的新服務器來說沒什么用,所以不需要做備份。

~]# tar zcvf Odoo_install.tar.gz /usr/lib/python2.7/site-packages/odoo /usr/lib/python2.7/site-packages/odooodoo-10.0_20170303-py2.7.egg-info #備份python程序部分
~]# tar zcfv Odoo_alldata.tar.gz /var/lib/odoo/filestore/oadbadmin  #備份Odoo數據部分的附件部分
  • Postgresql
~]$ pg_dump -U postgres oadbdmin -f Odoo_postgres_data.sql #備份postgresql數據

4. Odoo及postgresql安裝


原來的數據都備份完成了,接下來我們就要開始新服務器的部署配置工作了。我們先列出來Odoo對硬件的要求。從官方文檔中沒找到,但是官方論壇里面有人貼出來了,鏈接地址:https://www.odoo.com/zh_CN/forum/help-1/question/server-requirements-121217,我把內容也貼出來吧。

  • Minimum Server Specification:
    Processor = Intel (64 bit)
    Number of Processors = 1
    Processor Core available = 6
    Memory = 8 Gigabyte
    OS = Ubuntu 14.04 LTS

  • Recommended server:
    Processor = Intel (64 bit)
    Number of Processors = 2
    Processor core available = 8
    Memory = 16 Gigabyte
    OS = Ubuntu 14.04
    HDD = Up to client

本次我們使用的操作系統為CentOS7.2,主要是為了減少與原來系統的差異。

CentOS的自帶yum源中包含postgresql相關的軟件包,可以直接安裝。

$ sudo yum install -y postgresql-server  #安裝postgresql的服務端
$ sudo postgresql-setup initdb #postgresql初始化,包括創建數據目錄、生成共享目錄表以及創建template1和postgresql數據庫,該操作不能使用root用戶
$ sudo systemctl enable postgresql  #啟用開機啟動postgresql功能
$ sudo systemctl start postgresql #啟動postgresql服務

在CentOS系統上安裝Odoo,有很多的依賴是自帶的yum源所沒有的,所以我們還需要安裝EPEL的源,EPEL源中所沒有的依賴部分會在文末列出來。
官方的yum源每天都會有一個新的滾動版本發布,為了更貼近原有服務器的odoo版本,我們采用rpm包的方式安裝,官方倉庫中已經沒有20170303的版本了,所以這里我們使用20170401的版本。

~]# wget http://nightly.odoo.com/10.0/nightly/rpm/odoo_10.0.20170401.noarch.rpm
~]# yum install odoo_10.0.20170401.noarch.rpm

官方步驟如下:

$ sudo yum install yum-utils #yum包管理工具
$ sudo yum-config-manager --add-repo=https://nightly.odoo.com/10.0/nightly/rpm/odoo.repo #添加odoo的yum源
$ sudo yum install -y odoo
$ sudo systemctl enable odoo
$ sudo systemctl start odoo
  • 配置

本次主要是系統遷移,就不需要像新安裝Odoo的步驟一樣了。

(1). 我們需要把原系統的Odoo的配置文件放到新的服務器的/etc/odoo/odoo.conf目錄下,覆蓋安裝時自動生成的配置文件。
(2). 刪除現有的Odoo服務器端程序

~]# rm -rf /usr/lib/python2.7/site-packages/odoo/*

(3). 將之前備份的Odoo_install.tar.gzOdoo_alldata.tar.gz上傳到新服務器上,然后解壓到對應的位置。

~]# tar xvf Odoo_install.tar.gz -C /
~]# tar xvf Odoo_alldata.tar.gz -C /

(4). 重啟Odoo

~]#systemctl restart odoo

(5). 數據庫恢復
Odoo安裝時會自動創建odoo用戶,現在我們需要對數據庫進行一些操作了。操作數據庫我們需要切換用戶到postgres,然后執行psql就會進入數據庫。

postgres=# CREATE DATABASE oadbadmin; #創建odoo要使用的數據庫
postgres=# ALTER DATABASE oadbadmin OWNER TO odoo; #修改oadbadmin數據庫的owner為odoo

數據庫的基本操作結束了,現在我們就要把之前備份的數據庫導入到新的數據庫中,與上面操作一樣需要使用postgres用戶來操作。

~]$ psql -U postgres -d oadbadmin -f Odoo_postgres_data.sql

5. 訪問


Odoo和postgresql都準備好了,這下我們就可以來訪問Odoo的頁面了。
訪問鏈接為: http://new_server's ip:8069,系統會自動跳轉到登錄頁面,我們使用管理員用戶登錄系統(和操作原有系統一模一樣)。
至此,Odoo基本OK了,但是還有一點點問題,在Odoo原來的配置中我們使用了OpenLDAP來做用戶統一認證。原有的OpenLDAP也做了遷移,所以我們需要把這個部分也做相應的修改,我們在設置通用設置中進行LDAP認證的修改。

6. LDAP配置


10.0版本的ldap配置項如下圖所示。


openldap
  • LDAP服務器地址
    這個就是指的提供ldap信息驗證的服務所在服務器的IP地址,也可以是域名,但是需要在odoo服務端配置好dns服務器,否則無法解析域名。
  • LDAP服務器端口
    與上面提供的ldap服務相關的服務端口號,openLDAP默認389端口。
  • LDAP綁定DN
    這個賬號是用來和ldap服務進行數據交互使用的,一般使用管理員的賬號。
  • LDAP密碼
    與上面的用戶對應的密碼
  • LDAP基節點
    這個代表我們需要搜索的用戶所在的域,或者一個用戶組,如果不做限制就用dc=xx,dc=xx這樣的,做限制的話,類似ou=xxx,dc=xx,dc=xx
  • LDAP篩選
    這個選項代表的意思是我們使用ldap服務返回的那個字段來用作odoo用戶的用戶名(登錄名),我們這里使用uid,也有很多使用mail。
  • 創建用戶
    這個選項代表,在ldap中創建用戶后,我們第一次在odoo中登錄時,odoo系統會去ldap系統查找是否存在該用戶,如果存在就會在odoo中創建該用戶,并登錄,但是這個版本會報500的服務器錯誤,服務器日志的打印是記錄不存在或者已刪除 ,這種情況下odoo就會創建該系統用戶。
  • 模板用戶
    該選項可以使用戶在odoo中第一次登錄的時候按照該用戶的信息模板進行新用戶的創建,包括郵件、手機號、權限等。這樣的話,在odoo用戶第二次登錄的時候就可以正常進入系統(必須授予訪問權限)。
  • 序號
    默認值即可,也可以改下一些。
  • 使用TLS傳輸層套接字
    如果服務端啟用的話,可以勾選。

附1

Odoo特殊依賴列表

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市,隨后出現的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 230,247評論 6 543
  • 序言:濱河連續發生了三起死亡事件,死亡現場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機,發現死者居然都...
    沈念sama閱讀 99,520評論 3 429
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事。” “怎么了?”我有些...
    開封第一講書人閱讀 178,362評論 0 383
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經常有香客問我,道長,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 63,805評論 1 317
  • 正文 為了忘掉前任,我火速辦了婚禮,結果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當我...
    茶點故事閱讀 72,541評論 6 412
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發上,一...
    開封第一講書人閱讀 55,896評論 1 328
  • 那天,我揣著相機與錄音,去河邊找鬼。 笑死,一個胖子當著我的面吹牛,可吹牛的內容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 43,887評論 3 447
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 43,062評論 0 290
  • 沈念sama閱讀 49,608評論 1 336
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 41,356評論 3 358
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發現自己被綠了。 大學時的朋友給我發了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 43,555評論 1 374
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 39,077評論 5 364
  • 正文 年R本政府宣布,位于F島的核電站,受9級特大地震影響,放射性物質發生泄漏。R本人自食惡果不足惜,卻給世界環境...
    茶點故事閱讀 44,769評論 3 349
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 35,175評論 0 28
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至,卻和暖如春,著一層夾襖步出監牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 36,489評論 1 295
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個月前我還...
    沈念sama閱讀 52,289評論 3 400
  • 正文 我出身青樓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 48,516評論 2 379

推薦閱讀更多精彩內容