victoria-traces
First step toward routing OTLP signals from Homebox into the Victoria stack.
Assisted-by: Claude Opus 4.7 via Claude Code
lotus-land-story: otel
diff --git a/lotus-land-story/main.yml b/lotus-land-story/main.yml
index 8b6c2d9..68ebf87 100644
--- a/lotus-land-story/main.yml
+++ b/lotus-land-story/main.yml
@@ -69,5 +69,6 @@
- import_playbook: homebox.yml # noqa: name[play]
- import_playbook: vector.yml # noqa: name[play]
- import_playbook: logs.yml # noqa: name[play]
+- import_playbook: otel.yml # noqa: name[play]
# vim: ft=yaml.ansible
diff --git a/lotus-land-story/otel.yml b/lotus-land-story/otel.yml
new file mode 100644
index 0000000..459ec41
--- /dev/null
+++ b/lotus-land-story/otel.yml
@@ -0,0 +1,35 @@
+- name: VictoriaTraces
+ tags: victoria-traces
+ hosts: lotus-land-story
+ vars:
+ version: 0.9.0
+ tasks:
+
+ - name: Make directories
+ ansible.builtin.file:
+ path: /mnt/lotus-land-story/victoria-traces
+ state: directory
+ mode: "0755"
+
+ - name: Install victoria-traces systemd unit
+ ansible.builtin.template:
+ src: templates/systemd/victoria-traces.service
+ dest: /etc/systemd/system/victoria-traces.service
+ mode: "0644"
+ notify: Restart victoria-traces
+
+ - name: Enable and start victoria-traces
+ ansible.builtin.systemd_service:
+ name: victoria-traces
+ enabled: true
+ state: started
+ daemon_reload: true
+
+ handlers:
+ - name: Restart victoria-traces
+ ansible.builtin.systemd_service:
+ name: victoria-traces
+ state: restarted
+ daemon_reload: true
+
+# vim: ft=yaml.ansible
diff --git a/lotus-land-story/templates/Caddyfile b/lotus-land-story/templates/Caddyfile
index 6afff67..9330e47 100644
--- a/lotus-land-story/templates/Caddyfile
+++ b/lotus-land-story/templates/Caddyfile
@@ -69,6 +69,12 @@ logs {
reverse_proxy victoria-logs:9428
}
+traces {
+ tls internal
+ bind tailscale/traces
+ reverse_proxy victoria-traces:10428
+}
+
# need scheme here since `metrics` is a directive
https://metrics {
tls internal
diff --git a/lotus-land-story/templates/systemd/victoria-traces.service b/lotus-land-story/templates/systemd/victoria-traces.service
new file mode 100644
index 0000000..c447230
--- /dev/null
+++ b/lotus-land-story/templates/systemd/victoria-traces.service
@@ -0,0 +1,20 @@
+[Unit]
+Description=VictoriaTraces container
+Requires=docker.service
+After=docker.service
+PartOf=docker.service
+
+[Service]
+Restart=always
+RestartSec=5s
+ExecStartPre=-/usr/bin/docker rm -f victoria-traces
+ExecStartPre=-/usr/bin/docker pull quay.io/victoriametrics/victoria-traces:v{{ version }}
+ExecStart=/usr/bin/docker run --rm --name victoria-traces \
+ --network lotus_land_story \
+ -v /mnt/lotus-land-story/victoria-traces:/data \
+ quay.io/victoriametrics/victoria-traces:v{{ version }} \
+ -storageDataPath=/data
+ExecStop=/usr/bin/docker stop victoria-traces
+
+[Install]
+WantedBy=multi-user.target