Ringkasan #
Tujuan artikel ini adalah untuk menjelaskan cara membuat aplikasi CRM yang penting untuk perusahaan seperti Odoo, sangat terukur. Juga, bagaimana mengaturnya dalam ketersediaan tinggi agar toleran terhadap kegagalan, dan bagaimana memperkuat keamanan akses terhadapnya.
Apa yang dimaksud dengan ketersediaan tinggi? #
Ketersediaan tinggi adalah kualitas sistem atau komponen yang menjamin kinerja operasional tingkat tinggi, biasanya waktu aktif, untuk jangka waktu yang lebih lama dari biasanya.
Apa itu odoo? #
Odoo (aka OpenERP) adalah perangkat lunak sumber terbuka bisnis yang mengintegrasikan semua kebutuhan bisnis, termasuk CRM, penagihan, akuntansi, situs web, gudang dan manajemen proyek, manufaktur, inventaris, dan banyak lagi!
Menyiapkan RELIANOID Load Balancer #
Dengan RELIANOID Load Balancer kami dapat memastikan ketersediaan tinggi dan mempersiapkan skalabilitas massal Odoo layanan dengan mengikuti langkah-langkah di bawah ini.
Perhatikan bahwa, untuk mengikuti petunjuk ini, Anda perlu menginstal sebuah instance RELIANOID Load Balancer dan beberapa contoh Odoo aplikasi. Selain itu, sangat penting bahwa Postgresql direplikasi di antara mereka, untuk memastikan konsistensi.
Lingkungan yang akan kami jelaskan dalam artikel ini ditunjukkan di bawah.

Langkah 1: Buat IP virtual #
Pembuatan IP virtual di penyeimbang beban diperlukan karena ini akan menjadi titik masuknya Odoo jasa. Dalam contoh kita, kita akan memiliki dua Odoo server nyata tetapi Anda dapat memasukkan sebanyak yang Anda perlukan tanpa batasan apa pun. Untuk membuat IP virtual baru, dari RELIANOID Menu utama LB, pilih Pengaturan->Antarmuka.

Temukan antarmuka fisik tempat Anda ingin membuat IP virtual dan di bawahnya tindakan klik tombolnya menambahkan antarmuka jaringan virtual.

Ketik alamat dan netmask IP virtual baru Anda, harus berada di subnet yang sama dengan perangkat fisik. Simpan dengan mengklik tombol simpan antarmuka virtual.

Langkah 2: Buat http farm #
Peternakan adalah kumpulan server komputer yang menyediakan fungsionalitas server yang meningkatkan kemampuannya secara signifikan. Jadi, dengan mendirikan peternakan Odoo server, kami akan meningkatkan kinerja dan skalabilitasnya, yang penting untuk ketersediaan tinggi. Untuk mencapai hal ini, kunjungi Kelola->Pertanian.

Klik Tambahkan peternakan baru dan di jendela baru, pilih nama dan HTTP sebagai profil. Kami memilih profil HTTP karena ini adalah pilihan terbaik untuk layanan web dan diperlukan untuk mengurai konten aplikasi untuk memberikan persistensi di tingkat aplikasi.

Dua opsi lagi akan ditampilkan. Pilih IP virtual yang dibuat pada langkah 1 dan port (dalam contoh kita memilih 80, karena ini adalah default untuk protokol HTTP) dan klik pada Simpan .

Untuk informasi lebih lanjut tentang peternakan, silakan merujuk ke Kelola :: peternakan.
Langkah 3: Tambahkan layanan #
Setelah peternakan dibuat, kita harus mengeditnya untuk menambahkan layanan baru. Silakan klik tombol tersebut edit pertanian.

Beberapa detail peternakan dapat diedit, sekarang kita akan mempertahankan nilai default dan menambahkan layanan baru.

Pada tangkapan layar di atas, temukan Tambahkan bagian layanan, ketikkan nama layanan dan klik Add.

Untuk saat ini, kami akan membiarkan nilai default dan hanya akan menambahkan backend di mana Odoo layanan nyata akan berjalan. Temukan bagian backend dan klik tombol tambahkan server nyata.

