GeoNetAgent, LDAPWeb, server-audit, server-connection
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

1.7 KiB

Decisions — Technology Stack

Terakhir Diperbarui: 2026-06-29


Backend — Laravel 12 (PHP 8.3)

Dipilih karena:

  • Tim familiar dengan PHP/Laravel
  • Eloquent ORM + migration system matang
  • Built-in: auth, queue, mail, broadcast
  • Komunitas besar, LTS roadmap jelas

Ditolak:

  • FastAPI (Python): Dipakai di GeoNetAgent — pilihan valid, tapi tim lebih familiar Laravel untuk portal
  • Node.js/Express: Less familiar, lebih cocok untuk real-time

Database — PostgreSQL

Dipilih karena:

  • Open source, tidak ada biaya lisensi
  • Support pgvector untuk Fase 4 (Ollama AI search)
  • JSON/JSONB support
  • Docker official image reliable

Ditolak:

  • MySQL: Tidak support pgvector
  • SQL Server: Berlisensi, sudah ada hanya untuk GIS legacy

Auth — LDAP Active Directory

Dipilih karena:

  • Semua user IT sudah di AD
  • Single source of truth identity
  • Tidak perlu manage password terpisah

File Storage — QNAP QuObjects (OSS)

Dipilih karena:

  • Hardware sudah ada (QNAP TS-932X)
  • S3-compatible → Laravel s3 driver standar
  • File persist lintas container rebuild

AI Search — Ollama + pgvector (Fase 4)

Dipilih karena:

  • Self-hosted, data tidak keluar jaringan internal
  • Ollama: mudah deploy + model management
  • pgvector: tetap di PostgreSQL yang sudah ada

Ditolak:

  • OpenAI API: Data sensitif tidak boleh keluar, biaya berulang
  • Elasticsearch: Overkill untuk skala ini

Monitoring — Zabbix

Dipilih karena:

  • Sudah berjalan di 10.100.1.42
  • Manage semua server + network

Prinsip: Jangan duplikasi fungsi Zabbix di aplikasi custom.


Infrastruktur Jaringan — MikroTik CCR2004

Sudah ada, dikelola via RouterOS scripts (server/*.rsc).