RHEL/CentOS, Debian/Ubuntu എന്നിവയിൽ Nginx ഉപയോഗിച്ച് OpenERP (Odoo) 9 സജ്ജീകരിക്കുന്നു


പൈത്തണിൽ എഴുതിയ ഒരു ഓപ്പൺ സോഴ്uസ് എന്റർപ്രൈസ് റിസോഴ്uസ് പ്ലാനിംഗ് ERP വെബ് അധിഷ്uഠിത ബിസിനസ്സ് സോഫ്uറ്റ്uവെയറാണ് ഓഡൂ, മുമ്പ് ഓപ്പൺഇആർപി എന്നറിയപ്പെട്ടിരുന്നു, ഇത് വെബ്uസൈറ്റ് ബിൽഡേഴ്uസ്, ഇ-കൊമേഴ്uസ് മൊഡ്യൂളുകൾ, ബില്ലിംഗ്, അക്കൗണ്ടിംഗ്, ഹ്യൂമൻ റിസോഴ്uസ് തുടങ്ങി എല്ലാ ബിസിനസ്സിനും വേണ്ടി രൂപകൽപ്പന ചെയ്uതിരിക്കുന്ന വെബ് ആപ്ലിക്കേഷനുകളുടെ ഒരു സ്യൂട്ട് ആണ്. പോയിന്റ് ഓഫ് സെയിൽ, കസ്റ്റമർ റിലേഷൻഷിപ്പ് മാനേജ്uമെന്റ്, ഇൻവെന്ററി മൊഡ്യൂൾ, ലൈവ് ചാറ്റ് എന്നിവയും മറ്റ് നിരവധി ആപ്പുകളും ഫീച്ചറുകളും.

വെബ് ആക്uസസ് ചെയ്യുന്നതിനായി ഫ്രണ്ടെൻഡിൽ ഒരു റിവേഴ്uസ് പ്രോക്uസിയായി പ്രവർത്തിക്കുന്നതിന്, Nginx സെർവറുള്ള RHEL/CentOS/Fedora അല്ലെങ്കിൽ Debian/Ubuntu അടിസ്ഥാനമാക്കിയുള്ള സിസ്റ്റങ്ങളിൽ Odoo-യുടെ ഏറ്റവും പുതിയ സ്ഥിരതയുള്ള പതിപ്പ് (പതിപ്പ് 9) എങ്ങനെ ഇൻസ്റ്റാൾ ചെയ്യാം എന്ന് ഈ ട്യൂട്ടോറിയൽ നിങ്ങളെ നയിക്കും. ബ്രൗസർ റീഡയറക്uട് പോർട്ടുകൾ ഉപയോഗിക്കുന്നതിന് ഉപയോക്താക്കളെ ഭാരപ്പെടുത്തേണ്ട ആവശ്യമില്ലാതെ, വേഗത്തിലും സുരക്ഷിതമായും സാധാരണ വെബ് ബ്രൗസിംഗ് പോർട്ടുകളിൽ നിന്ന് ഇന്റർഫേസ്.

ഘട്ടം 1: PostgreSQL ഡാറ്റാബേസ് ഇൻസ്റ്റാൾ ചെയ്ത് സുരക്ഷിതമാക്കുക

1. നിങ്ങൾ Odoo ഇൻസ്റ്റാളേഷനുമായി മുന്നോട്ട് പോകുന്നതിന് മുമ്പ്, ബാക്കെൻഡ് PostgreSQL ഡാറ്റാബേസ് ഇൻസ്റ്റാൾ ചെയ്യുന്നതിനായി Epel ശേഖരണങ്ങൾ നൽകുന്ന പാക്കേജുകൾ ഉപയോഗിച്ച് നിങ്ങളുടെ സിസ്റ്റം ഷിപ്പ് ചെയ്യുന്നുവെന്ന് ഉറപ്പാക്കുക.

താഴെ പറയുന്ന കമാൻഡുകൾ നൽകി ഏറ്റവും പുതിയ സുരക്ഷാ പാക്കേജുകളും പാച്ചുകളും ഉപയോഗിച്ച് സെർവർ കാലികമാണെന്ന് ഉറപ്പാക്കുക:

----------- On RedHat/CentOS based systems ----------- 
# yum update
# yum install -y epel-release

----------- On Debian/Ubuntu based systems ----------- 
# apt-get update && sudo apt-get upgrade # On Debian 

