Kamis, 19 November 2020

REVERSE PROXY-multiple server

 Tutorial membuat load balancing dengan nginx

Tutorial membuat load balancing dengan nginx

Setelah kemarin saya membuat tutorial tentang reverse proxy, kali ini saya akan membuat tutorial load balancing menggunakan nginx. Tutorial kali ini akan saya buat menggunakan linux mint yang merupakan turunan dari ubuntu/debian. Akan tetapi saya juga akan menerangakan cara menginstall menggunakan centos 7.

Load balancing dalam http ini berfungsi untuk membagi beban server ke beberapa server lain nya. Untuk konfigurasi load balancing menggunakan nginx ini tidak jauh berbeda dengan konfigurasi  nginx reverse proxy kita hanya perlu menambahkan beberapa baris nginx configuration untuk membuat nginx sebagai load balancer.

Membuat load balancing dengan nginx

Install nginx

Versi Linux Mint, Ubuntu dan debian

sudo apt-get update
sudo apt-get install nginx -y
Bash

Versi Centos 7 / RHEL

sudo yum install epel-release
sudo yum update
sudo yum install nginx -y
Bash

jalankan nginx

sudo systemctl start nginx
Bash

Konfigurasi nginx sebagai load balancer

Bukalah nginx conf dengan perintah berikut

sudo nano /etc/nginx/nginx.conf
Bash

scroll sampai akhir lalu tambahkan perintah berikut

include /path/to/nginx/conf/contoh_rumahcode_org.conf
Bash

lalu bukalah file nya dengan menggunakan perintah

nano /path/to/nginx/conf/contoh_rumahcode_org.conf
Bash

Buatlah konfigurasi nginx dengan mengisi file di atas dengan perintah berikuti ini

    upstream backend {
      server host1.rumahcode.org;
      server host2.rumahcode.org;
   }
server {
    listen 80;
    server_name contoh.rumahcode.org;
    location / {
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header Host $http_host;
        proxy_set_header X-NginX-Proxy true;
        proxy_pass http://backend;
        proxy_redirect off;
    }
}
Bash

kemudian restart nginx

sudo systemctl restart nginx
Bash

pada contoh konfigurasi di atas saya membuat load balancer dengan menggunakan domain contoh.rumahcode.org lalu diarahkan ke host1.rumahcode.org dan host2.rumahcode.org.

Jadi pada contoh nginx load balancing di atas saya melakukan load balancing ke multiple servers.
Jika ingin membuat load balancing dengan multiple domains kamu dapat mengulangi contoh tahapan di atas dengan nama file dan domain yang berbeda.

Seperti yang sudah pernah saya bilang konfigurasi untuk membuat load balancing tidak berbeda jauh dengan konfigurasi membuat reserve proxy.

Tidak ada komentar:

Posting Komentar