Launch the official QuestDB AMI via the AWS Marketplace
AWS Marketplace is a digital catalog with software listings from independent software vendors that runs on AWS. This guide describes how to launch QuestDB via the AWS Marketplace using the official listing. This document also describes usage instructions after you have launched the instance, including hints for authentication, the available interfaces, and tips for accessing the REST API and Web Console.
Prerequisites
- An Amazon Web Services account
Launching QuestDB on the AWS Marketplace
The QuestDB listing can be found in the AWS Marketplace under the databases category. To launch a QuestDB instance:
- Navigate to the QuestDB listing
- Click Continue to Subscribe and subscribe to the offering
- Configure a version, an AWS region and click Continue to Launch
- Choose an instance type and network configuration and click Launch
An information panel displays the ID of the QuestDB instance with launch configuration details and hints for locating the instance in the EC2 console.
The default user is admin
and password is quest
to log in to the webconsole.
QuestDB configuration
Connect to the instance where QuestDB is deployed using SSH. The server configuration file is at the following location on the AMI:
/var/lib/questdb/conf/server.conf
For details on the server properties and using this file, see the server configuration documentation.
The default ports used by QuestDB interfaces are as follows:
- Web Console & REST API is available on port
9000
- PostgreSQL wire protocol available on
8812
- InfluxDB line protocol
9009
(TCP and UDP) - Health monitoring & Prometheus
/metrics
9003
Postgres credentials
Generated credentials can be found in the server configuration file:
/var/lib/questdb/conf/server.conf
The default Postgres username is admin
and a password is randomly generated
during startup:
pg.user=admin
pg.password=...
To use the credentials that are randomly generated and stored in the
server.conf
file, restart the database using the command
sudo systemctl restart questdb
.
InfluxDB line protocol credentials
The credentials for InfluxDB line protocol can be found at
/var/lib/questdb/conf/full_auth.json
For details on authentication using this protocol, see the InfluxDB line protocol authentication guide.
Disabling authentication
If you would like to disable authentication for Postgres wire protocol or InfluxDB line protocol, comment out the following lines in the server configuration file:
# pg.password=...
# line.tcp.auth.db.path=conf/auth.txt
Disabling interfaces
Interfaces may be disabled completely with the following configuration:
# disable postgres
pg.enabled=false
# disable InfluxDB line protocol over TCP and UDP
line.tcp.enabled=false
line.udp.enabled=false
# disable HTTP (web console and REST API)
http.enabled=false
The HTTP interface may alternatively be set to readonly:
# set HTTP interface to readonly
http.security.readonly=true
Upgrading QuestDB
- Check the release notes and ensure that necessary backup is completed.
You can perform the following steps to upgrade your QuestDB version on an official AWS QuestDB AMI:
- Stop the service:
systemctl stop questdb.service
- Download and copy over the new binary
wget https://github.com/questdb/questdb/releases/download/8.2.1/questdb-8.2.1-no-jre-bin.tar.gz \
tar xzvf questdb-8.2.1-no-jre-bin.tar.gz
cp questdb-8.2.1-no-jre-bin/questdb.jar /usr/local/bin/questdb.jar
cp questdb-8.2.1-no-jre-bin/questdb.jar /usr/local/bin/questdb-8.2.1.jar
- Restart the service again:
systemctl restart questdb.service
systemctl status questdb.service