Sertakan alamat IP dan port dari Odoo layanan (default 8069 untuk layanan Odoo), batas waktu dan bobot, lalu klik simpan server sebenarnya.

Hal ini diperlukan untuk menghindari pergantian server: jika selama sesi kita berpindah dari satu server ke server lainnya, akan terjadi efisiensi, data, dan bahkan kehilangan komunikasi. Untuk menghindari perilaku ini Sesi ketekunan opsi harus dikonfigurasi. Kami akan memilih untuk mempertahankan sesi berdasarkan id sesi, jadi ini berarti selama sesi, kami hanya akan terhubung ke satu server.
Dalam parameter global layanan, kita sekarang dapat mengubah bidang sesi persistensi menjadi COOKIE: cookie tertentu dan klik memodifikasi.

Menyisipkan session_id sebagai pengidentifikasi sesi persistensi dan klik memodifikasi.

Terakhir, kita harus menerapkan perubahan dengan memulai kembali peternakan.
![]()
Selamat! Anda telah mengonfigurasi Odoo dalam ketersediaan tinggi. Anda dapat mengaksesnya dengan mengetik http://[VIRTUAL_IP]:[PORT] (dalam contoh kita http://192.168.56.200).
Langkah 4: Pemeriksaan kesehatan lanjutan #
Kami sekarang akan menyiapkan farm Guardian untuk melakukan pemeriksaan kesehatan lanjutan pada backend untuk memastikan bahwa backend aktif, berjalan, dan perilaku aplikasi yang benar, bukan hanya pemeriksaan port TCP. Silakan temukan Penjaga Pertanian dalam Odoo layanan yang telah kami siapkan di langkah 3. Klik Gunakan FarmGuardian untuk memeriksa Server Backend, Anda juga dapat mengubah waktu antara pemeriksaan dan akhirnya, di Perintah untuk memeriksa kotak teks, ketikkan perintah berikut:
check_http -I HOST -w 10 -c 10 -t 10 -e 200 -p PORT -s ' '
Akhirnya, klik memodifikasi.

Perintah periksa_http menguji koneksi HTTP dengan host yang ditentukan. Dalam kasus kami, kami menggunakan opsi berikut:
-AKU TUAN RUMAH: Token HOST akan diganti dengan alamat IP backend yang ditentukan.
-w 10: waktu respons untuk menghasilkan status peringatan: 10 detik
-c 10: waktu respons terhadap status kritis: 10 detik
-t 10: 10 detik sebelum waktu koneksi habis
-e 200: mengharapkan string 200 dalam status respons server
-p PELABUHAN: Token PORT akan digantikan oleh port backend yang ditentukan.
-S ' ': string yang diharapkan dalam konten adalah ' '
Pemeriksaan kesehatan tingkat lanjut ini memastikan bahwa kami mendapatkan respons 200 OK dari server sebenarnya dan perintah respons berisi string ' '. Kami memilih string ini karena berada di akhir respons, dengan cara ini kami dapat menjamin bahwa kami mendapatkan jawaban yang benar dari aplikasi backend.
Langkah 5: Keamanan tinggi #
Odoo tidak menyediakan saluran aman untuk komunikasi web tetapi kita dapat dengan mudah mencapainya dengan RELIANOID Load Balancer seperti yang ditunjukkan di bawah ini.

Kami telah menyiapkan pendengar HTTPS: Di Edit parameter global pertanian layar, silakan ubah pendengar pertanian dari HTTP ke HTTPS dan Pelabuhan Maya ke 443.

Di panggung ini, Odoo dapat diakses dengan mengetik https://[VIRTUAL_IP] di browser Anda.
Komunikasi aman kini berjalan, namun kita dapat melangkah lebih jauh dengan mengonfigurasi sandi HTTPS: dalam parameter global farm, temukan lokasi Pengaturan HTTPS bagian. Kita dapat mengubah sandinya menjadi Keamanan TINGGI.

