Kubernetes Operator
Intro

What is the Netmaker Kubernetes Operator?
The Netmaker Kubernetes Operator securely connects your Kubernetes cluster to a Netmaker WireGuard network.
It allows:
Kubernetes workloads to talk to VMs, servers, and edge devices
Netmaker devices to securely access Kubernetes services
All traffic to stay private, encrypted, and zero-trust
No manual VPN setup. No complex routing.
Why Use the Netmaker Kubernetes Operator?
Modern infrastructure often spans multiple environments:
Kubernetes clusters running containerised applications
Virtual machines and bare-metal servers
Edge devices and IoT deployments
Hybrid cloud environments
Traditionally, connecting these different environments requires complex VPN configurations, firewall rules, and network routing. The Netmaker Kubernetes Operator simplifies this by:
Eliminating Network Complexity: No need to manually configure VPNs or complex routing rules
Enabling Secure Communication: All traffic flows through encrypted WireGuard tunnels
Providing Native Kubernetes Integration: Use standard Kubernetes Services and annotations
Supporting Bidirectional Access: Kubernetes workloads can reach Netmaker services, and Netmaker devices can reach Kubernetes services
What Can You Do With the Operator?
The operator provides three main capabilities:
Egress Proxy: Access Netmaker services (APIs, databases, etc.) from your Kubernetes applications using standard Kubernetes Service names
Ingress Proxy: Expose your Kubernetes services to devices on your Netmaker network
API Proxy: Securely access your Kubernetes API server through Netmaker tunnels with RBAC support that syncs with the users on Netmaker controlplane
Key Concepts
Netmaker Network
A Netmaker network is a WireGuard-based virtual network that connects devices across different locations. Devices on the network can communicate securely using private IP addresses assigned by Netmaker.
Netclient
Netclient is the agent that runs on devices to connect them to a Netmaker network. The operator uses netclient as a sidecar container to provide WireGuard connectivity to Kubernetes pods.
Operator
A Kubernetes operator is a controller that extends Kubernetes functionality. This operator watches for specific Kubernetes resources (like Services with annotations) and automatically configures networking to connect them with Netmaker networks.
Cluster Egress vs Cluster Ingress
Egress Proxy: Allows Kubernetes workloads to access services on the Netmaker network (Kubernetes → Netmaker)
Ingress Proxy: Allows Netmaker devices to access services running in Kubernetes (Netmaker → Kubernetes)
🧩 Common Use Cases
Cross-Environment Database Access: Connect your Kubernetes applications to databases running on servers in your Netmaker network, without exposing them to the public internet.
Multi-Cluster Communication: Enable secure communication between workloads in different Kubernetes clusters through a shared Netmaker network.
Edge-to-Cloud Connectivity: Connect edge devices and IoT devices in your Netmaker network to services running in your Kubernetes cluster.
Secure API Access: Allow remote developers and systems to securely access your Kubernetes API server through WireGuard tunnels.
Hybrid Cloud Networking: Unify networking across cloud and on-premises infrastructure through a single Netmaker network.
Getting Started
Prerequisites
Installation
Add Helm Repository
Install the Operator
Using Kubernetes Secret for token (recommended)
Examples
Cluster Egress
Expose services that are external to your Kubernetes cluster but available in your Netmaker network, making them accessible to your Kubernetes workloads.
Use Case: Allow Kubernetes applications to access Netmaker services (APIs, databases, etc.) using standard Kubernetes Service names.
Cluster Ingress
Expose Kubernetes services to devices on your Netmaker network, allowing Netmaker devices to access Kubernetes workloads.
Use Case: Enable Netmaker network devices to access Kubernetes services (APIs, databases, web apps) using Netmaker IPs or DNS names.
Last updated
Was this helpful?