- Elasticsearch
- APT repository
- TLS
- systemd
Elasticsearch VPS HostingSearch and log analytics on your own server
Elasticsearch indexes and searches large amounts of text and log data. We install it from Elastic's official APT repository on a hardened KVM VPS, with security and TLS switched on by default, so your search runs on NVMe you control.
- KVM virtualisation
- NVMe storage
- Root SSH access
- Free one-time setup
- 99.9% uptime SLA
$systemctl list-units --type=service --state=active
- elasticsearchHTTPS API on :9200
- nginxoptional HTTPS front door
- ufwfirewall: 22, 80, 443
- fail2banSSH brute-force guard
- unattended-upgradessecurity updates
Installed and secured before handover.
Why Self-Host Elasticsearch on a VPS
Hosted search bills by memory, storage and data transfer. Your own node has a flat price.
Search that you own
Indexes, mappings and data stay on your server.
Near your application
Run it beside the app that queries it, with low latency.
Secure by default
First start generates certificates and an elastic user password.
Predictable cost
One flat server price, whatever the query volume.
How an Elasticsearch Server Is Set Up
One node, installed as a package and managed by systemd.
-
Access
UFW / NGINX
Restricts who can reach the API.
-
API
HTTPS :9200
Elasticsearch REST API, TLS on by default.
-
Search engine
Elasticsearch
Installed from Elastic's APT repository.
-
Data
/var/lib/elasticsearch
Indexes stored on NVMe.
Engineer's notes
- On first start Elasticsearch generates TLS certificates and the elastic user password; reset it with elasticsearch-reset-password.
- The HTTP API binds to 0.0.0.0 by default: firewall port 9200 or bind it to localhost.
- Elastic's docs cover vm.max_map_count, file-descriptor and swap settings; check them on a production node.
- A single node has no replica: use snapshots and the daily VPS backup.
- 443HTTPS, optional NGINX
- 80HTTP, redirects to HTTPS
- 22SSH, you only
- 9200Elasticsearch API, restricted
What You Can Run
Website and app search
Full-text search with relevance ranking.
Log and event analytics
Store and query logs from your servers.
Product and catalogue search
Filters, facets and typo tolerance.
Kibana dashboards
Install Kibana yourself for exploration.
Laravel and Django search
Connect your framework through its client library.
Document indexing
Search across large sets of text documents.
Which Plan for Your Elasticsearch Node
Memory and disk follow the size of your indexes.
A starting point, not a limit: every plan upgrades in place, keeping your data, IP address and configuration.
Running Elasticsearch on Your Server
The steps below follow Elastic's Debian package guide.
-
Add the Elastic repository
Import the signing key, then add the repository.
wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | sudo gpg --dearmor -o /usr/share/keyrings/elasticsearch-keyring.gpg# add the elastic-9.x source line from the Elastic guide -
Install Elasticsearch
Security is configured automatically on first start.
sudo apt-get updatesudo apt-get install elasticsearch -
Start it at boot
Enable and start the service.
sudo systemctl daemon-reloadsudo systemctl enable --now elasticsearch.service -
Reset the password and test
Set a known elastic password, then query the API over HTTPS.
sudo /usr/share/elasticsearch/bin/elasticsearch-reset-password -u elasticsudo curl --cacert /etc/elasticsearch/certs/http_ca.crt -u elastic https://localhost:9200
Example commands: adjust names, paths and versions to your project. Deploying and maintaining your application is yours to do, or ask us for a quote.
Elasticsearch commands you will use every week
Copy, paste, adjust the names. Each one is safe to run as your own user on the server.
Service status
sudo systemctl status elasticsearch
Cluster health
sudo curl --cacert /etc/elasticsearch/certs/http_ca.crt -u elastic https://localhost:9200/_cluster/health?pretty
List indexes
sudo curl --cacert /etc/elasticsearch/certs/http_ca.crt -u elastic "https://localhost:9200/_cat/indices?v"
Reset the elastic password
sudo /usr/share/elasticsearch/bin/elasticsearch-reset-password -u elastic
Read the logs
sudo ls /var/log/elasticsearch/
Data directory size
sudo du -sh /var/lib/elasticsearch
Hosted Search or Your Own Elasticsearch?
Hosted search removes the operations. A VPS node has a flat price and keeps data on your server.
Hosted search
- PricingBy memory, storage and transfer
- Where data livesThe provider's cloud
- Cluster sizeMulti-node, scales out
- Upgrades and backupsHandled by the provider
- Server administrationHandled by the provider
Elasticsearch VPS
- PricingFlat server cost
- Where data livesYour server
- Cluster sizeOne node (more if you add them)
- Upgrades and backupsYours: updates and snapshots
- Server administrationYours, after our free setup
Your Elasticsearch server
Free one-time setup before you get access. Here is what happens, and what you receive.
Pick a plan and a location
Resources that fit your workload, in the datacentre closest to your users.
Tell us your Elasticsearch setup
Versions, database and domain: at order or right after.
We install and secure it
Server hardened, the stack installed and tested, HTTPS on your domain.
You get root
SSH to a working server, ready for your code and data.
Installed for you
- Elasticsearch from Elastic's official APT repository, running as a systemd service
- TLS and authentication through Elastic's automatic security setup
- NGINX in front for HTTPS access, on request
- Indexes, users and Kibana are set up by you
Secured before handover
- Non-root sudo user created for daily work
- SSH key login, password login for root disabled
- Firewall (UFW) open only for the ports you use
- Fail2ban blocking repeated login attempts
- Automatic security updates enabled
- Free Let's Encrypt SSL on your domain
- Timezone, swap and hostname configured
Not included (we say so up front)
- Ongoing server administration
- Application maintenance and updates
- Debugging your code
- Migrating existing sites or data
Security and Performance for Elasticsearch
Security
- Do not expose port 9200 to the internet; firewall it or proxy it with care.
- Keep the generated TLS certificates and the elastic password safe.
- Create API keys or users for each application instead of sharing elastic.
- Update Elasticsearch regularly; security fixes ship often.
Performance
- Give the node enough RAM; the heap is sized automatically by Elasticsearch.
- Keep indexes and shard counts modest on a single node.
- Use snapshots, not only VPS backups, for index data.
- Run it on a plan that leaves memory for the operating system cache.
Built from the official documentation
VPS Plans for Elasticsearch
Elasticsearch is memory-hungry. Start at VPS-2 for real data and size up with index volume.
VPS-1
Small websites, APIs, bots and development servers.
- 2 vCores
- 4 GB RAM
- 40 GB NVMe
- 500 Mbps
- Full root and SSH access
- Free initial stack installation
- Server hardening and firewall setup
- Daily backup of the previous 24 hours
- Unlimited traffic *
- Anti-DDoS protection
- Dedicated IPv4 and IPv6
- KVM virtualisation
VPS-2
Production apps, WordPress and online stores.
- 4 vCores
- 8 GB RAM
- 75 GB NVMe
- 1 Gbps
- Full root and SSH access
- Free initial stack installation
- Server hardening and firewall setup
- Daily backup of the previous 24 hours
- Unlimited traffic *
- Anti-DDoS protection
- Dedicated IPv4 and IPv6
- KVM virtualisation
VPS-3
Busy stores, SaaS products and several projects.
- 6 vCores
- 12 GB RAM
- 100 GB NVMe
- 2 Gbps
- Full root and SSH access
- Free initial stack installation
- Server hardening and firewall setup
- Daily backup of the previous 24 hours
- Unlimited traffic *
- Anti-DDoS protection
- Dedicated IPv4 and IPv6
- KVM virtualisation
VPS-4
High-traffic apps, large databases and agencies.
- 8 vCores
- 24 GB RAM
- 200 GB NVMe
- 3 Gbps
- Full root and SSH access
- Free initial stack installation
- Server hardening and firewall setup
- Daily backup of the previous 24 hours
- Unlimited traffic *
- Anti-DDoS protection
- Dedicated IPv4 and IPv6
- KVM virtualisation
* Unlimited traffic in Europe and North America. In Mumbai, Singapore and Sydney a monthly allowance applies (VPS-1 500 GB, VPS-2/VPS-3 1 TB, VPS-4 3 TB), then speed is limited to 10 Mbps until the next month.
Prices exclude 18% GST, which is added to invoices for customers in India.
Platform specs and locations
The same KVM platform on every plan; only CPU, RAM, storage and port speed change.
- Virtualisation
- KVM with reserved vCores and RAM
- Storage
- NVMe SSD on every plan
- Network
- Dedicated IPv4 and IPv6, 500 Mbps to 3 Gbps per plan
- Operating systems
- Ubuntu 26.04, 24.04 and 22.04 LTS · Debian 13, 12 and 11 · AlmaLinux · Rocky Linux · Fedora · FreeBSD
- Access
- Full root over SSH, key-based login
- Backups
- Automatic daily backup of the previous 24 hours; snapshots and longer retention on request
- Protection
- Always-on anti-DDoS mitigation
- Availability
- 99.9% uptime SLA
Asia-Pacific
- Mumbai
- Singapore
- Sydney
Europe
- London
- Limburg
- Roubaix
- Gravelines
- Strasbourg
- Milan
- Warsaw
North America
- Beauharnois
Availability per location changes with demand; we confirm your location before setup. In Mumbai, Singapore and Sydney each plan includes a monthly traffic allowance (VPS-1 500 GB, VPS-2 and VPS-3 1 TB, VPS-4 3 TB); beyond it, speed is limited to 10 Mbps until the next month.
Questions before you deploy
Not covered here? Ask an engineer before you order.
Ready when you are
Run Your Own Elasticsearch
Choose a plan and we hand over Elasticsearch on a hardened server with security on.