Components of a commercial VPN service:
VPN exit nodes: VPS instances in each server location you offer. Each exit node runs WireGuard and/or OpenVPN. Minimum 2 vCPU, 4GB RAM, 1 Gbps port per node. Romania exit nodes: $19.99/mo. Iceland nodes: $19.90/mo. Multiple geographic locations require multiple VPS subscriptions.
Backend API: User account management, subscription billing, server list distribution. Hosted on a bulletproof VPS separate from exit nodes. Any programming stack: Django, Node.js, Laravel.
Payment processing: Stripe for standard billing; cryptocurrency for privacy-focused users. Consider accepting Monero for anonymous VPN subscriptions.
No-log verification: Architecture that genuinely doesn't log: disable system logs on VPN exit nodes (or rotate within 24 hours), don't log VPN connection metadata, use shared IP addresses where thousands of users share one IP to prevent traffic correlation.