Bidang ciphers digunakan untuk membuat daftar cipher yang diterima oleh server HTTPS untuk memperkuat koneksi SSL. Dengan memilih Keamanan TINGGI, kami akan menyetel sandi secara default.
kEECDH+ECDSA+AES128:kEECDH+ECDSA+AES256:kEECDH+AES128:kEECDH+AES256:kEDH+AES128:kEDH+AES256:DES-CBC3-SHA:+SHA:!aNULL:!eNULL:!LOW:!kECDH:!DSS:!MD5:!EXP:!PSK:!SRP:!CAMELLIA:!SEED
Pilihan lain adalah Sertifikat HTTPS tersedia: daftar sertifikat akan ditampilkan untuk dipilih untuk farm saat ini (hanya untuk farm HTTP, seperti kasus kami). Kita dapat memilih satu dari daftar dan mengkliknya Add. Akhirnya, klik memodifikasi dan mulai ulang pertanian untuk menerapkan perubahan.
Akhirnya, zencert.pem sertifikat dapat digunakan untuk menguji pendengar HTTPS, namun penting untuk menggunakan sertifikat SSL Anda sendiri.
Untuk informasi lebih lanjut, silakan merujuk ke Peternakan profil HTTP.
Langkah 6: Basis web Odoo #
Odoo membuat URL dengan mempertimbangkan pengaturannya web.base.url. Jika kita mengakses melalui RELIANOID Load Balancer kita akan melihat URL beralih ke URL backend. Karena kami telah mengonfigurasi komunikasi aman melalui HTTPS, hal ini mungkin menimbulkan masalah dan kami hanya dapat menavigasi ke Odoo URL dasar. Untuk menghindari hal ini, kita harus mengaturnya web.base.url parameter di masing-masing odoo Server.
Untuk mencapai hal ini, akses setiap backend, dan di panel kiri, buka Teknis >> Parameter >> Parameter sistem dan ubah web.base.url ke RELIANOID IP virtual Load Balancer dan port yang dipilih untuk odoo farm. Dalam contoh kita adalah https://192.168.56.200, atau lebih baik lagi, https://odoo.mycompany.com .

Fitur teknis mungkin dinonaktifkan. Jika demikian, opsi Teknis tidak akan tersedia. Untuk mengatasinya, pilih Pengguna >> Pengguna, edit pengguna saat ini dan aktifkan Fitur Teknis pilihan di bawah Usability.
Langkah 7: Penyimpanan file Odoo #
Ada beberapa opsi untuk mengonfigurasi penyimpanan file dalam Ketersediaan Tinggi.
1. Di setiap backend, kita dapat memasang penyimpanan bersama dan mengonfigurasi jalur lokal melalui parameter ir_attachment.lokasi di bawah bagian Pengaturan >> Teknis >> Parameter >> Parameter sistem.
2. Jika kita tidak memiliki unit untuk menyediakan ketersediaan tinggi sumber daya bersama untuk penyimpanan file, kita dapat menggunakannya RELIANOID untuk membuatnya untuk sebuah NFS Layanan (Network File System) agar dapat dipasang di setiap backend. Karena layanan ini menggunakan port TCP dan UDP, kita dapat membuat L4xNAT melalui semua port di bawah IP Virtual tertentu, yang akan digunakan untuk mengkonfigurasi mount secara otomatis pada saat boot melalui / etc / fstab file.
3. Pilihan lainnya adalah mengkonfigurasi SSHFS yang menggunakan layanan aman SSH untuk menggunakan sistem file bersama jarak jauh. Karena layanan SSH menggunakan port TCP 22 secara default yang dapat diseimbangkan bebannya melalui L4xNAT tanpa khawatir dengan cara yang mirip dengan kasus NFS.
Bergantung pada apakah diperlukan untuk membuat sumber daya penyimpanan file bersama aktif-aktif atau aktif-pasif, maka diperlukan replikasi atau sinkronisasi file.
Meskipun topik ini berada di luar cakupan artikel ini, topik ini akan dibahas dalam artikel khusus.
Sekarang, proses bisnis dan operasi Anda siap untuk menskalakan pengaturan Odoo dalam Ketersediaan Tinggi dengan RELIANOID, Nikmati!