yukebrillianth
Poster 2.0
UPDATE TOPOLOGI BARU
Karena rumah saya gampang berdebu dan lembab yang menyebabkan komponen server dipenuhi debu dan karat, maka biasanya saya melakukan pembersihan 1-2 bulan sekali.Ditambah dengan bertambahnya aplikasi yang ditampung, untuk mengurangi downtime dan membuat server High Availability maka saya menambahkan pc utama saya sebagai replikasi master-master.
Berikut topologi nya.

A. Automatic FailOver
Cloudflared tunnel bisa memiliki beberapa connector, jika connector pertama mati maka cloudflared akan forward dari connector berikutnya (fail over). Kedua server terhubung dengan tunnel id yang sama. Jika server 1 saya matikan untuk dibersihkan, maka server 2 akan otomatis meggantikan.B. Load Balancing
Saya menerapkan loadbalancing dengan nginx (round robbin) pada kedua server, berikut adalah konfigurasinya.Server 1 - 192.168.0.200
NGINX:
server {
listen 8000 default_server;
location / {
add_haeder X-Node node1
proxy_pass http://127.0.0.1:7000
}
}
upstream app {
server 127.0.0.1:8000;
server 192.168.0.250:8000
}
server {
listen 80;
server_name xxxx.com;
location / {
proxy_pass http://app;
}
}
Server 2 - 192.168.0.250
NGINX:
server {
listen 8000 default_server;
location / {
add_haeder X-Node node2
proxy_pass http://127.0.0.1:7000
}
}
upstream app {
server 127.0.0.1:8000;
server 192.168.0.200:8000
}
server {
listen 80;
server_name xxxx.com;
location / {
proxy_pass http://app;
}
}
dengan begitu walaupun server 2 sedang tidak digunakan sebagai connector tunnel aktif, tetap bisa menampung requests dan jika server 1 mati maka server 2 akan menjadi connector aktif.
C. Database Master-Master Replication
Karena hanya memiliki dua node, jadi database diletakkan pada setiap server dan dilakukan replikasi master-master agar aplikasi dapat terhubung ke database masing-masing server.D. Cloud Storage
Karena menggunakan load balancer, jadi aplikasi di setiap server butuh konfigurasi tambahan untuk penyimpanan assets dinamis. Bisa menggunakan NFS atau menggunakan cloud storage. Saya menggunakan Cloudflare R2 (Gratis 10GB) dan Backblaze B2 (Gratis 10GB) untuk menyimpan assets dinamis dan sebagai backup storage.E. Backup Storage Server
Sementara ini, saya belum punya NAS untuk backup hanya mengandalkan Hard disk di pc utama saya dan ke cloud storage.Saya masih pemula di bidang ini, jika ada penyebutan kata yang salah atau salah pemahaman konsep silahkan coret-coret di bawah kritik, saran, dan koreksinya