2. അടുത്തതായി, മുന്നോട്ട് പോയി PostgreSQL ഡാറ്റാബേസ് സെർവർ ഇൻസ്റ്റാൾ ചെയ്യുക, ഇത് വിവരങ്ങൾ സംഭരിക്കുന്നതിന് Odoo ഉപയോഗിക്കുന്ന സ്ഥിരസ്ഥിതി ഡാറ്റാബേസാണ്.

----------- On RedHat/CentOS based systems -----------
# yum install postgresql-server

----------- On Debian/Ubuntu based systems -----------
# apt-get install postgresql postgresql-client

PostgreSQL ഡാറ്റാബേസ് ആരംഭിക്കുക.

# postgresql-setup initdb	

ഇപ്പോൾ അവസാനം താഴെ പറയുന്ന കമാൻഡ് നൽകി PostgreSQL ഡാറ്റാബേസ് ആരംഭിക്കുക:

----------- On SystemD systems -----------
# systemctl start postgresql

----------- On SysVinit systems -----------
# service postgresql start

ശൂന്യമായ പാസ്uവേഡുള്ള PostgreSQL സ്ഥിരസ്ഥിതി ഉപയോക്താവിനെ സുരക്ഷിതമാക്കുന്നതിനുള്ള ഒരു അധിക ഘട്ടമെന്ന നിലയിൽ, പാസ്uവേഡ് മാറ്റുന്നതിന് റൂട്ട് പ്രത്യേകാവകാശങ്ങളോടെ താഴെയുള്ള കമാൻഡ് നൽകുക:

sudo -u postgres psql
postgres=# \password postgres

ഘട്ടം 2: Odoo 9 ഇൻസ്റ്റാൾ ചെയ്യുക - OpenERP

3. ഔദ്യോഗിക ശേഖരണത്തിൽ നിന്ന് Odoo 9 ഇൻസ്റ്റാൾ ചെയ്യുന്നതിനായി, താഴെ പറയുന്ന ഉള്ളടക്കം ഉപയോഗിച്ച് ആദ്യം Odoo-നായി പുതിയ yum റിപ്പോസിറ്ററി ഫയൽ സൃഷ്ടിക്കുക:

# vi /etc/yum.repos.d/odoo.repo

odoo.repo ഫയലിലേക്ക് ഇനിപ്പറയുന്ന ഉദ്ധരണി ചേർക്കുക.

[odoo-nightly]
name=Odoo Nightly repository
baseurl=http://nightly.odoo.com/9.0/nightly/rpm/
enabled=1
gpgcheck=1
gpgkey=https://nightly.odoo.com/odoo.key

ഡെബിയൻ/ഉബുണ്ടുവിൽ Odoo ശേഖരണങ്ങൾ ചേർക്കുന്നതിന് ഇനിപ്പറയുന്ന കമാൻഡ് നൽകുക:

# wget -O - https://nightly.odoo.com/odoo.key | apt-key add -
# echo "deb http://nightly.odoo.com/9.0/nightly/deb/ ./" >> /etc/apt/sources.list

4. അടുത്തതായി ബൈനറികളിൽ നിന്ന് Odoo 9 സോഫ്റ്റ്uവെയർ ഇൻസ്റ്റാൾ ചെയ്യുക.

----------- On RedHat/CentOS based systems -----------
# yum install odoo

----------- On Debian/Ubuntu based systems -----------
# apt-get update && sudo apt-get install odoo

അടുത്തതായി, അത് ആരംഭിച്ച് താഴെ പറയുന്ന കമാൻഡുകൾ നൽകി ഡെമൺ നില പരിശോധിക്കുക:

----------- On SystemD systems -----------
# systemctl start odoo
# systemctl status odoo

----------- On SysVinit systems -----------
# service odoo start
# service odoo status

ഒരു അധിക ഘട്ടമെന്ന നിലയിൽ നിങ്ങൾക്ക് ss അല്ലെങ്കിൽ netstat കമാൻഡ് പ്രവർത്തിപ്പിച്ച് Odoo സർവീസ് ലിസണിംഗ് പോർട്ട് പരിശോധിക്കാൻ കഴിയും:

# ss -tulpn
OR
# netstat -tulpn

സ്ഥിരസ്ഥിതിയായി, Odoo പോർട്ട് 8069/TCP-ൽ നെറ്റ്uവർക്ക് കണക്ഷനുകൾക്കായി ശ്രദ്ധിക്കുന്നു.

ഘട്ടം 3: വെബ് ഇന്റർഫേസിൽ നിന്ന് Odoo കോൺഫിഗർ ചെയ്യുക

