From 3cef18a327cc2eebd93b7f40fc4e07fcf7698392 Mon Sep 17 00:00:00 2001 From: Mario Macias <mmaciasl@redhat.com> Date: Wed, 13 Apr 2022 17:13:21 +0200 Subject: [PATCH] Rename project to netobserv-ebpf-agent (#13) --- .github/workflows/push_image.yml | 2 +- .github/workflows/push_image_pr.yml | 2 +- Dockerfile | 4 ++-- Makefile | 4 ++-- README.md | 6 +++--- cmd/{netobserv-agent.go => netobserv-ebpf-agent.go} | 6 +++--- deployments/README.md | 2 +- deployments/flp-daemonset.yml | 12 ++++++------ deployments/flp-service.yml | 12 ++++++------ examples/performance/README.md | 2 +- examples/performance/deployment.yml | 8 ++++---- examples/performance/perftest-iperf.yml | 8 ++++---- examples/performance/perftest-millionp.yml | 8 ++++---- .../performance/server/packet-counter-collector.go | 4 ++-- go.mod | 2 +- pkg/agent/agent.go | 6 +++--- pkg/agent/agent_test.go | 6 +++--- pkg/ebpf/tracer.go | 3 ++- pkg/exporter/grpc_proto.go | 6 +++--- pkg/grpc/client.go | 2 +- pkg/grpc/grpc_test.go | 2 +- pkg/grpc/server.go | 2 +- scripts/shortlived.Dockerfile | 2 +- 23 files changed, 56 insertions(+), 55 deletions(-) rename cmd/{netobserv-agent.go => netobserv-ebpf-agent.go} (89%) diff --git a/.github/workflows/push_image.yml b/.github/workflows/push_image.yml index dd33dbe66..7d9d2bcc2 100644 --- a/.github/workflows/push_image.yml +++ b/.github/workflows/push_image.yml @@ -7,7 +7,7 @@ env: REGISTRY_USER: netobserv+github_ci REGISTRY_PASSWORD: ${{ secrets.QUAY_SECRET }} REGISTRY: quay.io/netobserv - IMAGE: netobserv-agent + IMAGE: netobserv-ebpf-agent IMAGE_ORG: netobserv TAGS: main diff --git a/.github/workflows/push_image_pr.yml b/.github/workflows/push_image_pr.yml index 5e812c0ed..47292aad1 100644 --- a/.github/workflows/push_image_pr.yml +++ b/.github/workflows/push_image_pr.yml @@ -6,7 +6,7 @@ on: env: REGISTRY_USER: netobserv+github_ci REGISTRY: quay.io/netobserv - IMAGE: netobserv-agent + IMAGE: netobserv-ebpf-agent IMAGE_ORG: netobserv jobs: diff --git a/Dockerfile b/Dockerfile index b05e445a8..2f871aaf2 100644 --- a/Dockerfile +++ b/Dockerfile @@ -30,7 +30,7 @@ RUN make compile # Create final image from minimal + built binary FROM registry.access.redhat.com/ubi8/ubi-minimal:8.5-240 WORKDIR / -COPY --from=builder /opt/app-root/src/bin/netobserv-agent . +COPY --from=builder /opt/app-root/src/bin/netobserv-ebpf-agent . USER 65532:65532 -ENTRYPOINT ["/netobserv-agent"] +ENTRYPOINT ["/netobserv-ebpf-agent"] diff --git a/Makefile b/Makefile index 54fb6758e..bd02f1320 100644 --- a/Makefile +++ b/Makefile @@ -13,7 +13,7 @@ IMAGE_ORG ?= $(USER) # IMAGE_TAG_BASE defines the namespace and part of the image name for remote images. # This variable is used to construct full image tags for bundle and catalog images. -IMAGE_TAG_BASE ?= quay.io/$(IMAGE_ORG)/netobserv-agent +IMAGE_TAG_BASE ?= quay.io/$(IMAGE_ORG)/netobserv-ebpf-agent # Image URL to use all building/pushing image targets IMG ?= $(IMAGE_TAG_BASE):$(SW_VERSION) @@ -87,7 +87,7 @@ build: prereqs fmt lint test vendors compile .PHONY: compile compile: @echo "### Compiling project" - GOOS=$(GOOS) go build -ldflags "-X main.version=${SW_VERSION} -X 'main.buildVersion=${BUILD_VERSION}' -X 'main.buildDate=${BUILD_DATE}'" -mod vendor -a -o bin/netobserv-agent cmd/netobserv-agent.go + GOOS=$(GOOS) go build -ldflags "-X main.version=${SW_VERSION} -X 'main.buildVersion=${BUILD_VERSION}' -X 'main.buildDate=${BUILD_DATE}'" -mod vendor -a -o bin/netobserv-ebpf-agent cmd/netobserv-ebpf-agent.go .PHONY: test test: diff --git a/README.md b/README.md index 719e3d326..242a05907 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ -# Network Observability Agent +# Network Observability eBPF Agent -Network Observability Agent +Network Observability eBPF Agent. ## How to compile @@ -11,7 +11,7 @@ make build ## How to run ``` -sudo bin/netobserv-agent +sudo bin/netobserv-ebpf-agent ``` (Pod deployment will come soon) diff --git a/cmd/netobserv-agent.go b/cmd/netobserv-ebpf-agent.go similarity index 89% rename from cmd/netobserv-agent.go rename to cmd/netobserv-ebpf-agent.go index 12a26a03c..d764a1c99 100644 --- a/cmd/netobserv-agent.go +++ b/cmd/netobserv-ebpf-agent.go @@ -10,7 +10,7 @@ import ( "syscall" "time" - "github.com/netobserv/netobserv-agent/pkg/agent" + "github.com/netobserv/netobserv-ebpf-agent/pkg/agent" "github.com/sirupsen/logrus" ) @@ -49,7 +49,7 @@ func main() { CacheActiveTimeout: maxFlowEvictionPeriod, }) if err != nil { - logrus.WithError(err).Fatal("can't instantiate netobserv-agent") + logrus.WithError(err).Fatal("can't instantiate netobserv-ebpf-agent") } logrus.Infof("push CTRL+C or send SIGTERM to interrupt execution") @@ -62,6 +62,6 @@ func main() { canceler() }() if err := flowsAgent.Run(ctx); err != nil { - logrus.WithError(err).Fatal("can't start netobserv-agent") + logrus.WithError(err).Fatal("can't start netobserv-ebpf-agent") } } diff --git a/deployments/README.md b/deployments/README.md index 823e6c713..0dd0a27f5 100644 --- a/deployments/README.md +++ b/deployments/README.md @@ -1,6 +1,6 @@ # Deployment example files -This directory contains some example files that show how the netobserv-agent +This directory contains some example files that show how the netobserv-ebpf-agent can be deployed. In production, the agent is deployed by the Network Observability Operator but the files contained here are useful for documentation and manual testing. diff --git a/deployments/flp-daemonset.yml b/deployments/flp-daemonset.yml index 8229e9fe2..87818e723 100644 --- a/deployments/flp-daemonset.yml +++ b/deployments/flp-daemonset.yml @@ -3,24 +3,24 @@ apiVersion: apps/v1 kind: DaemonSet metadata: - name: netobserv-agent + name: netobserv-ebpf-agent labels: - k8s-app: netobserv-agent + k8s-app: netobserv-ebpf-agent spec: selector: matchLabels: - k8s-app: netobserv-agent + k8s-app: netobserv-ebpf-agent template: metadata: labels: - k8s-app: netobserv-agent + k8s-app: netobserv-ebpf-agent spec: serviceAccountName: netobserv-account hostNetwork: true dnsPolicy: ClusterFirstWithHostNet containers: - - name: netobserv-agent - image: quay.io/netobserv/netobserv-agent:main + - name: netobserv-ebpf-agent + image: quay.io/netobserv/netobserv-ebpf-agent:main # imagePullPolicy: Always securityContext: privileged: true diff --git a/deployments/flp-service.yml b/deployments/flp-service.yml index c2f374a34..2217f3ea0 100644 --- a/deployments/flp-service.yml +++ b/deployments/flp-service.yml @@ -3,24 +3,24 @@ apiVersion: apps/v1 kind: DaemonSet metadata: - name: netobserv-agent + name: netobserv-ebpf-agent labels: - k8s-app: netobserv-agent + k8s-app: netobserv-ebpf-agent spec: selector: matchLabels: - k8s-app: netobserv-agent + k8s-app: netobserv-ebpf-agent template: metadata: labels: - k8s-app: netobserv-agent + k8s-app: netobserv-ebpf-agent spec: serviceAccountName: netobserv-account hostNetwork: true dnsPolicy: ClusterFirstWithHostNet containers: - - name: netobserv-agent - image: quay.io/netobserv/netobserv-agent:main + - name: netobserv-ebpf-agent + image: quay.io/netobserv/netobserv-ebpf-agent:main # imagePullPolicy: Always securityContext: privileged: true diff --git a/examples/performance/README.md b/examples/performance/README.md index 8c7aad2de..d3e246242 100644 --- a/examples/performance/README.md +++ b/examples/performance/README.md @@ -6,7 +6,7 @@ How to test your setup performance: $ oc apply -f deployment.yml $ oc get pods NAME READY STATUS RESTARTS AGE -netobserv-agent 1/1 Running 0 20s +netobserv-ebpf-agent 1/1 Running 0 20s packet-counter-7b6df8b766-dbv8d 1/1 Running 0 20s $ oc logs -f packet-counter-7b6df8b766-dbv8d ``` diff --git a/examples/performance/deployment.yml b/examples/performance/deployment.yml index 95ecb115e..202d5eaa7 100644 --- a/examples/performance/deployment.yml +++ b/examples/performance/deployment.yml @@ -38,9 +38,9 @@ spec: apiVersion: v1 kind: Pod metadata: - name: netobserv-agent + name: netobserv-ebpf-agent labels: - run: netobserv-agent + run: netobserv-ebpf-agent spec: # the agent must be privileged hostNetwork: true @@ -55,8 +55,8 @@ spec: run: packet-counter topologyKey: kubernetes.io/hostname containers: - - name: netobserv-agent - image: quay.io/netobserv/netobserv-agent:main + - name: netobserv-ebpf-agent + image: quay.io/netobserv/netobserv-ebpf-agent:main # imagePullPolicy: Always securityContext: privileged: true diff --git a/examples/performance/perftest-iperf.yml b/examples/performance/perftest-iperf.yml index 6bc9cae19..33df39ad3 100644 --- a/examples/performance/perftest-iperf.yml +++ b/examples/performance/perftest-iperf.yml @@ -40,13 +40,13 @@ spec: command: - iperf3 - -s - # colocate with the netobserv-agent to allow it capturing the generated traffic + # colocate with the netobserv-ebpf-agent to allow it capturing the generated traffic affinity: podAffinity: requiredDuringSchedulingIgnoredDuringExecution: - labelSelector: matchLabels: - run: netobserv-agent + run: netobserv-ebpf-agent topologyKey: kubernetes.io/hostname --- apiVersion: apps/v1 @@ -76,11 +76,11 @@ spec: - iperf3-server - -t - "0" - # colocate outside the netobserv-agent host to bring load outside + # colocate outside the netobserv-ebpf-agent host to bring load outside affinity: podAntiAffinity: requiredDuringSchedulingIgnoredDuringExecution: - labelSelector: matchLabels: - run: netobserv-agent + run: netobserv-ebpf-agent topologyKey: kubernetes.io/hostname diff --git a/examples/performance/perftest-millionp.yml b/examples/performance/perftest-millionp.yml index c4732dd9b..8690b30da 100644 --- a/examples/performance/perftest-millionp.yml +++ b/examples/performance/perftest-millionp.yml @@ -40,13 +40,13 @@ spec: command: - /udpreceiver - 0.0.0.0:5201 - # colocate with the netobserv-agent to allow it capturing the generated traffic + # colocate with the netobserv-ebpf-agent to allow it capturing the generated traffic affinity: podAffinity: requiredDuringSchedulingIgnoredDuringExecution: - labelSelector: matchLabels: - run: netobserv-agent + run: netobserv-ebpf-agent topologyKey: kubernetes.io/hostname --- apiVersion: apps/v1 @@ -75,11 +75,11 @@ spec: export HOST=$(getent hosts million-packets-receiver.default.svc.cluster.local | awk '{ print $1 }') echo \"host: $HOST\" /udpsender $HOST:5201 - # colocate outside the netobserv-agent host to bring load outside + # colocate outside the netobserv-ebpf-agent host to bring load outside affinity: podAntiAffinity: requiredDuringSchedulingIgnoredDuringExecution: - labelSelector: matchLabels: - run: netobserv-agent + run: netobserv-ebpf-agent topologyKey: kubernetes.io/hostname diff --git a/examples/performance/server/packet-counter-collector.go b/examples/performance/server/packet-counter-collector.go index 049b11e11..23ab52e6d 100644 --- a/examples/performance/server/packet-counter-collector.go +++ b/examples/performance/server/packet-counter-collector.go @@ -5,8 +5,8 @@ import ( "log" "time" - "github.com/netobserv/netobserv-agent/pkg/grpc" - "github.com/netobserv/netobserv-agent/pkg/pbflow" + "github.com/netobserv/netobserv-ebpf-agent/pkg/grpc" + "github.com/netobserv/netobserv-ebpf-agent/pkg/pbflow" "github.com/paulbellamy/ratecounter" ) diff --git a/go.mod b/go.mod index 89cb6a97a..0622ff5ab 100644 --- a/go.mod +++ b/go.mod @@ -1,4 +1,4 @@ -module github.com/netobserv/netobserv-agent +module github.com/netobserv/netobserv-ebpf-agent go 1.17 diff --git a/pkg/agent/agent.go b/pkg/agent/agent.go index 371157bac..dfb3468cf 100644 --- a/pkg/agent/agent.go +++ b/pkg/agent/agent.go @@ -4,9 +4,9 @@ import ( "context" "github.com/netobserv/gopipes/pkg/node" - "github.com/netobserv/netobserv-agent/pkg/ebpf" - "github.com/netobserv/netobserv-agent/pkg/exporter" - "github.com/netobserv/netobserv-agent/pkg/flow" + "github.com/netobserv/netobserv-ebpf-agent/pkg/ebpf" + "github.com/netobserv/netobserv-ebpf-agent/pkg/exporter" + "github.com/netobserv/netobserv-ebpf-agent/pkg/flow" "github.com/sirupsen/logrus" ) diff --git a/pkg/agent/agent_test.go b/pkg/agent/agent_test.go index d815a486d..ba0361468 100644 --- a/pkg/agent/agent_test.go +++ b/pkg/agent/agent_test.go @@ -7,9 +7,9 @@ import ( "time" "github.com/mariomac/guara/pkg/test" - "github.com/netobserv/netobserv-agent/pkg/flow" - "github.com/netobserv/netobserv-agent/pkg/grpc" - "github.com/netobserv/netobserv-agent/pkg/pbflow" + "github.com/netobserv/netobserv-ebpf-agent/pkg/flow" + "github.com/netobserv/netobserv-ebpf-agent/pkg/grpc" + "github.com/netobserv/netobserv-ebpf-agent/pkg/pbflow" "github.com/stretchr/testify/assert" "github.com/stretchr/testify/require" ) diff --git a/pkg/ebpf/tracer.go b/pkg/ebpf/tracer.go index 2319d7630..5c962babe 100644 --- a/pkg/ebpf/tracer.go +++ b/pkg/ebpf/tracer.go @@ -12,7 +12,7 @@ import ( "github.com/cilium/ebpf/ringbuf" "github.com/cilium/ebpf/rlimit" - "github.com/netobserv/netobserv-agent/pkg/flow" + "github.com/netobserv/netobserv-ebpf-agent/pkg/flow" "github.com/sirupsen/logrus" "github.com/vishvananda/netlink" ) @@ -49,6 +49,7 @@ func NewFlowTracer(iface string) *FlowTracer { func (m *FlowTracer) Register() error { ilog := log.WithField("iface", m.interfaceName) // Allow the current process to lock memory for eBPF resources. + // TODO: manually invoke unix.Prlimit with lower/reasonable rlimit if err := rlimit.RemoveMemlock(); err != nil { return fmt.Errorf("removing mem lock: %w", err) } diff --git a/pkg/exporter/grpc_proto.go b/pkg/exporter/grpc_proto.go index 4cafb6a36..d81016690 100644 --- a/pkg/exporter/grpc_proto.go +++ b/pkg/exporter/grpc_proto.go @@ -6,9 +6,9 @@ import ( "github.com/sirupsen/logrus" "google.golang.org/protobuf/types/known/timestamppb" - "github.com/netobserv/netobserv-agent/pkg/flow" - "github.com/netobserv/netobserv-agent/pkg/grpc" - "github.com/netobserv/netobserv-agent/pkg/pbflow" + "github.com/netobserv/netobserv-ebpf-agent/pkg/flow" + "github.com/netobserv/netobserv-ebpf-agent/pkg/grpc" + "github.com/netobserv/netobserv-ebpf-agent/pkg/pbflow" ) var glog = logrus.WithField("component", "exporter/GRPCProto") diff --git a/pkg/grpc/client.go b/pkg/grpc/client.go index 008c39155..60b364861 100644 --- a/pkg/grpc/client.go +++ b/pkg/grpc/client.go @@ -2,7 +2,7 @@ package grpc import ( - "github.com/netobserv/netobserv-agent/pkg/pbflow" + "github.com/netobserv/netobserv-ebpf-agent/pkg/pbflow" "google.golang.org/grpc" "google.golang.org/grpc/credentials/insecure" ) diff --git a/pkg/grpc/grpc_test.go b/pkg/grpc/grpc_test.go index 0ace2e0f5..5cb08bb78 100644 --- a/pkg/grpc/grpc_test.go +++ b/pkg/grpc/grpc_test.go @@ -7,7 +7,7 @@ import ( "time" "github.com/mariomac/guara/pkg/test" - "github.com/netobserv/netobserv-agent/pkg/pbflow" + "github.com/netobserv/netobserv-ebpf-agent/pkg/pbflow" "github.com/stretchr/testify/assert" "github.com/stretchr/testify/require" "google.golang.org/protobuf/types/known/timestamppb" diff --git a/pkg/grpc/server.go b/pkg/grpc/server.go index da59cc58f..0469ee1af 100644 --- a/pkg/grpc/server.go +++ b/pkg/grpc/server.go @@ -8,7 +8,7 @@ import ( "google.golang.org/grpc" "google.golang.org/grpc/reflection" - "github.com/netobserv/netobserv-agent/pkg/pbflow" + "github.com/netobserv/netobserv-ebpf-agent/pkg/pbflow" ) // CollectorServer wraps a Flow Collector connection & session diff --git a/scripts/shortlived.Dockerfile b/scripts/shortlived.Dockerfile index 206cc00e8..f9a62fca1 100644 --- a/scripts/shortlived.Dockerfile +++ b/scripts/shortlived.Dockerfile @@ -1,3 +1,3 @@ -ARG BASE_IMAGE=quay.io/netobserv/netobserv-agent:main +ARG BASE_IMAGE=quay.io/netobserv/netobserv-ebpf-agent:main FROM $BASE_IMAGE LABEL quay.expires-after=2w \ No newline at end of file -- GitLab