Complete Server Inventory
Data Source: Zabbix Monitoring System
Last Updated: 2025-11-15
Total Servers: 60+ Active Systems
Summary Statistics
| Category |
Count |
Notes |
| API Servers |
7 |
Windows-based application servers |
| Load Balancers |
6 pairs |
HAProxy HA pairs for different services |
| SQL Server Databases |
16+ |
Primary + 6 replicas + specialized DBs |
| MongoDB Instances |
8 |
390M+ documents across all instances |
| Supplier Proxy APIs |
7 |
Dedicated supplier integration layer |
| Hypervisors |
5 |
XCP-ng and Proxmox |
| Total Active IPs |
60+ |
In 10.32.8.0/24 network |
MongoDB Infrastructure
- 8 MongoDB Servers serving different purposes
- 390+ million documents total
- Largest: Supplier Performance (216M docs)
- NOT using replica sets - each server has unique data
Core Application Infrastructure
Load Balancer Layer (HA Pairs)
Main Application HAProxy
| Server |
IP |
Role |
Status |
| HAProxy-Master |
10.32.8.36 |
Primary LB |
✅ Active |
| HAProxy-Standby |
10.32.8.38 |
Standby LB |
✅ Active |
VIP/Floating IP: TBD
Purpose: Load balancing for 7 API servers
Health Check: Every 10 seconds
SQL Replica HAProxy Cluster
| Server |
IP |
Role |
Status |
| Haproxy-SqlReplica-1-Master |
10.32.8.7 |
Primary LB |
✅ Active |
| Haproxy-SqlReplica-2-Standby |
10.32.8.8 |
Standby LB |
✅ Active |
| Cluster VIP |
10.32.8.5 |
Floating IP |
✅ Active |
Purpose: Load balancing across 6 SQL Server replicas
OTH Service HAProxy
| Server |
IP |
Role |
Status |
| OTH-HaProxy-Master |
10.32.8.106 |
Primary LB |
✅ Active |
| OTH-HaProxy-Standby |
10.32.8.107 |
Standby LB |
✅ Active |
Purpose: Load balancing for OTH (Online Travel Hub) service
Application Servers (7 Windows API Servers)
| Server |
IP Address |
Hostname |
Group |
Status |
| API-1 |
10.32.8.134 |
API-1 |
Applications |
✅ Active |
| API-2 |
10.32.8.135 |
API-2 |
Applications |
✅ Active |
| API-3 |
10.32.8.139 |
API-3 |
Applications |
✅ Active |
| API-4 |
10.32.8.137 |
API-4 |
Applications |
✅ Active |
| API-5 |
10.32.8.35 |
API-5 |
Applications |
✅ Active |
| API-6 |
10.32.8.166 |
API-6 |
Applications |
✅ Active |
| API-7 |
10.32.8.167 |
API-7 |
Applications |
✅ Active |
OS: Windows Server
Framework: .NET 9 / ASP.NET Core
Load Balanced By: HAProxy-Master (10.32.8.36)
Database Infrastructure
SQL Server - Primary & Replicas
Primary Database
| Server |
IP |
Port |
Database |
Purpose |
| Main Database |
10.32.8.130 |
1988 |
withinearthUpdated |
Primary production DB |
Read Replicas (6 instances)
| Server |
IP |
Port |
Database |
Purpose |
| SQL-Replica-1 |
10.32.8.5 |
1433 |
withinearthUpdated |
Read replica (via HAProxy VIP) |
| SQL-Replica-2 |
10.32.8.143 |
1433 |
withinearthUpdated |
Read replica |
| SQL-Replica-3 |
10.32.8.149 |
1433 |
withinearthUpdated |
Read replica |
| SQL-Replica-4 |
10.32.8.85 |
1433 |
withinearthUpdated |
Read replica |
| SQL-Replica-5 |
10.32.8.37 |
1433 |
withinearthUpdated |
Read replica |
| SQL-Replica-6 |
10.32.8.39 |
1433 |
withinearthUpdated |
Read replica |
Replication: SQL Server replication
Access: Via HAProxy cluster VIP 10.32.8.5
Specialized SQL Databases
| Server |
IP |
Port |
Database |
Purpose |
| LogServer-1 |
10.32.8.140 |
1988 |
savesupplierlog |
Supplier search logs |
| API-LogServer-VM |
10.32.8.152 |
1433 |
Logtracking |
API request/response logs |
| LogServer-2-From main DB |
10.32.8.16 |
1433 |
ErrorLog |
Error and exception logs |
| LogServer-3-Agoda-Logs |
10.32.8.88 |
1433 |
Agoda logs |
Agoda supplier logs |
| LogServer (180VM) |
10.32.8.180 |
1433 |
Logtracking |
Additional log tracking |
| CM-Server-1 |
10.32.8.142 |
1433 |
Cache Manager |
Connection manager DB |
| CM-Server-2 |
10.32.8.34 |
1433 |
Cache Manager |
CM replica |
OTH (Online Travel Hub) Databases
| Server |
IP |
Port |
Database |
Purpose |
| OTH-MASTER |
10.32.8.11 |
1433 |
OTH Database |
OTH primary |
| OTH-2 |
10.32.8.86 |
1433 |
OTH Database |
OTH replica |
| OTH-3 |
10.32.8.40 |
1433 |
OTH Database |
OTH replica |
MongoDB Infrastructure (8 Servers)
Search Key Storage Servers (3 Independent Servers - NOT Replica Set)
| Server |
IP |
Database |
Collection |
Documents |
Purpose |
| MongoDB-1 |
10.32.8.51 |
withinearth |
XConnect_Live |
1,668,076 |
Search keys storage |
| MongoDB-2 |
10.32.8.52 |
withinearth |
XConnect_Live |
799,451 |
Search keys storage |
| MongoDB-3 |
10.32.8.53 |
withinearth |
XConnect_Live |
~3,244,107 |
Search keys storage |
Important
These are NOT replica sets - each server stores different search keys
Read Strategy: Cascading failover (tries 51 → 52 → 53)
Write Distribution: To be determined (under investigation)
Purpose: Store search keys for hotel availability searches (30-60 min retention)
Supplier Search Logs
| Server |
IP |
Database |
Collection |
Documents |
Purpose |
| MongoDB-SupplierLog |
10.32.8.18 |
SupplierSearchLog |
SupplierSearchLog |
4 |
Supplier search logs |
Status: Active (very low current usage)
Room Mapping MongoDB
| Server |
IP |
Database |
Collection |
Documents |
Purpose |
| MongoDB-RoomMapping |
10.32.8.96 |
RoomMapping |
ROOM_Mapping_Xconnect |
5,752,410 |
Main room mappings |
|
|
RoomMapping |
Gimmo_ROOM_Mapping_Xconnect |
- |
Gimmonix room mappings |
|
|
RoomMapping |
Gimmo_ROOM_Mapping_Xconnect_DAG2 |
- |
Gimmonix DAG2 mappings |
|
|
Booking_com_RoomMapping |
Booking_com_ROOM_Mapping_Xconnect |
2,781,903 |
Booking.com specific mappings |
Total Documents: ~8.5 million room mappings
Purpose: Standardize room types across different suppliers
Status: Heavy usage
Unmapped Rooms MongoDB
| Server |
IP |
Database |
Collection |
Documents |
Purpose |
| MongoDB-UnmappedRooms |
10.32.8.101 |
Row_RoomsForRoomMapping |
ROOM_Mapping_Xconnect |
33,340 |
Rooms awaiting mapping |
|
|
HotelRoomDB |
- |
- |
Hotel room database |
Purpose: Queue of rooms that need to be mapped
Status: Active
API Request/Response Logs MongoDB
| Server |
IP |
Database |
Collection |
Documents |
Purpose |
| MongoDB-APILogs |
10.32.8.75 |
SaveAPIRQRSLog |
SaveAPIRQRSLog_Xconnect |
~161,615,869 |
API RQ/RS debugging logs |
Total Documents: 161.6 million
Purpose: Complete API request/response logging for debugging
Added: 19-FEB-2025
Status: Very heavy usage
| Server |
IP |
Database |
Collection |
Documents |
Purpose |
| MongoDB-SupplierPerf |
10.32.8.74 |
SupplierPerformanceReport |
SPRData |
~215,982,940 |
Supplier analytics |
|
|
SupplierPerformanceReport |
SPRData_test |
- |
Testing data |
Total Documents: 216 million (LARGEST MongoDB instance)
Purpose: Supplier performance metrics and analytics
Added: 27-FEB-2025
Status: Heaviest usage
MongoDB Summary:
- Total Servers: 8 MongoDB instances
- Total Databases: 11 databases
- Total Documents: ~390 million documents
- Largest Instance: Supplier Performance (216M docs)
- Second Largest: API Logs (162M docs)
- Purpose-Built: Each MongoDB serves a specific function
Cache & Message Queue
| Server |
IP |
Port |
Type |
Purpose |
Status |
| Redis |
10.32.8.205 |
6379 |
Redis Cache |
In-memory cache (not currently used) |
⚠️ Not in use |
| RabbitMQ |
10.32.8.90 |
5672 |
Message Queue |
Async job processing |
✅ Active |
Redis Status: ⚠️ Not currently used in production
RabbitMQ Status: ✅ Active and in production (single instance, VM on XCP-1)
Supplier Integration Layer
Supplier Proxy API Servers (7 instances)
| Server |
IP |
Purpose |
Status |
| supplierproxy-api-1 |
10.32.8.41 |
Supplier API proxy |
✅ Active |
| supplierproxy-api-2 |
10.32.8.42 |
Supplier API proxy |
✅ Active |
| supplierproxy-api-3 |
10.32.8.43 |
Supplier API proxy |
✅ Active |
| supplierproxy-api-4 |
10.32.8.48 |
Supplier API proxy |
✅ Active |
| supplierproxy-api-5 |
10.32.8.45 |
Supplier API proxy |
✅ Active |
| supplierproxy-api-6 |
10.32.8.46 |
Supplier API proxy |
✅ Active |
| supplierproxy-api-7 |
10.32.8.47 |
Supplier API proxy |
✅ Active |
Supplier Gateway
| Server |
IP |
Purpose |
Status |
| SupplierProxy-1-Gateway |
10.32.8.3 |
Supplier API gateway |
✅ Active |
Purpose: Isolate supplier API calls, rate limiting, request aggregation
Languages: Node.js, Python
Supporting Infrastructure
Business Intelligence & Analytics
| Server |
IP |
Purpose |
Status |
| Tableau |
10.32.8.129 |
BI dashboards |
✅ Active |
| B2B Master |
10.32.8.133 |
B2B platform |
✅ Active |
| B2B Haproxy |
10.32.8.251 |
B2B load balancer |
✅ Active |
| ML-AI-Withinearth_server |
10.32.8.250 |
ML/AI workloads |
✅ Active |
Logging & Monitoring
| Server |
IP |
Purpose |
Status |
| Zabbix Server |
10.32.8.148 |
Primary monitoring (Zabbix) |
✅ Active |
| UptimeKuma |
10.32.8.102 |
Uptime monitoring |
✅ Active |
| Documentation Server |
10.32.8.209 |
MkDocs documentation |
✅ Active (temporary) |
| ELK Haproxy Log |
10.32.8.132 |
HAProxy log aggregation |
✅ Active |
| ELK - Proxy Supplier Logs |
10.32.8.84 |
Supplier log analysis |
✅ Active |
Other Services
| Server |
IP |
Purpose |
Status |
| Reverse Proxy |
10.32.8.99 |
Reverse proxy |
✅ Active |
| Hotel-content |
10.32.8.179 |
Hotel content API |
✅ Active |
| NewHotelMapping_Gimmopnix |
10.32.8.56 |
Hotel mapping service |
✅ Active |
| haproxy UI dev server |
10.32.8.235 |
HAProxy UI dev |
✅ Active |
Hypervisor Infrastructure
XCP-ng Pool (3-Node HA Cluster)
| Server |
IP |
UUID |
VMs Running |
Status |
| xcp-1 |
10.32.8.22 |
60863597-4e9b... |
11 VMs |
✅ Active |
| xcp-2 |
10.32.8.23 |
b343125a-f08f... |
17 VMs |
✅ Active |
| xcp-3 |
10.32.8.24 |
21ad9481-14b5... |
14 VMs |
✅ Active |
Pool Configuration:
- Cluster Type: XCP-ng HA Pool
- Total VMs: 40+ running VMs
- Management: Xen Orchestra (XOA)
- Live Migration: Enabled
- Shared Storage: Yes
Key VMs by Hypervisor:
XCP-1 (10.32.8.22):
- HaProxy-SQLReplica-LB-1
- Mongodb-RoomMapping-Production
- SupplierProxy-Api-3
- OTH-3, Redis-OTH
- CM-1, RabbitMQ
- SQL Replica 5
XCP-2 (10.32.8.23):
- MongoDB-ReCheck-2 (10.32.8.52)
- SupplierProxy-Api-5
- OTH-Haproxy-Master/Standby
- haproxy-SQL-LB-2
- ELK-SupplierLogs
- MariaDB
- SupplierProxy-Gateway-2
XCP-3 (10.32.8.24):
- MongoDB-APILogs-1 (10.32.8.75)
- MongoDB-Supplier-logs (10.32.8.18)
- UptimeKuma (10.32.8.102)
- API-LogServer-152
- Hotel Content API
- gitlab, Internal Management
Proxmox Management
| Server |
IP |
Purpose |
Status |
| Haproxy-Proxmox-1 |
10.32.8.13 |
Proxmox HAProxy |
✅ Active |
| Haproxy-Proxmox-2 |
10.32.8.14 |
Proxmox HAProxy |
✅ Active |
Note: HAProxy Aloha instances run as VMs on Proxmox hosts
Load Testing Infrastructure
| Server |
IP |
Purpose |
Status |
| LoadTest VM -1 |
10.32.8.25 |
Load testing |
✅ Active |
| LoadTest - VM -2 |
10.32.8.31 |
Load testing |
✅ Active |
| LoadTest-VM-3 |
10.32.8.32 |
Load testing |
⚠️ Disabled |
| LoadTest-VM-4 |
10.32.8.30 |
Load testing |
⚠️ Disabled |
Network Configuration
IP Address Allocation
10.32.8.0/24 Network
├── 10.32.8.3 - Supplier Gateway
├── 10.32.8.5 - SQL Replica VIP (HAProxy cluster)
├── 10.32.8.7-8 - SQL Replica HAProxy pair
├── 10.32.8.9 - SQL Replica 3
├── 10.32.8.11 - OTH Master
├── 10.32.8.13-14 - Proxmox HAProxy pair
├── 10.32.8.16 - LogServer 2
├── 10.32.8.18 - MongoDB Expedia Logs
├── 10.32.8.22-24 - XCP hypervisors
├── 10.32.8.25,30-32 - Load test VMs
├── 10.32.8.34 - CM Server 2
├── 10.32.8.35 - API-5
├── 10.32.8.36 - HAProxy Master ⭐
├── 10.32.8.37 - SQL Replica 5
├── 10.32.8.38 - HAProxy Standby ⭐
├── 10.32.8.39 - SQL Replica 6
├── 10.32.8.40 - OTH-3
├── 10.32.8.41-48 - Supplier Proxy APIs (7 instances)
├── 10.32.8.51-53 - MongoDB Cache Cluster (3 nodes)
├── 10.32.8.56 - Hotel Mapping
├── 10.32.8.74 - MongoDB Supplier Performance
├── 10.32.8.75 - MongoDB API Logs
├── 10.32.8.84 - ELK Supplier Logs
├── 10.32.8.85 - SQL Replica 4
├── 10.32.8.86 - OTH-2
├── 10.32.8.88 - LogServer Agoda
├── 10.32.8.90 - RabbitMQ
├── 10.32.8.96 - MongoDB Room Mapping
├── 10.32.8.99 - Reverse Proxy
├── 10.32.8.101 - MongoDB Supplier Room Data
├── 10.32.8.102 - UptimeRobot
├── 10.32.8.105-107 - OTH HAProxy cluster
├── 10.32.8.129 - Tableau
├── 10.32.8.130 - Main Database (Primary) ⭐
├── 10.32.8.132 - ELK HAProxy Logs
├── 10.32.8.133 - B2B Master
├── 10.32.8.134-135 - API-1, API-2
├── 10.32.8.137 - API-4
├── 10.32.8.139 - API-3
├── 10.32.8.140 - LogServer-1
├── 10.32.8.142 - CM Server 1
├── 10.32.8.143 - SQL Replica 1
├── 10.32.8.149 - SQL Replica 2
├── 10.32.8.152 - API LogServer VM
├── 10.32.8.166-167 - API-6, API-7
├── 10.32.8.179 - Hotel Content
├── 10.32.8.148 - Zabbix Server (Primary Monitoring) ⭐
├── 10.32.8.180 - LogServer 180VM
├── 10.32.8.205 - Redis (not in use)
├── 10.32.8.209 - Documentation Server (MkDocs - temporary)
├── 10.32.8.235 - HAProxy UI Dev
├── 10.32.8.240 - salman-linux (dev)
├── 10.32.8.250 - ML/AI Server
└── 10.32.8.251 - B2B HAProxy
High Availability Summary
| Service |
HA Method |
Failover |
| Main API Load Balancer |
Active/Standby HAProxy |
Manual/VRRP |
| SQL Replica Access |
HAProxy Cluster (VIP) |
Automatic |
| MongoDB Cache |
3-node Replica Set |
Automatic |
| OTH Service |
HAProxy Active/Standby |
Manual/VRRP |
⚠️ Single Points of Failure
| Service |
Risk |
Recommendation |
| Primary SQL Server (10.32.8.130) |
HIGH |
Implement Always On AG |
| Redis (10.32.8.205) |
MEDIUM |
Setup Redis Sentinel |
| RabbitMQ (10.32.8.90) |
MEDIUM |
Setup RabbitMQ Cluster |
Capacity Planning
Current Utilization
| Resource |
Provisioned |
Notes |
| API Servers |
7 |
Can scale to 10+ |
| SQL Replicas |
6 |
Read distribution |
| MongoDB Nodes |
8 |
Specialized purposes |
| Supplier Proxies |
7 |
Isolate supplier traffic |
Growth Recommendations
- Add API-8, API-9 when concurrent users > 1000
- Add SQL Replica 7 when read load > 70%
- Setup Redis Cluster (3+ nodes)
- Implement RabbitMQ Cluster (3 nodes)
Maintenance Windows
- Database Backups: Daily 2:00 AM UTC
- Windows Updates: Monthly - 2nd Saturday 2:00-4:00 AM
- Linux Updates: Monthly - 3rd Saturday 2:00-4:00 AM
- Hypervisor Maintenance: Quarterly
- Zabbix Dashboard: http://10.32.8.148/zabbix
- UptimeKuma: http://10.32.8.102:3001
- Documentation: http://10.32.8.209:8000
- HAProxy Stats: http://10.32.8.36:8080/stats (if configured)
Data automatically extracted from Zabbix monitoring system
Last sync: 2025-11-15
Total monitored hosts: 60+