5. Odoo കോൺഫിഗർ ചെയ്യുന്നതിനായി ഒരു ബ്രൗസർ ഫയർ-അപ്പ് ചെയ്യുന്നതിനും താഴെ പറയുന്ന URI-യിൽ Odoo വെബ് ഇന്റർഫേസ് ആക്സസ് ചെയ്യുന്നതിനും:

http://host-or-IP-address:8069/

6. അടുത്തതായി Odoo-യ്uക്കായി ഒരു പുതിയ ഡാറ്റാബേസ് സൃഷ്uടിക്കാനും അഡ്മിൻ അക്കൗണ്ടിനായി ശക്തമായ പാസ്uവേഡ് സജ്ജീകരിക്കാനും നിങ്ങളോട് ആവശ്യപ്പെടും.

7. ഡാറ്റാബേസ് സൃഷ്ടിച്ചുകഴിഞ്ഞാൽ നിങ്ങളെ അഡ്മിനിസ്ട്രേഷൻ വെബ് പാനലിലേക്ക് റീഡയറക്uടുചെയ്യും, അവിടെ നിങ്ങൾക്ക് കൂടുതൽ ആപ്ലിക്കേഷനുകൾ ഇൻസ്റ്റാൾ ചെയ്യാനും നിങ്ങളുടെ ERP കോൺഫിഗർ ചെയ്യാനും കഴിയും. തൽക്കാലം ആപ്ലിക്കേഷൻ ഡിഫോൾട്ടായി ഉപേക്ഷിച്ച് ലോഗ് ഔട്ട് ചെയ്യുക.

8. ലോഗിൻ സ്uക്രീനിൽ തിരിച്ചെത്തിയാൽ, Odoo ഡാറ്റാബേസ് മാനേജർ സുരക്ഷിതമാക്കാൻ, ഡാറ്റാബേസുകൾ നിയന്ത്രിക്കുക എന്ന ലിങ്കിൽ അമർത്തി ഒരു മാസ്റ്റർ പാസ്uവേഡ് സജ്ജമാക്കുക.

9. നിങ്ങൾ Odoo ഡാറ്റാബേസ് മാനേജർ സുരക്ഷിതമാക്കിക്കഴിഞ്ഞാൽ, നിങ്ങളുടെ ആപ്ലിക്കേഷനിൽ ലോഗിൻ ചെയ്യാനും നിങ്ങളുടെ ആവശ്യമായ ആപ്പുകളും ക്രമീകരണങ്ങളും ഉപയോഗിച്ച് അത് കൂടുതൽ കോൺഫിഗർ ചെയ്യാൻ തുടങ്ങുകയും ചെയ്യാം.

ഘട്ടം 4: Nginx ഫ്രണ്ടെൻഡിൽ നിന്ന് Odoo ആക്സസ് ചെയ്യുക

Nginx റിവേഴ്സ് പ്രോക്സി വഴി ഉപയോക്താക്കൾക്ക് Odoo വെബ് പാനൽ ആക്സസ് ചെയ്യാൻ കഴിയുന്ന തരത്തിൽ നിങ്ങൾക്ക് സിസ്റ്റം കോൺഫിഗർ ചെയ്യാം. ചില Nginx ഫ്രണ്ട്uഎൻഡ് കാഷിംഗ് കാരണം, സാധാരണ HTTP പോർട്ടുകളിൽ, അവരുടെ ബ്രൗസറുകളിൽ http പോർട്ട് 8069 സ്വമേധയാ നൽകേണ്ട ആവശ്യമില്ലാതെ Odoo വെബ് ഇന്റർഫേസ് വേഗത്തിൽ നാവിഗേറ്റ് ചെയ്യാൻ ഇത് ഉപയോക്താക്കളെ സഹായിക്കുന്നു.

ഈ ക്രമീകരണം കോൺഫിഗർ ചെയ്യുന്നതിന്, താഴെ പറയുന്ന ഘട്ടങ്ങൾ നൽകി നിങ്ങളുടെ സിസ്റ്റത്തിൽ Nginx ഇൻസ്റ്റാൾ ചെയ്യുകയും കോൺഫിഗർ ചെയ്യുകയും ചെയ്യേണ്ടതുണ്ട്.

10. താഴെ പറയുന്ന കമാൻഡ് ഉപയോഗിച്ച് ആദ്യം Nginx വെബ് സെർവർ ഇൻസ്റ്റാൾ ചെയ്യുക:

----------- On RedHat/CentOS based systems -----------
# yum install nginx

