Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
25 commits
Select commit Hold shift + click to select a range
ae25ec7
chore: rename otel tag and backend (#180)
leoparente Sep 15, 2025
208c7f5
chore: skip otlpinf timestamp (#181)
leoparente Sep 16, 2025
fac03fc
Opentelemetry docs (#186)
rboucher-me Sep 23, 2025
23cd00f
chore: Fleet manager (#189)
jajeffries Oct 3, 2025
3edf718
fix: subscribe to groups (#192)
jajeffries Oct 3, 2025
f09a537
refactors the config manager into clearer modules (#193)
jajeffries Oct 7, 2025
a8329e1
feat: Apply orb policies (#194)
jajeffries Oct 9, 2025
ca99120
feat: proper backoff and port number (#195)
leoparente Oct 9, 2025
927275a
feat: remove groups (#197)
jajeffries Oct 10, 2025
45a1cca
feat: remove dataset from agent (#198)
jajeffries Oct 10, 2025
80ad3dc
stop and reset agent over rpc (#199)
jajeffries Oct 10, 2025
e5e61f3
docs: adds podman running instructions (#200)
jajeffries Oct 13, 2025
c0c00f0
feat: refactor backend state management and send in heartbeat (#201)
jajeffries Oct 14, 2025
dc35f3a
feat: Add policy state to heartbeat and tidy up unused code (#203)
jajeffries Oct 14, 2025
fda5878
feat: adds group infor to heart beat (#204)
jajeffries Oct 14, 2025
47896f2
feat: add OTLP log exporter (#202)
leoparente Oct 14, 2025
898c9a0
chore: improve logs readability for each backend (#206)
leoparente Oct 16, 2025
6d69a8d
fix: handle policies as a string (#205)
jajeffries Oct 16, 2025
c87f12d
chore: improve readability of python backends logs (#207)
leoparente Oct 16, 2025
fb6067d
chore: improve logs for snmp discovery backend (#208)
leoparente Oct 17, 2025
15902b7
chore: improve otlp inf logs (#209)
leoparente Oct 17, 2025
8930029
feat: send agent config in capabilities (#211)
jajeffries Oct 22, 2025
529c9ba
fix: sanitize config before sending (#212)
jajeffries Oct 24, 2025
3e97a49
feat: add default yaml config file for fleet config manager (#210)
leoparente Oct 24, 2025
fc1e548
fix: resolve envvar for git url (#215)
leoparente Oct 30, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 8 additions & 4 deletions .github/workflows/develop.yaml
Original file line number Diff line number Diff line change
@@ -1,6 +1,12 @@
name: Orb Agent - develop
on:
workflow_dispatch:
inputs:
docker_tag:
description: 'Docker tag to use for the image'
required: false
default: 'develop'
type: string
push:
branches: [ develop ]
paths:
Expand All @@ -18,8 +24,6 @@ env:
jobs:
build-and-push:
runs-on: ubuntu-latest
strategy:
fail-fast: false
steps:
- name: Checkout
uses: actions/checkout@v4
Expand Down Expand Up @@ -73,7 +77,7 @@ jobs:
cache-from: type=gha
cache-to: type=gha,mode=max
tags: |
netboxlabs/orb-agent:develop
netboxlabs.jfrog.io/obs-builds/orb-agent:develop
netboxlabs/orb-agent:${{ github.event.inputs.docker_tag || 'develop' }}
netboxlabs.jfrog.io/obs-builds/orb-agent:${{ github.event.inputs.docker_tag || 'develop' }}
build-args: |
GO_VERSION=${{ env.GO_VERSION }}
2 changes: 0 additions & 2 deletions .github/workflows/release.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -123,8 +123,6 @@ jobs:
name: Build
needs: get-next-version
runs-on: ubuntu-latest
strategy:
fail-fast: false
if: needs.get-next-version.outputs.new-release-published == 'true'
env:
BUILD_VERSION: ${{ needs.get-next-version.outputs.new-release-version }}
Expand Down
14 changes: 11 additions & 3 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -16,9 +16,7 @@ COMMIT_HASH = $(shell git rev-parse --short HEAD)
OTEL_COLLECTOR_CONTRIB_VERSION ?= 0.91.0
OTEL_CONTRIB_URL ?= "https://github.com/open-telemetry/opentelemetry-collector-releases/releases/download/v$(OTEL_COLLECTOR_CONTRIB_VERSION)/otelcol-contrib_$(OTEL_COLLECTOR_CONTRIB_VERSION)_$(GOOS)_$(GOARCH).tar.gz"

all: platform

.PHONY: all agent agent_bin
.PHONY: agent agent_bin

clean:
rm -rf ${BUILD_DIR}
Expand Down Expand Up @@ -74,6 +72,16 @@ agent:
--tag=$(ORB_DOCKERHUB_REPO)/orb-agent:$(ORB_VERSION)-$(COMMIT_HASH) \
-f agent/docker/Dockerfile .

agent_fast:
docker build \
--build-arg GOARCH=$(GOARCH) \
--build-arg PKTVISOR_TAG=$(PKTVISOR_TAG) \
--build-arg SNMP_DISCOVERY_TAG=$(SNMP_DISCOVERY_TAG) \
--tag=$(ORB_DOCKERHUB_REPO)/orb-agent:$(REF_TAG) \
--tag=$(ORB_DOCKERHUB_REPO)/orb-agent:$(ORB_VERSION) \
--tag=$(ORB_DOCKERHUB_REPO)/orb-agent:$(ORB_VERSION)-$(COMMIT_HASH) \
-f agent/docker/Dockerfile .

agent_debug:
docker build \
--build-arg PKTVISOR_TAG=$(PKTVISOR_DEBUG_TAG) \
Expand Down
19 changes: 18 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -60,12 +60,20 @@ orb:
network_discovery:
...
```

#### Discovery Backends
Only the `network_discovery`, `device_discovery`, `worker` and `snmp_discovery` backends are currently supported. They do not require any special configuration.
- [Device Discovery](./docs/backends/device_discovery.md)
- [Network Discovery](./docs/backends/network_discovery.md)
- [Worker](./docs/backends/worker.md)
- [SNMP Discovery](./docs/backends/snmp_discovery.md)

#### Observability Backends
Observability backends focus on collecting and exporting rich telemetry from network traffic or probes so you can feed metrics into your monitoring stack.

- [pktvisor](./docs/backends/pktvisor.md)
- [OpenTelemetry Infinity](./docs/backends/opentelemetry_infinity.md)

#### Common
A special `common` subsection under `backends` defines configuration settings that are shared with all backends. Currently, it supports passing [diode](https://github.com/netboxlabs/diode) server settings and OpenTelemetry configuration to all backends.

Expand All @@ -80,7 +88,7 @@ A special `common` subsection under `backends` defines configuration settings th
agent_name: agent01
dry_run: false
dry_run_output_dir: /opt/orb
otel:
otlp:
grpc: "grpc://otel-collector:4317"
agent_labels:
environment: "production"
Expand Down Expand Up @@ -122,6 +130,15 @@ The container needs sufficient permissions, to send `icmp` and `tcp` packets. Th
docker run -u root -v ${PWD}:/opt/orb/ netboxlabs/orb-agent:latest run -c /opt/orb/agent.yaml
```

Or if using podman
```sh
podman run -d --privileged --net=host \
-v ${PWD}:/opt/orb/ \
-e DIODE_CLIENT_ID \
-e DIODE_CLIENT_SECRET \
netboxlabs/orb-agent:latest run -c /opt/orb/agent.yaml
```

### Configuration samples
You can find complete sample configurations [here](./docs/config_samples.md) of how to configure Orb agent to run network and device discoveries, as well as the relevant `docker run` commands.

Expand Down
Loading
Loading