Linux Binary

Prerequisites

  • Ensure you have wget installed on your machine to download the binaries.

  • Ensure you have the latest version of envoy installed on your host.

  • Ensure you have a proxy-config.yaml ready to load into the proxy. See Local Configuration for more details.

Binary Installation

Download the Binary

For Linux x86_64 architecture:

wget "https://artifactregistry.googleapis.com/download/v1/projects/qpoint-edge/locations/us/repositories/qpoint/files/linux:v0.1.3:qpoint_Linux_x86_64.tar.gz:download?alt=media" -O qpoint_Linux_x86_64_v0.1.3.tar.gz

For Linux arm64 architecture:

wget "https://artifactregistry.googleapis.com/download/v1/projects/qpoint-edge/locations/us/repositories/qpoint/files/linux:v0.1.3:qpoint_Linux_arm64.tar.gz:download?alt=media" -O qpoint_Linux_arm64_v0.1.3.tar.gz

For Darwin arm64 architecture:

wget "https://artifactregistry.googleapis.com/download/v1/projects/qpoint-edge/locations/us/repositories/qpoint/files/darwin:v0.1.3:qpoint_Darwin_arm64.tar.gz:download?alt=media" -O qpoint_Darwin_arm64_v0.1.3.tar.gz

For Darwin x86_64 architecture:

wget "https://artifactregistry.googleapis.com/download/v1/projects/qpoint-edge/locations/us/repositories/qpoint/files/darwin:v0.1.3:qpoint_Darwin_x86_64.tar.gz:download?alt=media" -O qpoint_Darwin_x86_64_v0.1.3.tar.gz

Extract the Binary

tar -xzf qpoint_Linux_x86_64_v0.1.3.tar.gz

Run the Binary

Navigate to the directory containing the extracted binary:

cd qpoint

Execute the binary with necessary flags:

./qpoint proxy \
  --log-level=info \
  --qpoint-config ./proxy-config.yaml

Flags

To see the available options and flags, run:

./qpoint proxy --help

Below is a comprehensive list of flags and options available for the Qpoint Proxy:

  • --[no-]access-log: Enable access logs ($ACCESS_LOG)

  • --[no-]help: Show context-sensitive help (also try --help-long and --help-man).

  • --data-dir="/tmp/qpoint": Directory to store state. (Environment Variable: $DATA_DIR)

  • --tags=TAGS: Tags to auto-attach to metrics. (Environment Variable: $TAGS)

  • --middleware-egress-listen=":11001": IPfor middleware egress traffic. (Environment Variable: $MIDDLEWARE_EGRESS_LISTEN)

  • --qpoint-config=QPOINT-CONFIG: Configuration file path. (Environment Variable: $QPOINT_CONFIG)

  • --envoy-config-root=".": Root directory to generate dynamic envoy configurations. (Environment Variable: $ENVOY_CONFIG_ROOT)

  • --dns-lookup-family=V4_ONLY: DNS lookup family. (Environment Variable: $DNS_LOOKUP_FAMILY)

  • --transparent-tcp-forward-ports="18080:80,18443:443": <IP:>LISTEN_PORT:DESTINATION_PORT,<IP:>LISTEN_PORT:DESTINATION_PORT (comma separated) for transparent TCP listening and destination forwarding. (Environment Variable: $TRANSPARENT_TCP_FORWARD_PORTS)

  • --middleware-tcp-forward-ports="10080:80,10443:443": <IP:>LISTEN_PORT:DESTINATION_PORT,<IP:>LISTEN_PORT:DESTINATION_PORT (comma separated) for middleware TCP listening and destination forwarding. (Environment Variable: $MIDDLEWARE_TCP_FORWARD_PORTS)

  • --unknown-endpoint-cache-size=1000: Cache size for unknown endpoints. (Environment Variable: $UNKNOWN_ENDPOINT_CACHE_SIZE)

  • --registration-endpoint="https://api.qpoint.io": Registration endpoint. (Environment Variable: $REGISTRATION_ENDPOINT)

  • --registration-token=REGISTRATION-TOKEN: Registration token. (Environment Variable: $REGISTRATION_TOKEN)

  • --log-level=error: Log level. (Environment Variable: $LOG_LEVEL)

  • --log-encoding=json: Log encoding. (Environment Variable: $LOG_ENCODING)

  • --[no-]log-caller: Log caller. (Environment Variable: $LOG_CALLER)

  • --envoy-log-level=error: Envoy log level. (Environment Variable: $ENVOY_LOG_LEVEL)

  • --status-listen="0.0.0.0:10001": IPof status server to listen on. (Environment Variable: $STATUS_LISTEN)

  • --default-tcp-listen-address="0.0.0.0": Default TCP IP address to listen on. (Environment Variable: $DEFAULT_TCP_LISTEN_ADDRESS)

Last updated