Skip to main content

QA Servers Inventory

Last updated: 2025-12-05

Summary

MetricCount
Total Servers8
OTEL Ready2
Need nginx Upgrade3
Legacy (no OTEL)3

Server Overview

ServerIP / HostHostnameOSnginxOTEL ModuleOTEL CollectorVectorService Mgmt
qa3qa3.clubber.me--server/0.0--
qa4qa4.clubber.me--server/0.0--
qa5162.55.243.21qa9Alma 9.61.20.1daemontools + systemd
qa688.99.3.230qa6-uatfb2Alma 9.51.20.1✅ systemddaemontools + systemd
qa737.27.143.173qa7Alma 9.61.20.1daemontools + systemd
qa8qa8.clubber.meqa8Alma 9.31.28.0✅ 0.1.2✅ svc✅ svcdaemontools
qa10qa10.clubber.meqa10Alma 9.61.28.0✅ 0.1.2✅ svcdaemontools
dev-4dev-4.clubber.me--1.16.1--
OTEL Ready Servers

Only qa8 and qa10 have nginx 1.28.0 with ngx_otel_module 0.1.2 installed.

OTEL Collector Configuration Comparison

qa8 vs qa10

Parameterqa8qa10
Config path/opt/otelcol/config.yaml/opt/otelcol-1/config.yaml
Receiversotlp (grpc:4317, http:4318)otlp (grpc:4317, http:4318)

Exporters

Exporterqa8qa10
uptrace (PROD)✅ uptrace-2.pne.io✅ uptrace-2.pne.io
clickstack (PROD)✅ clickstack-2.pne.io✅ clickstack-2.pne.io
openobserve✅ openobserve-2.pne.io
signoz (local)✅ localhost:5318❌ commented out
victorialogs (VPS)✅ logs.pnetest.biz:9428❌ commented out

Reliability Settings

Settingqa8qa10
sending_queueNot configured⚠️ Only uptrace
file_storage extension✅ file_storage/otc
Prometheus metrics✅ :8008

Pipelines

Pipelineqa8qa10
tracesuptrace, clickstack, signozuptrace, clickstack, openobserve
logsclickstack, victorialogs, signozuptrace, clickstack, openobserve

Known Issues

qa8: No sending_queue configured

Traces may be lost during network issues. Recommend adding file_storage extension and sending_queue to all exporters.

qa10: Partial sending_queue

Only uptrace exporter has sending_queue. clickstack and openobserve exporters are unprotected.

qa8 Vector: VRL errors causing crash loop

Vector config has unnecessary error coalescing (to_int!(x) ?? 0). The ! operator already guarantees success, making ?? redundant. Ansible template fix ready.

qa5, qa6, qa7: nginx 1.20.1 - no OTEL support

ngx_otel_module requires nginx 1.25.3+. These servers need nginx upgrade to enable tracing.

OTEL Module Requirements

Minimum Requirements

  • nginx 1.25.3 or higher
  • ngx_otel_module (official nginx module)
  • OTEL Collector listening on localhost:4317
  • nginx 1.28.0 (latest stable)
  • ngx_otel_module 0.1.2
  • OTEL Collector with sending_queue + file_storage
  • Vector for log aggregation

Ansible Inventory

Path: infra/ansible/inventory/qa.ini

[pne_qa_servers]
qa3 ansible_host=qa3.clubber.me ansible_user=root ansible_port=28043
qa4 ansible_host=qa4.clubber.me ansible_user=root ansible_port=28043
# hostname: qa9
qa5 ansible_host=162.55.243.21 ansible_user=root ansible_port=28043 ansible_ssh_private_key_file=~/.ssh/rwx
# hostname: qa6-uatfb2
qa6 ansible_host=88.99.3.230 ansible_user=root ansible_port=28043 ansible_ssh_private_key_file=~/.ssh/rwx
# hostname: qa7
qa7 ansible_host=37.27.143.173 ansible_user=root ansible_port=28043 ansible_ssh_private_key_file=~/.ssh/rwx
qa8 ansible_host=qa8.clubber.me ansible_user=root ansible_port=28043 ansible_ssh_private_key_file=~/.ssh/rwx
qa10 ansible_host=qa10.clubber.me ansible_user=root ansible_port=28043 ansible_ssh_private_key_file=~/.ssh/rwx
dev-4 ansible_host=dev-4.clubber.me ansible_user=root ansible_port=28043

[pne_qa_observability]
qa8

SSH Access

All servers use port 28043 and require the ~/.ssh/rwx key (except qa3, qa4, dev-4 which use default key).

# Example: connect to qa8
ssh -i ~/.ssh/rwx -p 28043 [email protected]

# Example: check nginx version on qa5
ssh -i ~/.ssh/rwx -p 28043 [email protected] "nginx -v"