----------- On Debian/Ubuntu based systems -----------
# apt-get install nginx

11. അടുത്തതായി, ഒരു ടെക്സ്റ്റ് എഡിറ്റർ ഉപയോഗിച്ച് Nginx പ്രധാന കോൺഫിഗറേഷൻ ഫയൽ തുറന്ന് Nginx ഡോക്യുമെന്റ് റൂട്ട് ലൊക്കേഷൻ വ്യക്തമാക്കുന്ന വരിയ്ക്ക് ശേഷം ഇനിപ്പറയുന്ന ബ്ലോക്ക് ചേർക്കുക.

----------- On RedHat/CentOS based systems -----------
# vi /etc/nginx/nginx.conf 

----------- On Debian/Ubuntu based systems -----------
# nano /etc/nginx/sites-enabled/default

nginx.conf ഫയലിലേക്ക് ഇനിപ്പറയുന്ന കോൺഫിഗറേഷൻ ഉദ്ധരണി ചേർക്കുക:

 location / {
        proxy_pass http://127.0.0.1:8069;
        proxy_redirect off;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;

കൂടാതെ, ഇനിപ്പറയുന്ന വരികൾക്ക് മുന്നിൽ ഒരു # ഇട്ടുകൊണ്ട് Nginx ലൊക്കേഷൻ പ്രസ്താവന കമന്റ് ചെയ്യുക. ഒരു ഗൈഡായി താഴെയുള്ള സ്ക്രീൻഷോട്ട് ഉപയോഗിക്കുക.

#location / {
                # First attempt to serve request as file, then
                # as directory, then fall back to displaying a 404.
        #       try_files $uri $uri/ =404;
        #}

12. മുകളിലുള്ള എല്ലാ മാറ്റങ്ങളും വരുത്തിയ ശേഷം, Nginx ഡെമൺ പുനരാരംഭിക്കുക, എന്നാൽ നിങ്ങളുടെ മെഷീനിൽ Selinux പ്രവർത്തനക്ഷമമാക്കിയിട്ടുണ്ടോ എന്ന് പരിശോധിക്കുന്നതിന് getenforce കമാൻഡ് പ്രവർത്തിപ്പിക്കുന്നതിന് മുമ്പ് അല്ല.

നയം Enforced ആയി സജ്ജീകരിച്ചിട്ടുണ്ടെങ്കിൽ, താഴെ പറയുന്ന കമാൻഡുകൾ നൽകി അത് പ്രവർത്തനരഹിതമാക്കുക:

# setenforce 0
# getenforce

സെലിനക്സ് പൂർണ്ണമായും പ്രവർത്തനരഹിതമാക്കുന്നതിന്, ഒരു ടെക്സ്റ്റ് എഡിറ്റർ ഉപയോഗിച്ച് /etc/selinux/config ഫയൽ തുറന്ന് SELINUX എന്ന വരി പ്രവർത്തനരഹിതമാക്കുക.

നിങ്ങൾക്ക് സെലിയക്സ് നയം പൂർണ്ണമായും പ്രവർത്തനരഹിതമാക്കാൻ താൽപ്പര്യമില്ലെങ്കിൽ, നെറ്റ്uവർക്ക് സോക്കറ്റിലേക്ക് അനുവദനീയമായ ആക്uസസ് ഉള്ള Nginx പ്രോക്സി അനുവദിക്കുന്നതിന് നിയമങ്ങളിൽ ഇളവ് വരുത്തണമെങ്കിൽ ഇനിപ്പറയുന്ന കമാൻഡ് പ്രവർത്തിപ്പിക്കുക:

# setsebool httpd_can_network_connect on -P
# getsebool -a | grep httpd 

തുടർന്ന്, മുകളിൽ വരുത്തിയ മാറ്റങ്ങൾ പ്രതിഫലിപ്പിക്കുന്നതിന് Nginx ഡെമൺ പുനരാരംഭിക്കുക:

# systemctl restart nginx
OR
# service nginx restart

13. ഈ അടുത്ത ഘട്ടം ഒരു സുരക്ഷാ ഓപ്ഷണൽ സവിശേഷതയാണ്, കൂടാതെ Odoo ആപ്ലിക്കേഷൻ കേൾക്കുന്ന നെറ്റ്uവർക്ക് സോക്കറ്റിന്റെ മാറ്റത്തെ സൂചിപ്പിക്കുന്നു, എല്ലാ ഇന്റർഫേസുകളിൽ നിന്നും (അല്ലെങ്കിൽ വിലാസം) ലോക്കൽ ഹോസ്റ്റിലേക്ക് മാത്രം ബൈൻഡിംഗ് വിലാസം മാറ്റുന്നു.

ഈ മാറ്റം Nginx റിവേഴ്സ് പ്രോക്സിയുമായി സംയോജിപ്പിച്ച് മാത്രമേ ചെയ്യാവൂ, കാരണം ലോക്കൽ ഹോസ്റ്റിൽ ആപ്ലിക്കേഷൻ ബൈൻഡുചെയ്യുന്നത് LAN അല്ലെങ്കിൽ മറ്റ് നെറ്റ്uവർക്കുകൾക്കുള്ളിലെ ഉപയോക്താക്കളിൽ നിന്ന് Odoo ആക്uസസ് ചെയ്യാൻ കഴിയില്ലെന്ന് സൂചിപ്പിക്കുന്നു.

ഈ മാറ്റം സജീവമാക്കുന്നതിന്, /etc/odoo/openerp-server.conf ഫയൽ തുറന്ന് താഴെയുള്ള സ്ക്രീൻഷോട്ടിൽ നിർദ്ദേശിച്ചിരിക്കുന്നത് പോലെ മാത്രം ലോക്കൽഹോസ്റ്റിൽ ബൈൻഡ് ചെയ്യുന്നതിന് xmlrpc_interface ലൈൻ എഡിറ്റ് ചെയ്യുക.

xmlrpc_interface = 127.0.0.1

മാറ്റങ്ങൾ പ്രതിഫലിപ്പിക്കുന്നതിന് താഴെ പറയുന്ന കമാൻഡ് പ്രവർത്തിപ്പിച്ച് Odoo സേവനം പുനരാരംഭിക്കുക:

# systemctl restart odoo.service
OR
# service odoo restart

14. നിങ്ങളുടെ മെഷീന് ഫയർവാൾ നൽകുന്ന ഒരു നെറ്റ്uവർക്ക് ഡിഫൻസ് ലൈൻ ഉണ്ടെങ്കിൽ, Nginx പ്രോക്സിക്കായി പുറം ലോകത്തേക്ക് ഫയർവാൾ പോർട്ടുകൾ തുറക്കുന്നതിന് ഇനിപ്പറയുന്ന കമാൻഡുകൾ നൽകുക:

----------- On FirewallD based systems -----------
# firewall-cmd --add-service=http --permanent
# firewall-cmd --reload
----------- On IPTables based systems -----------
# iptables -A INPUT -p tcp -m tcp --sport 80 -j ACCEPT
# iptables -A OUTPUT -p tcp -m tcp --dport 80 -j ACCEPT
# /etc/init.d/iptables save
----------- On UFW Firewall systems -----------
# ufw allow http

15. അത്രമാത്രം! നിങ്ങളുടെ സെർവർ IP വിലാസമോ ഡൊമെയ്uൻ നാമമോ സന്ദർശിച്ച് ഇപ്പോൾ നിങ്ങൾക്ക് ERP Odoo ആപ്ലിക്കേഷൻ വിജയകരമായി ആക്uസസ് ചെയ്യാൻ കഴിയും.

http://192.168.1.40
http://domain.tld

16. ഒരു സിസ്റ്റം റീബൂട്ടിന് ശേഷം സേവനങ്ങൾ യാന്ത്രികമായി പ്രവർത്തിപ്പിക്കുന്നതിന്, ഒരു ഷോട്ട് ഉപയോഗിച്ച് എല്ലാ ഡെമണുകളും സിസ്റ്റം-വൈഡ് പ്രവർത്തനക്ഷമമാക്കുന്നതിന് ഇനിപ്പറയുന്ന കമാൻഡ് നൽകുക.

------------ On SystemD Systems ------------  
# systemctl enable postgresql.service 
# systemctl enable odoo.service
# systemctl enable nginx.service
------------ On SysVinit Systems ------------ 

# chkconfig postgresql on
# chkconfig odoo on
# chkconfig nginx on

ശ്രദ്ധിക്കുക: PDF റിപ്പോർട്ടുകൾക്കായി, ഇനിപ്പറയുന്ന ലിങ്ക് സന്ദർശിച്ച് നിങ്ങളുടെ സ്വന്തം വിതരണത്തിനായി wkhtmltopdf ബൈനറി പാക്കേജുകൾ സ്വമേധയാ ഡൗൺലോഡ് ചെയ്ത് ഇൻസ്റ്റാൾ ചെയ്യണം.