Pengantar
Tujuan artikel ini adalah untuk menjelaskan cara membuat aplikasi CRM, penting untuk perusahaan seperti Odoo, sangat terukur. Juga, bagaimana mengaturnya dalam ketersediaan tinggi agar toleran terhadap kegagalan, dan bagaimana memperkuat keamanan akses ke sana.
Apa ketersediaan tinggi?
Ketersediaan tinggi adalah kualitas sistem atau komponen yang menjamin kinerja operasional tingkat tinggi, biasanya waktu aktif, untuk periode waktu yang lebih tinggi 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 Penyeimbang Beban Zevenet
Dengan Zevenet Load Balancer kami dapat memastikan ketersediaan tinggi dan mempersiapkan skalabilitas massal untuk Odoo layanan dengan mengikuti langkah-langkah di bawah ini.
Perhatikan bahwa, untuk mengikuti petunjuk ini, Anda harus menginstal instance Zevenet Load Balancer dan beberapa instance dari Odoo aplikasi. Selain itu, sangat penting bahwa file 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 masuk ke Odoo jasa. Dalam contoh kita, kita akan memiliki dua Odoo server sungguhan tetapi Anda dapat memasukkan sebanyak yang Anda butuhkan tanpa batasan apa pun. Untuk membuat IP virtual baru, dari Zevenet LB menu utama, pilih Pengaturan-> Antarmuka.
Temukan antarmuka fisik tempat Anda ingin membuat IP virtual dan di bawahnya tindakan klik tombolnya tambahkan antarmuka jaringan virtual.
Ketikkan alamat dan netmask dari IP virtual baru Anda, harus dalam 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 pertanian Odoo server, kami akan meningkatkan kinerja dan skalabilitasnya, yang penting untuk ketersediaan tinggi. Untuk mencapai ini, pergi ke Kelola-> Pertanian.
Klik Tambahkan peternakan baru dan di jendela baru, pilih nama dan HTTP sebagai profil. Kami memilih profil HTTP karena ini adalah opsi terbaik untuk layanan web dan diperlukan untuk mengurai konten aplikasi untuk memberikan ketekunan 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 Save .
Untuk informasi lebih lanjut tentang tambak, silakan lihat Kelola :: peternakan.
Langkah 3: Tambahkan layanan
Setelah tambak telah dibuat, kami harus mengeditnya untuk menambahkan layanan baru. Silakan klik tombol edit pertanian.
Beberapa detail tambak dapat diedit, sekarang kami 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 meninggalkan nilai default dan hanya akan menambahkan backends di mana Odoo layanan nyata akan berjalan. Temukan bagian backends dan klik tombol add real server.
Sertakan alamat IP dan porta dari Odoo layanan (8069 default untuk layanan Odoo), batas waktu dan berat dan klik simpan server yang sebenarnya.
Ini diperlukan untuk menghindari pergantian server: jika selama sesi kita beralih dari satu server ke server lain, akan ada efisiensi, data dan bahkan kehilangan komunikasi. Untuk menghindari perilaku ini Sesi ketekunan opsi harus dikonfigurasi. Kami akan memilih untuk mempertahankan sesi demi sesi id, jadi ini berarti bahwa selama sesi, kami hanya akan terhubung ke satu server.
Dalam parameter global layanan sekarang kita dapat mengubah bidang sesi persistensi menjadi COOKIE: cookie tertentu dan klik memodifikasi.
Menyisipkan session_id sebagai pengidentifikasi sesi kegigihan dan klik pada memodifikasi.
Akhirnya, kita harus menerapkan perubahan dengan memulai kembali peternakan.
Selamat! Anda telah mengkonfigurasi 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 mengatur wali pertanian untuk melakukan pemeriksaan kesehatan lanjutan ke backend memastikan bahwa mereka sudah siap, 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 memodifikasi waktu antara cek dan akhirnya, di menu Memerintahkan untuk memeriksa kotak teks, ketikkan perintah berikut:
check_http -I HOST -w 10 -c 10 -t 10 -e 200 -p PORT -s '</html>'
Akhirnya, klik memodifikasi.
Perintah check_http menguji koneksi HTTP dengan host yang ditentukan. Dalam kasus kami, kami menggunakan opsi berikut:
-SAYA HOST: Token HOST akan digantikan oleh alamat IP backend yang ditentukan.
-w 10: waktu respons untuk menghasilkan status peringatan: 10 detik
-c 10: waktu respons ke status kritis: 10 detik
-t 10: 10 detik sebelum waktu koneksi habis
-e 200: mengharapkan string 200 dalam status respons server
-p PORT: PORT token akan digantikan oleh port backend yang ditentukan.
-s ' ': string yang diharapkan dalam konten adalah ' '
Pemeriksaan kesehatan lanjutan ini memastikan bahwa kami mendapatkan respons 200 OK dari server nyata dan bahwa 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 backends.
Langkah 5: Keamanan tinggi
Odoo tidak menyediakan saluran aman untuk komunikasi web tetapi kami dapat dengan mudah mencapai ini dengan Zevenet 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 Port Virtual ke 443.
Di panggung ini, Odoo dapat diakses dengan mengetik https://[VIRTUAL_IP] di browser Anda.
Komunikasi yang aman sekarang sedang berjalan, tetapi kita dapat melangkah lebih jauh dengan mengkonfigurasi cipher HTTPS: dalam parameter global farm, cari Pengaturan HTTPS bagian. Kita dapat mengubah kode sandi menjadi Keamanan TINGGI.
Bidang sandi digunakan untuk membuat daftar sandi yang diterima oleh server HTTPS untuk mengeraskan koneksi SSL. Dengan memilih Keamanan TINGGI, kami akan mengatur secara default cipher.
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 tambak saat ini (hanya untuk tambak HTTP, yang merupakan kasus kami). Kita dapat memilih satu dari daftar dan klik Add. Akhirnya, klik memodifikasi dan mulai kembali pertanian untuk menerapkan perubahan.
Akhirnya, zencert.pem sertifikat dapat digunakan untuk menguji pendengar HTTPS, tetapi penting untuk menggunakan sertifikat SSL Anda sendiri.
Untuk informasi lebih lanjut, silakan merujuk ke Peternakan profil HTTP.
Langkah 6: Basis web Odoo
Odoo membangun URL dengan mempertimbangkan pengaturannya web.base.url. Jika kita mengakses melalui Zevenet Load Balancer kita akan melihat URL beralih ke URL backend. Karena kami telah mengonfigurasi komunikasi aman melalui HTTPS, ini mungkin menimbulkan masalah dan kami hanya dapat menavigasi ke Odoo URL dasar. Untuk menghindari ini, kita harus mengatur web.base.url parameter di masing-masing odoo Server.
Untuk mencapai ini, akses setiap backend, dan di panel kiri, buka Teknis >> Parameter >> Parameter sistem dan ubah web.base.url ke Zevenet Muat Balancer IP virtual dan port yang dipilih untuk peternakan odoo. Dalam contoh kita adalah https: // 192.168.56.200, atau bahkan lebih baik, https://odoo.mycompany.com.
Fitur teknis mungkin dinonaktifkan. Jika demikian, opsi Teknis tidak akan tersedia. Untuk mengatasi ini, pilih Pengguna >> Pengguna, edit pengguna saat ini dan aktifkan Fitur Teknis pilihan di bawah Usability.
Langkah 7: Odoo filestore
Ada beberapa opsi untuk mengonfigurasi filestore di Ketersediaan Tinggi.
1. Di setiap backend, kita bisa memasang penyimpanan bersama dan mengkonfigurasi jalur lokal melalui parameter ir_attachment.location di bawah bagian Pengaturan >> Teknis >> Parameter >> Parameter sistem.
2. Jika kami tidak memiliki unit untuk menyediakan ketersediaan sumber daya bersama yang tinggi untuk filestore, kami dapat menggunakan Zevenet untuk membuatnya untuk NFS Layanan (Sistem File Jaringan) agar dapat dipasang di setiap backend. Karena layanan ini menggunakan port TCP dan UDP, kami dapat membuat L4xNAT melalui semua port di bawah IP Virtual tertentu, yang akan digunakan untuk mengonfigurasi 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 yang jauh. Karena layanan SSH menggunakan port TCP 22 secara default yang dapat dimuat secara seimbang melalui L4xNAT tanpa masalah dengan cara yang mirip dengan kasus NFS.
Bergantung apakah diperlukan untuk membuat sumber daya penyimpanan file bersama aktif-aktif atau aktif-pasif, diperlukan replikasi atau sinkronisasi file.
Meskipun topik ini berada di luar cakupan artikel ini, topik ini akan dibahas dalam artikel khusus.
Sekarang, proses dan operasi bisnis Anda siap untuk mengatur skala Odoo di Ketersediaan Tinggi dengan Zevenet, selamat menikmati!